OpenStack, GitHub, OmniOS: 3 projects, 1 lesson

These three projects vividly illustrate why it's better to exert influence rather than tight-fisted control over open source

A forked project from Oracle's Solaris, the role of GitHub in preparing legal documents, and the ongoing intrigue at cloud project OpenStack all serve to remind us of a core principle of open source: The exertion of control is a destructive force -- while allowing developer communities to organize themselves often yields highly successful results.

Each of these hot topics in open source is quite different, but together they share that same lesson, specifically in how business and community can engage and collaborate.

[ Also on InfoWorld: OpenStack could be the new Linux, but it has to get off the ground first. | Track the latest trends in open source with InfoWorld's Open Sources blog and Technology: Open Source newsletter. ]

OmniOS

When I described the community rising phoenixlike from OpenSolaris a while back, I mentioned the OmniOS project in passing. This week I had a chance to discuss OmniOS with Theo Schlossnagle, CEO of its parent company OmniTI.

OmniOS is a "JeOS" -- a Just Enough Operating System, the smallest possible subset of Illumos (formerly OpenSolaris), which is usable as a self-hosted operating system, one needing no external tools to build itself from source. It's aimed at devops experts who want a rock-solid operating system base for their Web hosting or cloud systems -- the sort of people who once would have opted for Solaris, before it became a specialized Oracle system. You can watch the discussion:

Theo casts a fascinating light on the Illumos community. Here we find a variety of groups of developers, each carving its own path through the technology landscape while maintaining a common set of overlapping code. There's no "control hierarchy"; each group of developers is independent, yet they also understand it's vital to maintain a common codebase at Illumos.

This is becoming the core reality of open source projects: multiple groups, each driven by a passion for a particular technology aspect, working independently yet coordinating organically. This model comes into sharper focus as the age of directly monetizing software begins to fade and we see companies like Facebook, eBay, Yahoo, and Amazon releasing certain parts of their infrastructure as open source.

GitHub

GitHub is a project hosting system based around the Git version control system created by Linus Torvalds, but its scope is far broader than source code alone. It's suitable for collaboratively maintained documents and potentially for other shared artifacts.

The big win for GitHub has been that it allows individuals to host open source code without creating any inherent hierarchy of control. Other people can view your code, take their own copy of it ("fork it"), and work independently from you. Any time they want to, they can offer their changes back to you ("make a pull request"), and you can choose whether to accept. All the time your version appears to be the "best," people will continue to offer their changes to you, but should you ever lose influence over the community you've initiated, the changes could stop flowing -- or flow elsewhere instead.

This arrangement expresses in code what has been happening in practice at Illumos. Each group of developers is independent, yet they choose to synchronize the overlapping parts of their work in a shared place out of convenience. If anything ever went wrong, it would be relatively simple for that center of gravity to move elsewhere. The very idea of someone trying to exercise "control" does not arise in this worldview.

1 2 Page 1
Page 1 of 2