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, Github
 * Dale Lemieux, University of Waterloo

Mentors:
 * Amgine
 * Sumanah (administrator)
 * Yuvi Panda (domain expert)

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.

Weekly Meetings
Weekly meetings covering standups and code review are currently scheduled for Tuesdays at 2230 UTC (1730 EST, 1430 PST, Wed 0400 IST) and Fridays at 1800 UTC (1300 EST, 1000 PST, 2330 IST). The schedule is not set in stone yet, but we'd really like to have two meetings some days apart. (Reference 20% policy to find times when other devs are available.)


 * 03 Feb
 * 07 Feb

Blog entries
There are 6 UCOSP Spring 2012 project, and we are expected to provide content for the UCOSP blog during the term.


 * 09 Feb
 * 27 Feb
 * 19 Mar
 * 09 Apr
 * 30 Apr

Project

 * mobile Wiktionary for iPhone & other devices using Phonegap -- interface with the MediaWiki API
 * Amgine: "I suspect plenty of communications and presentation, and possibly parsing?"

Wiktionary Mobile App Feature List

Archived project ideas

 * 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)