October 2011 Coding Challenge/Challenges

Overall constraints

edit
  • Weekend time box
  • Needs to be interesting/exciting
  • Open source and checked into our github/gerritt, or any other publicly accessible place
  • No proprietary or non-free dependencies (other than in social networking mashups)
  • Set expectation that deployment is not guaranteed
  • Must support Wikimedia mission

Pilot 1

edit

Mobile Photo Upload challenge

edit

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.

Pointers:

Slideshow Challenge

edit

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.

Pointers:

Making Wikipedia More Alive

edit

Thousands of people edit Wikipedia every day. Wikipedia articles are constantly changing, with the most popular articles getting updated upwards of xx times a day. But there is very little on the article page 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.

  • Recent changes stream
  • Article updated ping
  • Trending articles
  • Top editors today
  • Post to social media
  • A simple page view counter since a user's edit (for the editor as reader)
  • etc.

Pointers:

General dev resouces

edit

How to post

edit
  • Option 1: Post it to mediawiki.org (especially suitable for user scripts)
  • Option 2: Post to github.com or gitorious.org
  • Make sure you attach a license statement


Parking lot

edit

Mobile Photo Viewing challenge

edit

Help Mobile Wikipedia optimize selection of photos to view in more detail. Build an app, or extend the existing mobile gateway, to demonstrate your ideas.

Pointers:

Mobile Contribution

edit

Wikipedia is being accessed through mobile devices increasingly over time, but contribution through mobile devices is more challenging than on desktop computers. How can we make simple contributions, such as rating articles (ArticleFeedback) available to, and optimized for mobile devices.

Pointers:

Collaborative Photo Review

edit

The Commons media repository of Wikipedia gets thousands of images uploaded each day that need to be organized. Build an app, or extend the existing mobile gateway for making categorizing, sorting and labeling images be fun to use, targeting more casual computing devices such as tablets or mobile devices?


Social Networking Wikipedia Challenge

edit

Everyone reads, chats, tweets on popular social networks about recent happenings around them. Wikipedia articles change at the speed of thought when events happen around the world. Wouldn't it be cool to have most recent major edited articles tweeted or a Commons photo you liked posted on Facebook. If you're an social app whiz, you can help.

  • Build apps to integrate your edits or popular edits with Twitter and Facebook.
  • Post favorite photos to Facebook on your friends walls.
  • Tweet about an article you enjoyed editing or reading on Wikipedia.

(TODO: Add Pointers)

Micro-contribution Framework

edit

Many contributions to Wikipedia are granular and simple to perform, but relatively complex to find and perform. How do we build a framework for automatically finding work to be done, and providing users with a stream of small tasks they can perform in batches while reducing the effort required to perform them. How do we reward users for performing these taks. An example of a micro-contribution may be a possible spelling error: words in Wikipedia that do not exist in Wiktionary can be presented to a user who can determine if the word is really misspelled and select or enter the correct spelling.