Learning Functional Programming as an OOProgrammer

It’s been a while since the last time I wrote something in this blog! Well during the last years I’ve been working as a software developer, first as Fullstack Developer and more into Backend Developement in the last 1,5 years. I would like to continue developing my career in Backend, which I enjoy way more than Frontend. But sometimes, when I’m having conversations with senior colleagues I find it difficult to follow some of them, mostly because of the theoretical level they can reach. If that happens to you, you are not alone! We’ll get there, sometime (soon?). I hope.

So some of my coworkers are specially keen on Functional Programming (onwards FP) and they will talk about monads, readers, pure functions… and other terms without stop. At the beginning I had no clue what they were talking about and while I think sometimes these kind of conversations are an entry barrier for people that want to learn more about software development, I’m starting to learn the beauty of (some) of them, and that they are even needed.

Continue reading

Some things sadly come to an end: Outreachy’s Internship Achievements

Three months have gone so fast! Yesterday I had my last meeting with Sage Ross and Jonathan Morgan to talk about the end of this wonderful stage at WikiEducation thanks to Outreachy. I can’t be anything but thankful after this opportunity. I have seen my coding skills improve during this time and I’ve got a better idea of what it is to collaborate in an open source project.

The final goal of the project I worked in was to improve the Program + Education Dashboard from Wikieducation for this years Art+Feminism campaign. Tomorrow is International Women’s Day and I hope all the contributors that will join this incredible initiative to improve the visibility of women in Wikipedia will enjoy and get the most of all the new features that we made and launch during this period.

Continue reading

How to apply to Outreachy: My tips to become an intern

I am still working in my Outreachy Internship and only been part of this last round, but as it has been a wonderful experience so far, full of great work, learnings and fun, I decided to focus this blogpost in giving some tips so other people can give their best in their application (next one starts on 12nd of February!). I don’t have all the answers and I don’t belong to Outreachy or to the Free Software Conservancy Inc., but this is a list of things that worked for me.

Continue reading

How reducers and actions work together

In the past weeks I have been working in several features for my internship at Outreachy that involved the creation of a Redux Reducer. As I mentioned previously, I have special interest in understanding a bit better react and redux, a chance that I have while working in this project. I would like to share some notes about it, as I think sharing documentation and knowledge is crucial to enable other people learn how to code. I have always been very impressed by the documentation and help that I am able to find on the internet and have always dreamt of doing something similar to give it back to the community.

 What’s a redux reducer? According to the official documentation, reducers specify how the application’s state changes in response to actions sent to the store. On the other hand, the actions only define that something happened but not how the application state changes.

Continue reading

Outreach dashboard optimization for EVENTS organizers

As I explained in the last post, we have spent some time to improve the User Experience of the Dashboard users, specially for event organizers. The reason why we concentrate in this kind of users is because our main focus (Art+Feminism Campaign for this year starting in March), as the these campaign basically creates different events in different parts of the world to improve the visibility of female artists in Wikipedia.

Continue reading

New Year, New Post: Improving the UX for the Dashboard Users

Due to the Season Holidays, it’s been very calm in the past weeks. My internship is going great till date: I keep learning, enthusiastic and curious about all the tasks that I work on.

More specifically, in the past weeks I’ve been working in an specific feature, that consist of adding a default course type to the dashboard campaigns. There’s the possibility of adding campaigns to the dashboard that allow the users to organize their programs better. In this case we wanted to add the option to add a default course type to them, so it would be easier for the campaign organizers to enjoy the specific features of each kind of program.

This need was acknowledged inside the framework of the A+F Program. More specifically, the A+F Program organizes different editathons (edit marathons), that take place in a determined timeframe and different users write or edit articles on different topics.

Continue reading

How to solve: Rails db:migration files accidentally deleted

Last week I was working on different topics in different branches. I have to admit that one of my main problem while coding is that I forget to create new branches constantly. What happened last week was that I wanted to work in an issue that required a rails migration to create a new field to a database. I did it and then realized I was in the wrong branch. So I deleted the db file in charge of that migration.

Once I cleant my git mess and I continue working on the topic, I realized that in order to commit those changes to master, I needed the file I had deleted.

This is the typical problem that would have taken me ages to fix if I didn’t have a mentor. And I think it’s one of the main problems of underrepresented people in Tech. Due to our Imposter Syndrome (and my juniority) sometimes I am afraid of asking things so the people realize I don’t deserve the place where I am. It took me ages (in fact, the same time it required me to start seriously coding) to realize that I questions are not dumb, neither is not knowing some basics. Having some holes in the overview picture it’s totally legit, and something that I think it will happen my whole professional life (and also personal, but that’s another story).

Continue reading

My first contribution to FOSS (Free Open Source Software)

It’s been a while since the first time I got in contact with Free software. I don’t remember the first time I heard about what it was, but I remember feeling extremely interested about it. However, I never dared to work in any Open Source Project: I am a quiet/shy person and it felt somehow intimidating, but I have to admit that also have doubts about my technical skills.

During the last month I have been doing my first contributions to an Open Source project: Wikimedia, more specifically the Program & Events Dashboard. I am so glad I did! Now I feel more empowered and capable of working in new projects and software development.

Continue reading