As I mentioned a few weeks ago, I'm teaching the second course in our two-course sequence on software engineering next term (i.e., in three and a half weeks). The goal of the course is to teach students how to deal with large pre-existing code bases; my first thought was to have each team go spelunking in a different open source project, but (a) I haven't been able to find enough that meet my criteria, and (b) marking would be very difficult. I'm therefore looking at:
  1. Building a connector so that Gnumeric or OpenOffice Calc can be used as a front-end to SQLite.
  2. Help out with SpatiaLite, a set of geospatial extensions to SQLite.
  3. Help out with PyLint, a static analysis tool for Python.
  4. Refactor the Selenium IDE to make it more pluginnable.
I was hoping to find something that would tie in to this term's Open Government projects with the City of Toronto (it seems a shame to lose the momentum), but I haven't found anything yet that doesn't require more web programming background than it's fair to assume---roughly 1/3 of the students in the course haven't done CSC309 (our web programming course), and while many are taking it concurrently with CSC302, it wouldn't make for a level playing field.