October 12, 2009
Engaging developers in Open Source projects
The workshop offered several different perspectives on Open Source projects - from an OSS project, from a project consuming libraries and other outputs of OSS projects, and from a developer submitting their first patch. This was a nice mix, and it was good to see the process from different viewpoints.
My presentation was primarily from the OSS project end, and focussed on Wookie:
I think the main thing I was trying to convey is how from a project perspective you're (usually) keen to get external contributions, no matter how small, and how willing project team members are to help get people involved. My "being nice is a survival strategy in OSS" seemed to go down well as a takeaway message!
Ian Boston was next up and talked about how Sakai works with Open Source projects - I think the point he makes about "good code - bad community vs. bad code - good community" is an excellent one. Perhaps one of the reasons why Moodle is so successful with its community are the wide range of issues that users can readily tackle themselves - whereas something very mature and well designed like Apache Commons makes developers averse to touching anything!
The last talk was by Mark Johnson, and was all about submitting a one-line patch to Moodle. This was a really nice walk-through from identifying a problem, engaging with the community, to getting the fix accepted, and with a clear case as to why the college would want to support this activity.
The discussions around the workshop also threw up some interesting issues. One of the big ones would seem to be that the core processes that developers have to engage in - particularly in Open Source projects, but in commercial development, too - are often also not taught in programming courses, namely source control and issue trackers. This is one of the hurdles for bringing on relatively new developers into a mature project. On the other hand it could be argued that Open Source projects provides a very useful training ground for developing the skills of using these systems, which translates well into other developer roles.
Another issue that comes up a lot is sustainability, especially in relation to funded programmes, I think we're making a lot of progress on this one, and at least now sustainability is something that projects funded by JISC have to consider. However its still not quite right, and there are probably things we can do to try to keep a good balance of innovation and sustainability where there is central funding for software development.
OSS Watch are a JISC innovation support centre; and they are focussed on Open Source in education. Find out more at http://www.oss-watch.ac.uk/.