Call me a bore, but Open Source Governance models would be my “Specialist Subject” on a quiz show. It’s not that I have studied Open Source Governance, it’s more that I have lived it. A s a member of the Board of Directors of Eclipse I worked extensively with both Skip McGaughey who originally set up Eclipse as an entity inside IBM, and with Mike Milinkovich who took it over as an independent entity, and I know the pain that the originating organization has to go through to let go of its baby, and the pain that an independent director goes through to finally wrest the baby from its parent’s grasp, and the benefits to the originating organization and to the community at large when it all happens. I also know that Rackspace has gone through none of that pain in setting up OpenStack, it has got the OpenStack governance model spectacularly wrong, and as a result the whole initiative is in peril.
The OpenStack Governance Document bears an uncanny resemblance to George Orwell’s Animal Farm. You may remember that various animals got together to throw out the humans with the slogan “All Animals are Equal”, but that over time the slogan migrated to “All Animals Are Equal, but some are More Equal than Others” as the Pigs gained control and became indistinguishable from the humans they threw out. OpenStack was created with a similar sentiment: let’s throw out Eucalyptus and create a community programme where all contributors are equal. What has emerged in the governance model is “All Contributors are Equal, but Rackspace is more equal than others”. All the key positions, and a majority on the decision-making bodies are reserved for Rackspace. Rackspace, like the Pigs in Animal Farm, has subverted the revolution.
As mentioned in a previous post I’ve been at EclipseCon (the annual conference for the Eclipse Open Source Development tool platform, where the Open Source community gathered to discuss how to build the tooling that will allow us to build and target applications directly at the cloud, without concern for the underlying infrastructure.
The key issue is interoperability – are we building applications for The cloud, or for A cloud? For application servers (or indeed .NET) as discussed in our previous piece, the application level APIs need not significantly change, the set of services provided by the application server is transparently provided in the cloud. Applications written in languages such as PHP that hitherto had run in a web server directly against the operating system (rather than in a container) could be extended to access services inside the Application Server or the .NET framework.
However, since there is a broad consensus about the cloud architecture, interoperability for languages like PHP can be achieved through a fairly simple set of APIs that would allow applications to access scalable storage (as BLOB, REST or Queue), and to deploy/provision applications.
I spent the Week at EclipseCon, the Open Source Software tools conference. EclipseCon is a conference like no other, it is where the industry gets together to discuss how it is building the tools that are used to build the applications that we are all using. Since tools precede applications it tends to see into the future. Eclipse is the dominant non-Microsoft software tools platform, so unless it can be built using things that are currently being built for Eclipse or by Microsoft Visual Studio 2010, it’s very unlikely that it will be built in the next few years. Conversely, tools are only there to sell runtimes, and if there are developments in runtimes there will be investment in corresponding features of tools.
The perplexing feature of EclipseCon is that there are almost no users present, except in the sense that everyone is eating their own dog food, using Eclipse to build things in and/or for Eclipse. This means there is no hype, just a hard-bitten technical cynicism about how the marketing guys are spinning the latest technology. And yet you can see the cloud creeping across the hallways and in through the doors of the conference sessions, and onto the presentations and panel sessions.