UCOSP Spring 2012

This is the homepage for the Undergraduate Capstone Open Source Projects team working on Wikimedia technologies in the spring of 2012.

Students:
 * Tony Cheng, University of Toronto
 * Shealen Clare, University of British Columbia
 * Patrick Hayes, University of Waterloo
 * Dale Lemieux, University of Waterloo

Mentors:
 * Amgine
 * Sumanah (administrator)

Project structure
Each team member is working 8-10 hours per week between now and the end of April. There'll be two half-hour meetings every week, and in between those meetings, the students will keep in touch with each other and their mentors via email and IRC. Per UCOSP recommendations, we'll do work in 2-week iterations starting at the January 20-22 sprint.

Students will check their code into Wikimedia's Subversion repository as they work. At the end of April 2012, they'll produce a 5-minute screencast demo.

Project ideas

 * mobile Wiktionary for iPhone & other devices using Phonegap -- interface with the MediaWiki API
 * Amgine: "I suspect plenty of communications and presentation, and possibly parsing?"
 * Unleashing the true power of Wiktionary by channeling a diabolical combination of PyWikipediaBot, and one of the below:
 * Microformats
 * https://en.wikipedia.org/wiki/Microformat
 * XDXF
 * http://xdxf.sourceforge.net/
 * Straight-up XML dumps
 * http://dumps.wikimedia.org/
 * Test writing
 * An OpenStack database as service project
 * http://wiki.openstack.org/DatabaseAsAService
 * An OpenStack nova volume driver for glusterfs
 * OpenStack nova support for editing MediaWiki with resource information (like instance information, address information, security group information, etc)
 * OpenStack nova support for Puppet
 * An OpenStack load balancer as a service project using pybal and lvs
 * Add meta-instances to OpenStackManager extension for MediaWiki. OpenStackManager already has support for managing puppet groups, which include classes and variables, this should be extended to be able to take puppet groups and turn them into "meta-instances", which end-users can use to create instances that will build as very specific types of services.
 * Add OpenStack API support to OpenStackManager for the nova service.
 * (Your idea here)