The past 9th of November the list of selected people to work in FOSS thanks to the Outreachy Program came out and I am extremely glad to say that I will work in a project at Wikimedia for the next 4 months. I was extremely excited when I heard the news and I am very happy to have this opportunity.
In order to be considered for this program, it’s needed to do some contributions to the projects in advance. There are several interesting projects, that include both coding and not coding challenges. I chose to do some contributions to Wikimedia because it’s a foundation that wants to bring free education to the world, through different programs and formats. There’s no doubt that nowadays Wikimedia has a strong value not only in formal education but all kinds of knowledge.
More specifically I will be working to improve the Program and Events Dashboard support for Art+Feminism 2018. Art+Feminism is a worldwide campaign in order to improve the visibility of women in Wikipedia. According to Patricia Horrillo – independent journalist and edit-a-thons organizer – less that 17% of the biographies in Wikipedia are about Women. Wikipedia is already one of the main sources of knowledge and to be present in it would be clue to be remembered in the future.
This dashboard they use is a strong tool that allows an easier management of any wiki programs and events, specifically improving the communication between organizers and participants. This project is set in a Rails + React app, two technologies I have focused my learning efforts in the past months.
Basically, working in a project that you find amazing in both content and technology wise is a bliss.
In the past two months I have collaborated already in the project, as in order to apply for an Outreachy scholarship you need to do some contributions in advance. If you are an underrepresented minority in Tech, I strongly recommend you to apply for the next Outreachy program, as the mentors are willing to help you from the beginning and you start learning already by the application.
In total I got five Pull Request Merged! And I learned different things in each of them. I already mentioned some of the first learnings in this post.
My last contribution was about providing users a sense of time left for the statistics of the different courses to update to the users. One of the main problems of the statistics is that are not automatically updated but need a job to run in order to be refreshed. This can take around 3-4 hours and can be a bit frustrating for the user if you don’t understand that the information needs an update (I experienced it as a user when I edited an article to see how the dashboard was working). We wanted to give the user a notion on how much they needed to wait, by providing the information of the time of the last update. Briefly, my main learnings of this last contribution were:
- The difference between an ActiveRecord class and a simple class. Sounds simple but it was not totally clear in my head. In this case I created a new class that was writing to a table in the database that already have an ActiveRecord. We wanted to prevent this model to be overcrowded, but as we needed to write and read from this table, a presenter in Rails was not enough.
- I also tried different UX and finally we agreed to use the most simplest one.
- I used Moment.js for the first time and was impressed by its simplicity.
In the next months I will start contacting the Art+Feminist team in order to understand better their requirements and to know if they have any proposals on how the dashboard could fit their needs best. I hope to bring enough value to the project and see some improvements.