Wikimedia Blog/Drafts/Wikimedia Hackathon IIT Roorkee

Title ideasEdit

  • Wikimedia Hackathon IIT Roorkee
  • First ever Wikimedia Hackathon at IIT Roorkee

SummaryEdit

For the very first time in the history of Indian Institute of Technology Roorkee (IIT R), a one-day session to help students understand the working of the MediaWiki community was organized. The day long hackathon included every aspect - from installing the software, setting up the environment to fixing some easy bugs and submitting the patches for review. At the end of the day, we had 15 successful patch submissions (pushed) to the core. Additionally, 5 more changes have been committed locally and are to be pushed (as of now). So everyone either submitted a patch or committed locally!

BodyEdit

 
Poster for the Wikimedia Hackathon, IIT Roorkee. Poster by Naman Rajput, freely licensed under Creative Commons Attribution-Share Alike 4.0 International license.


The open source culture has not been very popular in the Indian Institute of Technology Roorkee (IIT R) as of now. A major reason for this could be the high entry level barriers to the open source communities and the very sparse understanding, at a student level, of how can one get started as a contributor to some open source software organization.

In order to solve this issue, for the very first time in the history of IITR, one-day session to help students understand the working of the MediaWiki community was organized. The day long hackathon included every aspect - from installing the software, setting up the environment to fixing some easy bugs and submitting the patches for review.

 
Group photo of participants. Image Saurabh Jain, public domain.

We had also established some pre-requisties for all the registered students to make sure all attendees are at the same phase when coming for the hackathon. Tony Thomas had created an irc channel #wmhackiitr on Freenode and we were helping students fix the problems.

The preliminary requirements were to ensure that the partciipants have the following setup in their machines:

  1. Any working Linux environment, with LAMP server installed. You can find the installation steps for LAMP in Ubuntu here
  2. Any powerful PHP IDE, PHPstorm recommended. You can find the instructions here.
  3. An account in Wikitech, Gerrit, Wikimedia Phabricator, and Github
  4. Try cloning and setting up Gerrit in your machine following the instructions given here
  5. Try connecting with #wikimedia-dev on IRC freenode channel

We were expecting the participants to have a clone of MediaWiki-core downloaded and installed in their machine before hand, so that we could start early with the contribution phase.

For those who did not have any prior know-how of PHP, Version control or web applications, we had provided some easy to start steps. We had asked them to try setting up a simple registration and login web application in PHP beforehand, in their machines. We provided a sample code for the same here.

OutcomeEdit

The hackathon was attended by 20 people, who were shortlisted from 60+ registered students, thus ensuring amazing quality of participants. The students were given certain pre-requisites as given here and were selected based upon the fulfillment of these - therefore making certain that all the attendees were at the same phase.

 
Participants fixing bugs. Image by Saurabh Jain, public domain.

At the end of the day, we had 15 successful patch submissions (pushed) to the core. Additionally, 5 more changes have been committed locally and are to be pushed (as of now). So everyone either submitted a patch or committed locally!

Before wrapping the session, we discussed and informed the attendees of opportunities like GSoC and Outreachy, and gave them various tips that might be helpful to them.

Post the event, we've created a Google group to stay connected, help each other and ensure that the participation of the students does not stop after the event. This will also ensure that the students keep participating and take the contributions ahead.

 
Participants fixing bugs. Image by Saurabh Jain, public domain.

Lessons LearnedEdit

Some tips for future events:

  • Registration form - Helped us get an idea of the number of interested students and their skill-set.
  • Setting-up the pre-requisites - It was a good idea to set up the pre-requisites, as we were able to ensure that every one was on the same page and that we have a quality audience.
  • Demo a bug fix - Makes the participants comfortable that a bug-fix is not an impossible task, and can be fixed after carefully analysing the problem
  • Pre-identify easy bugs - Helps save time during the workshop, participants can choose from a collection of some easy bugs and pick one to work upon.

ResourcesEdit

Resources that can be used in upcoming events:

Ankita Shukla, Computer Science Senior (IIT Roorkee), MediaWiki Contributor

NotesEdit