Contributions to Open Source Software (OSS) projects are an excellent means to foster broad uptake of innovations and has therefore become indispensable for research and development in computer science.
With the Internet allowing ubiquitous collaboration (e.g. between OSS software developers, OSS community managers, OSS document editors, etc) of all sorts, across all backgrounds, and locations spread over the entire globe, some OSS projects are so successful that they reach sizes (and budgets) that are comparable to full-blown companies.
Contributing to OSS is also an unparalleled frank (and in times brutal) means for receiving feedback by an expert community. OSS communities are commonly governed by technical meritocracy, a term inherently subjective and thus reliable warrant of controversy. Contributions are in turn relentlessly scrutinized, the latter not seldom amplified by the fact that the motivation for OSS contribution is reward by community appreciation (instead of financial compensation), a principle that renders OSS environments highly competitive, in particular for highly popular projects like Linux, Apache, OpenStack and the likes.
We, at the ICCLab, consider it paramount to deliver our ideas and innovations as running code to a few carefully selected and relevant OSS projects to get receive feedback that validates our ideas and to ensure that our ideas and innovations gain support and uptake by the community. This is an inherent element of our impact-centric research methodology.
The power of OSS is exemplified by the OpenStack project. It emerged out of a merger between NASA and Rackspace, who both developed their own IaaS framework but decided to cooperate for the sake of creating a serious competitor to existing incumbents, like Amazon and VMWare. This initial motivation of the founders continues to materialize and the project enjoys comprehensive community support backed up by significant financial and organizational backing by some of the most influential industry incumbents.
OpenStack meanwhile became (supposedly) the largest OSS project since Linux and reached a size significantly larger than Linux. Such growth pushes organizational structures of any OSS project to the limits. If also imposes a hefty burden onto founding members, for OpenStack in particular onto Rackspace who managed the project from an administrative perspective.
A common way out of this is to transform the organisation into an foundation, like for instance the Apache Foundation or the Linux Foundation, and this was applied to OpenStack too. With the beginning of September 2012 the OpenStack Foundation is in charge of the OpenStack project. The advantages are evident; professional structures, comprehensive governance, and financial management. All this fosters trust as it leads OpenStack out of a loosly coupled community project into a trustworthy company-style enterprise.
But such industry-grade and -oriented advantages come at a price. While native (pure) OSS projects share powers based on meritocracy, derived from technical expertise and commitment to the project, foundations are characterized by a significant financial dimension, and the OpenStack Foundation does not make an exception. The difficult part of this is the balanace between professional structures, the financial backing required, and the value (influence) provided to those that are willing to invest cash on one hand, and on the other to preserve the drive and nature of the OSS movement, that is technical liberty and community recognition.
The OpenStack compromise to this issue is documented in the OpenStack Foundation Bylaws. This document lays out the general framework (not to say powers) and thus puts any person and institution committed to OpenStack – just like the ICCLab – in an unequivocal context. The question therefore is: What are the implications of the OpenStack Foundation?
Our initial analysis goes here ICCLab : The OpenStack Project and Foundation
Feedback much welcome!
5. September 2012 at 12:15
The most important answer to your question, in my opinion, is that the OpenStack projects are all led by Project Technical Leads (PTLs), who are elected by the contributors to each of the projects. The project has operated this way for quite some time, and the bylaws have preserved that as a core principle of project governance going forward.
Disclaimer: I worked on the bylaws, along with many other people, over the past 9 months.
5. September 2012 at 19:36
Thanks for the insightful comment, Mark. We noted that PTLs are still leading the “existing” (core) OpenStack modules but we got also aware (interpretation wrong?) that their work is confined to these existing core modules.
Or can the community (bottom up) decide to extend the scope of OpenStack in general, e.g. by adding new functional modules to official releases? If this is not the case then this seems to be a significant limitation when compared to the previous approach where the PPB, which included all of the PTLs, could take these decisions. Are we mistaken?
14. September 2012 at 10:37
The post (https://lists.launchpad.net/openstack/msg16590.html) regarding the ongoing elections to this technical committee explains the relationship between the old PPB and the new techinical committee.
The governance page for the TC is at http://wiki.openstack.org/Governance/Foundation/TechnicalCommittee. According to this “The TC recommends projects for Core status addition, combination, split or deletion to the Board of Directors, which has sole authority to approve them.”
Disclaimer: I am one of the elected members of the OpenStack management board.
14. September 2012 at 10:48
Thanks, Tim. This statement is also on our slides, see slide #25 that cites the OFN bylaws. (For a full copy of the slides see link in the blog post).
Best – TMB