Last week Bob Edwards and myself finished the intensive part of the COMP8440 course at ANU. It was a lot of fun teaching the course, but it also answers something that I have wondered about for a while. Can FOSS development be taught?
Most things can be taught of course, but free software development is rarely taught. Instead hundreds of thousands of people have learned it by slowly absorbing the culture and the development practices from other people who already develop free software. I wasn’t absolutely certain that it could be successfully taught using more traditional teaching techniques in a university environment.
Last week gave me the answer very clearly – FOSS development can be taught, and indeed it can be taught very quickly. Most of the 21 students who took the course started off with almost no knowledge of what free software is. Only 2 of the students had any previous involvement with free software development, and many of the others had never used a free operating system before. The first day and a half had me a bit worried, as it was clear that many of the students were struggling, but by the end of the 2nd day the students were starting to understand. By the start of the third day I was starting to see the glow of understanding in many of their faces as they did the lab work and contributed in the discussions during the lectures.
By the end of the week the students were really enjoying it, and many of them had successfully contributed to a free software project of their choice. It was amazing to see them interacting with other developers from all over the world, and it was fantastic that they found the experience so rewarding.
Scaling it up
So, FOSS development can be taught. Now how do we scale it up? Bob and I have released all our lecture and lab notes, plus videos of all of the lectures on the course website under a creative commons license. We will also soon be releasing the scripts we used to setup the lab machines. So now I am looking forward to some other universities from other parts of the world adopting the course material and offering their own courses in FOSS development.
If we can make this a standard part of CS curriculums around the world, then the next generation of free software developers will be a bit better prepared.
Many thanks to everyone who made it possible to run this course. Special thanks to Bob Edwards and Henry Gardner for suggesting the course, and to Deanne Drummond for helping to get it all organised.
I’d also like to thank CASE, who were the official providers of the course. I love doing volunteer work for case, and this was the most enjoyable project I’ve done for them so far.
Finally, thanks to the students who took part. Taking a course like this when it hasn’t been offered before is always a bit of a stab in the dark. I hope you all got as much out of it as I did.