Wednesday, January 26, 2011

Sprint Wrap Up for POSIT, UCOSP 2011

This weekend about fifty students from all over Canada got together at the University of Alberta campus for a weekend of coding for our new open source projects. We spent three days getting to know each other and the codebase and had a blast doing it.

POSIT: Portable Open Source Search and Identification Tool

POSIT is an Android app and web project designed to help track finds in the field. Humanitarian aid workers can plan searches by looking at what's already been covered and tag finds with photos and their exact location as they survey the area.

The Team

Edward Bassett of the University of Alberta worked on POSIT for UCOSP last semester. He was there all weekend to help the new team get a handle on the project.

Shawn Gryschuk of the University of Saskatoon has already jumped into user interface improvements.

Eran Henig of the University of Toronto couldn't make it out to Alberta but was an everpresent collaborator over Skype and IRC.

Stas Kalashnikov of Simon Fraser University fixed our first big bad bug of the season, stopping images on the server from multiplying like bunnies.

Ralph Morelli is the POSIT project mentor at Trinity College. He made himself available all weekend over voice and video chat to help us get to know the project and get a feeling for where he'd like the project to go this semester.

Dustin Morrill of the University of Alberta fixed our second big bug, allowing POSIT to fall back gracefully to network location data when GPS is unavailable.

Jon VanAlten of the University of Alberta hopes to allow finds to be synced over SMS when data networks are unavailable.

Sarah Strong of the University of Toronto hopes to offer features to support real time collaboration on searches.

The Sprint: wrestling with Android and hunting bugs

We spent most of Friday getting our development environments set up and making sure that we can debug code on the phones and emulators. We also bumped up against permission control limitations of Mercurial hosting on Google Code and had to rethink our collaboration processes. By the end of the day, most of us were up and running and we could get started on exploring the project. We even started to document bug we found as we poked around.

On Saturday, Ralph ran us through a whirlwind tour of the codebase and we started to get set up to work on bug fixes. We wound up settling on each using a clone of the experimental branch as our personal repo, and asking Ralph to pull in changes when we have something worth incorporating into main. Jon started to put together a development POSIT server for us to tinker with.

Our last few hours on Sunday were spent tying up loose ends and planning for the rest of the semester. We're hoping to get bug fixes and some code cleanup done in the next couple of weeks and make a preliminary release in the next month. The last release was in June and our first release will bring in new fixes and features that are at a stable point. We'll work on pitches for features or projects of our own over the next few weeks and we'll each put together a final project. We're bursting with ideas but I'll leave the details for when we have more of an idea of what's feasible. By the end of the semester we hope to release a second version that incorporates the work done by UCOSP students last semester.