Tuesday, November 28, 2006

Open-source development models fall flat

Typical open-source project development strategies work well for free software but don't flourish in commercial settings, according to one expert.

Jim Herbsleb, a professor at Carnegie Mellon University's International School of Computer Science, part of the Institute for Software Research, previously worked at Bell Labs at Lucent Technologies Inc., where he studied why open-source projects such as Apache have been so successful in employing a distributed development method. He spoke at the Open Source Conference in Toronto this week.

Herbsleb looked at cases where many developers around the world would successfully collaborate on one piece of software. He also examined why this distributed development model hasn't thrived in industry. In fact, Herbsleb said he found that it takes companies more than twice as long to develop software in disparate locations than in one location.

One of the reasons why free and open-source software development has been successful over disparate locations is that the work has been done by the users, and these developer-users determine the functionality, Herbsleb said.

"Because work is done by the users, they're more likely to get the functionality right, so a major class of errors is eliminated," he noted, adding that developers of commercial software are rarely users of the software, and the functionality is determined by project managers.

"Project managers tend to understand purchasing designs -- why companies buy software -- so they'll build a project that plays into those hands," Herbsleb explained. This means that commercial software can be created without fully meeting user requirements. Because free and open-source software developers are its users, they create the functions they specifically need.

But one of the drawbacks to the open-source software development model is that mainstream users often get left behind because the really technical people create the software design functionality for themselves, not for the average user. The geek creed -- "If you can't install it, you don't deserve to use it" -- is still alive in many open-source projects, said Nancy Frishberg who works on user-centered software design in the software division at Sun Microsystems Inc.

As a result, "it is sometimes said [that lack of] usability is the Achilles' heel of open source," said Steve Easterbrook, associate professor in the department of computer science and associate director of the Knowledge and Media Institute at the University of Toronto.
Sun's Frishberg added that the open-source mantra that "everyone can contribute" is actually misleading because adding to an open-source project is basically limited to code, bugs and patches.