Google Summer of Code/2011

Google Summer of Code 2011 signups won't start for a while yet, but it's good to plan ahead. :)


 * Timeline

Mentor signup

 * Reedy - Potentially. Depending on time, and project interest
 * Siebrand
 * Trevor Parscal
 * Michael Dale
 * Ariel Glenn (xml dumps!)
 * James Salsman
 * Brandon Harris - Potentially. Depends on project and interest.
 * This can be you!

Student signup

 * 1) Ankit Garg
 * 2) Akshay Goel
 * 3) Ashish Mittal
 * 4) Aishraj Dahal
 * 5) Neeraj Agarwal
 * 6) Boopathi Rajaa
 * 7) Daniel Bell
 * 8) Michael White (perhaps)
 * 9) David Stolfo
 * 10)  Eric Zhu
 * 11) Brittany Wills
 * 12)  Yuvi Panda
 * 13)  Balanivash
 * 14) This can be you!

Project ideas
Below are some ideas for projects for this year's GSoC. Projects can be suggested by both potential mentors and potential students (or, for that matter, by anyone else). For inspiration, you can also check out the project ideas from 2010, and the list of past projects.

Unicode conversion of older standards
Automating the conversion of unicode characters conversion from older standard to the new standard to make Wiki's to be properly searchable. Would be great to work on this one. - Neeraj Agarwal
 * Don't we already normalize deprecated unicode code points? Or do you mean something else? Bawolff 23:08, 24 February 2011 (UTC)
 * IIRC, we do but only when the page is touched (eg: null edit/edit) and on larger projects (eg: en.wikip) there may be pages that havn't been touched for a few years. Peachey88 04:22, 1 March 2011 (UTC)

MediaWiki core

 * Mobile site rewrite
 * – Add some kind of GUI for sidebar customization that mortals can comprehend
 * <^demon> Rewriting the blocking code would be an awesome GSoC project, if a boring to end users :)
 * All blocking issues, rewrite tracking issue, things that definitely need fixing: Special:BlockList search doesn't find autoblocks, Remove autoblocks when a user is unblocked, etc.
 * Skin code rewrite as well
 * This one has mostly been done in trunk...
 * Profiling xml dump process and reducing processing time.
 * Generate JSON output for dump files.
 * AJAX Login that looks really good, is easy to use, integrates well with popular skins, and is secure.
 * Is AJAX appropriate for mobile device logins? A loaded ~500 MHz ARM mobile device can take long enough rendering AJAX Javascript to delay keypress echo. Is there any reason that HTTPS login form submission isn't always better?
 * I can't imagine doing a single ajax request when the user clicks a submit button would be that expensive. -bawolff
 * API sandbox environment (a la Flickr API Explorer that gives a form interface to help learn the api )

Existing extensions

 * Suggestions for extensions to be merged into core
 * Quite a few extensions need rewrites before going into core
 * Localize Captcha in ConfirmEdit (bug 5309, "Localize captcha images" and bug 14230, "Add a button to request a new fancy captcha (code)")
 * Extension:Gadgets could benefit from loading gadgets from one central wiki. This of course must be done via ResourceLoader to keep number of HTTP requests at minimum.
 * TimedMediaHandler Road map features ( transcoding non-free codec uploads, improved mobile support for wikimedia video, etc. )
 * Extension:Quiz with assessment content in Moodle's GIFT

Semantic MediaWiki
This year, Semantic MediaWiki is applying to become a separate GSoC organization, via the Open Semantic Data Association. Assuming they get accepted, all projects relating to Semantic MediaWiki will be done by them. See their ideas page for all further information.

New extensions

 * Simple language wikipedias in languages other than English -- this would mostly involve an extension changing the way namespaces (or maybe subpages) and watchlists work together, to allow people to easily watch simple versions of the articles already on their watchlists
 * Audio upload with rtmplite and Adobe Flash/Flex and/or Gnash also would recommend checking out rainbow
 * Most popular related articles

Scripts and other utilities

 * Gadget to fall back to a more compatible skin when an incompatible screen size geometry is detected (e.g., the new vector skin's search box disables the tabbed page menu on small screens)
 * Gadget to disable parts or all of the editing toolbar when user agent version suggests incompatibilities
 * Enable sitemaps for Commons with new Google Image Search specific extensions (such as geolocation and license)
 * Implement "Space Efficient Algorithms for Ordered Tree Comparison" on xml dumps and measure their performance on systems with different sizes of L1 cache RAM to support offline editing (for an updated version of the same paper, please see Wang, L. and Zhang, K. (2008) Algorithmica 51:283–97.)