Sunday, 29 June 2008

Fame and Fortune from Open Source Development

In May I presented to students and staff from the University of Auckland as part of the Electrical and Computer Engineering seminar series. What was I talking about? Getting involved in open source software - why would you want to? how to get started? and what to expect once you're there.



As usual, the slides would be a lot more helpful with some words to go along with it :) Basically I talked about my experiences with a number of open source projects, and particularly my work with the Dojo Toolkit.

Google's Summer of Code and Highly Open Participation programmes have been a fantastic source of new contributors to open source, and at Dojo we've been lucky to be involved for the last three years with Summer of Code. GHOP last year showed what a huge range of relatively easy things can be done to make an open source project better and just how many ways there are to get involved.

A few of us have been gently pushing for ECE to get software students to work on open source for their final-year undergraduate projects where it makes sense. This year there are two students adding new features to the Player/Stage robotics project, and it was interesting to talk to them after the seminar and find out how they'd been getting along and what issues they'd run into.

Key things out of all this:
  • projects want new contributors
  • the best way to get started is to do something
  • there are a pile of ways to get involved, of which coding is only one
  • what you get out is proportional to what you put in
  • anyone can do it, especially you :)

Web 2? Web 1? What does it mean?

Back in March (yeah, I know) I got invited to do a presentation to a group of high school technology students at Avondale College. So, I decided to talk to about Web 2.0 and why it matters, and what the big deal is anyway. Specifically what the differences between 1.0 and 2.0, and what it practically means for students, as well a company like Koordinates.



The slides are best when they go along with the talk, but hey :) I thought it went really well, and I got some really good questions.

I spend a few minutes afterwards talking more closely to one of the senior classes. The students were working on the process of technology development projects, and we talked about how we work at Koordinates. I was a little disappointed (but not surprised) that the waterfall model is the standard still being taught, and nobody knew what agile was. At Koordinates we do cycles of 1-2 weeks for decent sized work, and we're releasing code every day or two for bug fixes and minor tweaks. It is much easier for us to manage, design, code, test, and deploy many small changes than massive changes that affect everything. In fact, the more changes that stack up the itchier we get to push it out to production. To support all this we've built and tied together a bunch of tools so it is damn simple to push changes between the different environments in controlled ways.

The talk was part of FutureInTech, a programme run by the Institute of Professional Engineers, aiming to get students of all ages interested in science and technology as career options by involving young engineers. The regional facilitators do a really great job getting all sorts of people into schools to talk and work on projects. If you're interested in talking or getting someone into your school, get in touch.