Monday, June 30th, 2008
Hyatt Regency Orange County
Walt Scacchi of UC-Irvine stepped in as a last-minute replacement speaker for Karen Sandler of the Software Freedom Law Center and gave a talk entitled “Research Results for Free/Open Source Software Development: Best Practices for Libraries? (and some legal issues too)” based on his empirical research on open-source project processes, practices, and community development
The talk was rich in details on who open-source developers are and what they do. Using the current stats at Sourceforge as a starting point, he estimated approximately 180,000 current open-source software projects, of which approximately 18,000 (10%) are currently being succesfully developed. The largest area of open-source development is in games, in large part driven by the fact that the very successful Sony game systems are built using open-source software.
Open-source developers tend to use the tools they build, which is not necessarily the case for commercial developers. About 1% of open-source software users are developers. Two-thirds of developers contribute to more than one project, 5% to more than ten.
80% of open-source developers say they contribute to projects to learn new tools, new skills, or new software. Most also build because it is fun.
Most open-source developers spend far more time reading online documentation and interacting with other developers than they do writing code. This means the community aspect of open-source software is actually more important than the code, which is contrary to the usual opinion of programmers as anti-social. The social aspect of open-source development, including developing one’s reputation and future job prospects, but also collaborating with other like-minded programmers, is critical to the success of a project.
Open-source developers tend to subsidize their own work by contributing (obviously) time, but also equipment, server space, money, and many other things to their projects. This makes commercial software company comparisons of “total cost of ownership” suspect.
Scacchi described software as literature, and referred to the many thousands of developers as readers of it. Then pointedly asked whether libraries are building collections of it. There was silence in the room, but iBiblio, hosted by the University of North Carolina–Chapel Hill, is actually doing this and hosts one of the largest open-source software libraries.
He also described the confusing array of open-source licensing arrangements and the problems conflicting licenses can cause. A good source of basic advice on these issues can be found in the Software Freedom Law Center’s Legal Issues Primer for Open Source and Free Software Projects.
Small projects tend to fail unless they can forge alliances with other, similar projects. A large project, or a cooperating cluster of projects, can generate the critical mass necessary for success. The question to ask about a project is whether it could or would continue if its current main developer left. He pointed to the example of the Linux kernel, the heart of the operating system, to which the original creator, Linus Torvalds, contributes less than 1% of the code. A sustainable project generates code and a community.