Open Source and Unicorns

How do open source projects actually work - part 1

As an open source community manager, I often find people's understanding of how open source projects work and reality quite different. People just assume that thousands of developers are just dying to work on open source products and make amazing changes to the software that magically improve it. They also believe that there are hundreds of people out there testing the product constantly and will send back failures from recent changes instantly which are then fixed by several people in a matter of minutes. Of course, the real world is much crueler and difficult than this hypothetical model - the Unicorn Model of Open Source. For starters, having a complete open source code tree is an invitation for disaster. With multiple people updating patches directly to a software tree, it is extremely likely that compiling will cease to be successful as people start changing various data structures, function calls, and other software entities that need to be monitored closely and tightly controlled. The most common solution to this challenge is to assign a gatekeeper to review all submissions and determine if they are appropriate for upload into the project software tree. This gatekeeper (or gatekeepers for large software projects) is the central authority on the software tree and becomes the final decision maker on what software is actually included into the tree. As for developers themselves, there are literally thousands of open source projects available for people to work on and recruiting developers to a project requires serious efforts as people tend to work on what interests them the most or is a requirement for their job. In fact, most open source developers are actually paid to work on a given project as part of their job. Just look at all the open source developers Red Hat has working on Linux to ensure their corporate needs are met from the open source project. There are of course many developers who simply enjoy working on a project, but many successful open source projects actually have paid developers in place.  In review, most open source projects have a gatekeeper who makes the decision on what software gets uploaded to the tree and a highly skilled, paid group of corporate developers are recruited to support the project. Not exactly the Unicorn model but more like a standard corporate software development model. I will discuss testing and other aspects of how open source projects work in future blogs. This weekend I will be attending and speaking at the SouthEast LinuxFest and will provide a review of that event early next week along with some interviews with open source folks that are willing to sit down and chat with me.

Join the Network World communities on Facebook and LinkedIn to comment on topics that are top of mind.
Take IDG’s 2020 IT Salary Survey: You’ll provide important data and have a chance to win $500.