Jump to content


From mediawiki.org
(Redirected from Hackathon 101)
For further details and specifics, see Hackathons.
An overview of the Wikimedia Hackathon 2016.

An FAQ about hackathons for (future) participants. (Updates always ongoing, help appreciated!)

What is a Hackathon?


A hackathon is an event, typically lasting several days, in which a large number of people meet to engage in collaborative computer programming.

More specifically, Wikimedia Hackathons are generally collaborative computer programming events lasting between 2 and 4 days which specifically focus on technologies and projects powering Wikipedia and thousands of MediaWiki installations. Some hackathons have specific focuses while others are open to any activities related to MediaWiki and Wikimedia tech.

Why should I attend a Hackathon?


Wikimedia hackathons are essentially large development community meet-ups that attract many developers and designers who care deeply about the issues and technology impacting MediaWiki and the Wikimedia Projects. You will get a chance to work together with other developers, designers, and Wikimedians, in a productive, fun, and supportive environment. People end up organically grouping together based on their shared interests and projects. You will make new friends and allies, and meet in person people you have been interacting with online. Hackathons are fun!

How to make my first Hackathon a great experience?


Be curious. Don't be afraid of feeling embarrassed for any questions - we all started somewhere and we learn together. Listen to people and get to know each other (even if it's only a "What are you doing in Wikimedia?" question). Wikimedia is a diverse community with lots of different backgrounds. If you are shy and feel like you don't know many people, do not worry: People are friendly and you will feel welcome.

You can also sit back and learn about other people's projects and sit through some introduction sessions, before you decide how you want to spend your time; however, if you already know what you want to work on, feel free to jump right in, hack away, and only resurface for coffee breaks and meals.

We often include formal or informal social events alongside the regular hacking schedule, which allow participants to take breaks from work and get to know each other even further.

What is Phabricator and how is it used at hackathons?


To successfully integrate with one of our hackathons you will need to sign up for an account with Phabricator and learn the basics of its use.

Phabricator is a tool we use to develop software, track bugs, and manage projects, among other things. At hackathons, we use it for session and project tracking and discussion, skill shares, and event-changes. We also use it to organize the entire event!

Some examples of Phabricator work-boards for our events (keep in mind the workboard will look different before, during and after an event):

Explain the differences between the Wikimedia Hackathon and the Wikimania Hackathon?


The Wikimedia Hackathon (formerly known as the MediaWiki Hackathon or the Wikipedia Hackathon) and the Wikimania Hackathon are both yearly events run by the Wikimedia Foundation in partnership with a local chapter or group.

The Wikimedia Hackathon is generally a smaller and more focused event. The number of participants ranges between 150 - 250 people. We like integrating local developers who are new to our projects, as well as 3rd party developers, however the Wikimedia Hackathon generally has a higher percentage of people who have been to previous hackathon events. We will generally have an intensive mentoring program where we attempt to support and guide newcomers to finding their projects within Wikimedia.

Locations of Wikimedia Hackathons:

The Wikimania Hackathon is a hackathon that happens alongside our yearly Wikimania Event. It usually takes place the two days in advance of Wikimania and, depending on the size of Wikimania, is often a larger event than the MediaWiki Hackathon but in some cases can be smaller. The number of participants has been as high as 400. While many returning developers attend the Wikimania and the Wikimania Hackathon, we often have a much higher percentage of newcomers and local developers. We put a lot of focus on on-boarding and newcomer-friendly tracks and projects and also have some projects for non-technical contributors who want to help our projects with translation or documentation support. Anybody who wants to help and has a development background, or is curious to learn more about our technology is welcome!

Locations of Wikimania Hackathons:

Is there a Code of Conduct?


Yes. All Wikimedia-related hackathons are covered by the Code of Conduct. See how to report a problem.

How do I find a project to work on during a hackathon?

  • You can come with your own project related to improving or creating something for our projects
  • You can also plan in advance to work with other developers on somebody else's project
  • You can participate in our mentoring program
  • You can come without a plan, spend some time going to sessions and talking to people and find a project organically at the event

Make sure to look at the Hackathon's Phabricator work-board which should be linked on the Hackathon's wiki homepage on Mediawiki.org or Wikimania(year).org. If you find a project you really want to work on or hear more about, you can ask questions and coordinate with the project coordinators in advance of the event. You can add yourself to the Phabricator task and jump in to start discussing.

If you would like to be connected with developers who are working on a specific type of project, you can always email the organizers and ask to be connected in advance of the hackathon.

How do I get other people to help work on my project?


Some Ideas:

  • Add your project to the Hackathon's Phabricator work-board and ask for volunteers.
  • Email wikitech-l@ in advance of the hackathon with a request for volunteers.
  • Schedule a session or mention your project early on in the hackathon, explain what you will be doing, give some background and ask for volunteers.
  • Stake out a table at the hackathon and use a provided mini-whiteboard or sign to indicate what you are working on.
  • Introduce your sessions during the hackathon opening where participates are given the option to do "open mic"

I want to give a talk or teach people something at the hackathon, how do I get a meeting room to schedule my session/talk/discussion:


Wikimedia Hackathon schedules are constantly edited and anyone with a reasonable proposal for a talk or session can schedule it themselves before or during the event as long as there is meeting room space available (which there almost always is). You need to create a task in Phabricator to explain when you are hoping to accomplish during your session and then you can link the task directly onto the event schedule in a room that fits your needs.

Should my project be something small that I start and complete within the hackathon, or can it be a bigger project using the event as a time to make progress?


Either, although the end of the event will include a showcase of projects. These typically focus on small projects completed during the event.

What kinds of projects are appropriate?


Whatever you can imagine! Previous projects have ranged from a "geeky" command-line prompt interface to MediaWiki API to a "silly" tool generating Haiku poetry based on the recent changes feed to a SPARQL query engine for Wikidata that accepts human language questions. See many examples in:

What if I'm not a developer?


Hackathons are generally meant for developers, but keep reading!

Designers are welcome, you can partner with developers on a project to help make it a reality with a good-looking UI!

Multilingual people: Sometimes we also have language translation sprints, so if you speak other languages than English, check with the hackathon organizers to see if something like that will be taking pace at the event in question.

Documentation sprints also take place at our hackathons, and participants do not necessarily need a technical background to get involved.

If you are not a developer, one option is to pair with a developer who would like input from someone else (ideas for user interface, help test, feedback from a different perspective, bug hunting). There are other opportunities for contributions to the MediaWiki community. Perhaps you could improve MediaWiki documentation or help the MediaWiki community teams with planning.

There are other collaborative events and projects within our mission and communities like meet-ups, editathons, wiki loves monuments, etc. Check them out!

Non-technical forms of support needed:

  • Social: We regularly need volunteers to help people meet each other, get signed up for the showcase, and help projects in need find more people.
  • Project Management: Help a person or team be even more efficient in working towards their goal
  • Presentation expertise: Help hacking teams work on their demo-able showcase presentation. You can help them create good-looking slides or a video.
  • Design work: many projects need design work!
  • Translation support
  • Documentation support
  • Testing support
  • More!

What if I am not a "Wikimedian"?


No problem, we are always recruiting Wikimedians. Come to our event, meet us, and get involved!

What happens at the hackathon showcase?


The hackathon showcase is for people to present the work that they have completed at the hackathon. We request that whenever possible people work on projects that are demo-able and that teams spend a little bit of time putting together a video, slides or just collecting links to show off at the showcase.

Generally, each team gets about 2 minutes to show the world what they have done!

We try to show off as many projects as we can, as quickly as we can.

Are there prizes?


Rarely, and when they exist, they are generally a small token of appreciation (t-shirt, public thank you). These hackathons are focused on volunteerism and community recognition.

Are scholarships available?


Generally, yes. Check the specific event page for more information. Often you need to plan and apply reasonably far in advance for a scholarship. Most events will have scholarship registration deadlines posted. If the event is coming up and the deadline for scholarships has passed, there is no harm in emailing the organizing team, letting them know how you want to contribute to the event and seeing if there is anything that can be done.

Where can I find more information?


Optional: If you want to dive deeper into the world of MediaWiki, here are some more resources you can check out:

General sources for MediaWiki


Resources from the MediaWiki pre-hackathon workshops in 2017

  • List of resources for installing MediaWiki on a server and getting started with PHP & Co, by jackie: wmws.tantemalkah.at
  • Installing MediaWiki using VirtualBox, by Tobias: Download PDF
  • Quick Start in MediaWiki System Administration, by Alex: Download PDF

Prepare for the Wikimedia Hackathon