October 2011 Coding Challenge/FAQ
This page is obsolete. It is being retained for archival purposes. It may document extensions or features that are obsolete and/or no longer supported. Do not rely on the information here being up-to-date. |
The coding challenge requires JavaScript to be enabled in your browser. Some ad blockers may cause the challenge selection not to appear. |
What are the challenges?
editThere are three challenges:
- Mobile Photo Upload: Upload images and video via smartphone
Of course, Mobile Wikipedia is great for learning about the things around you. But: We need pictures. Millions of people have phones. How can we take advantage of location and mobile cameras? Build an app, or extend the existing mobile gateway, to demonstrate your ideas. More info - Making Wikipedia More Alive: Surface change in real-time
Wikipedia articles are constantly changing, with some articles getting updated upwards of 100 times a day. But there is very little that tells the reader that anything has changed. We would like to make the articles on Wikipedia appear more alive, so that our readers understand knowledge is a dynamic, not static, thing. More info - Wikipedia Slideshow: Showcase Wikipedia's beautiful multimedia
How can we bring the millions of pictures in Wikipedia to our readers beyond the current low resolution thumbnails in articles? Find a way to invoke a beautiful, interactive HTML5 slideshow that works well on the desktop (extra points for tablet or mobile implementations), from any Wikipedia article. More info
When is the deadline, again?
editThe deadline is November 7th, 2011 at 23:59 UTC. All submissions must be received by the deadline. Code changes made to external repositories after this date will be disregarded. Read the rules for more details.
How do I sign up for a challenge, or return to my challenge page?
editMake sure you're logged in on MediaWiki.org, then go to the welcome page.
If you have not yet signed up for a challenge, you will be taken through the signup process.
If you have already signed up, you will automatically be redirected to your challenge page, where you can manage your submission.
Submitting your code to a public repository
editAll contestants in Wikimedia coding challenges are required to upload code to public code repositories. The currently acceptable repositories are:
- Github (https://www.github.com)
- Gitorious (https://www.gitorious.org)
- Publish your code (e.g. a full MediaWiki extension) to any git repository on either of these two services.
- MediaWiki.org
- For user scripts: Publish your script as a user subpage of the form
Special:MyPage/MyScript.js
; for more info, see the guide to user scripts on the English Wikipedia - For contestants with commit access: If you already have commit access, just link to the relevant path or revision in Special:Code
- For user scripts: Publish your script as a user subpage of the form
The reasoning for this restriction is simple. We want to provide contestants with the freedom to edit their code continually -- but we also want to know when all code commits take place, so that code committed after the end of the challenge can be disregarded.
License and documentation
edit- The code must have a LICENSE file, or in the case of User Scripts uploaded to Mediawiki, text that clearly states the license under which the software is offered. This license must be one of the free software / open source licenses allowed in the rules.
- The code must be accompanied by a README that clearly describes installation and use of the software; or in the case of User Scripts uploaded to Mediawiki, accompanying text that describes the use of the software. Be clear. If the judges cannot figure out how to install your code, or how to run your code once it's been installed, then it's unlikely that your submission will be a winner.
Can you give me an example license header?
editSure thing. Add the following header to each relevant file:
Copyright (C) 2011 YOUR NAME <YOUR EMAIL>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to
Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor
Boston, MA 02110-1301, USA.
Also add a file called LICENSE which contains the text of the GPLv2, or, for a wiki page, add a link to it.
Are there any programming language restrictions?
editThe vast majority of code in MediaWiki is written in either PHP or Javascript, and being able to integrate code directly into MediaWiki will definitely be an advantage. However, code that does not integrate tightly but uses the MediaWiki APIs effectively and improves the MediaWiki experience will certainly be acceptable as well.
Can I collaborate with others?
editAbsolutely. Understand that the Coding Challenge is still a contest, and only one Grand Prize can be awarded per challenge -- but collaboration is encouraged nonetheless. If multiple participants help to create a winning entry, WMF reserves the right to choose the individual winner. Consult the rules for details.
If you want, you can also list your work in progress on this page.
Help! I'm stuck! Who can I talk to?
editIf you've consulted the new developer resources, including public communication channels, and this FAQ, and you're still stuck, send a note to codingchallenge at wikimedia dot org
, and we'll try to help you out ASAP.