By Jimgris-Oracle on Jun 26, 2008
Here are the
slides from my talk at the OpenSolaris
Developer Conference in Prague
earlier today. From an information perspective, the slides are pretty
much useless. They are just full bleed images with almost no content
whatsoever. I talked about community building from a governance
perspective and made up much of the specifics as I spoke. I had a
specific outline in mind, of course, but I just tried to tell some
stories about what I've experienced on the project -- including the
things we've done right, some of the things we've done wrong, and where
I think we're going. I was more assertive about my own opinions than
I've ever been, which was intentional, so I hope it came across ok. I
was a bit long winded (as I am in writing), so I think I have to
improve that. I'm the only non-technical speaker at the entire
conference, though, so I figured I'd try something new with the full
frame images with very few words. I think I'll continue this technique
for a while because I have a lot of photos I can talk about and that
offers a remarkable amount of flexibility to improvise during a talk.
But this was ultimately a discussion about getting involved in the OpenSolaris project -- either in governance itself or in any number of roles that will help you earn Membership and Core Contributor status in the community. In many ways, governance is just another form of community development, and there are many social, strategic, and technical factors involved. The governmental systems on OpenSolaris are still evolving, though, and some of the issues have been controversial. This is normal. It's simply the evolution of a complex and unique engineering project, one in which a multi-billion dollar corporation is opening its core product and is building a global community while still maintaining critical business operations.
There have been three clearly definable phases of governance on the OpenSolaris project:
(1) Sun's role in creating the CAB from within the Pilot Program, the development of (and confusion about) the Charter and Constitution, the redefinition of the CAB to OGB and the expansion of its mandate and extension of its term, and the ratification of the Constitution and election of the first OGB. This period of time ranges from late 2004 to March 2007.
(2) The first elected OGB begins normal operations with a Constitution that doesn't necessarily reflect reality, but many people on the board and in the community make a good faith attempt to make things work. The OGB controls no resources and key parts of the project are still internal to Sun. A community reorganization is specified and attempted but stalls due to disagreements and inflexible infrastructure issues. Trademark disputes over a new Sun distro lead to more arguments about the project's lack of openness in some areas. This second phase was March 2007 to March 2008.
(3) The second OGB takes office after a significant community argument with Sun. Most members ran on a platform to reform the governance and reorganize the community for two key reasons: the OpenSolaris community and Sun need to be in sync about the project, and the structure of the OpenSolaris community needs to reflect the reality of how the community actually functions. The re-org can now take place because the OpenSolaris engineering infrastructure team has resources to update the website, move the gates external, and finish the work necessary to make OpenSolaris an open development project -- which was the goal all along. The reorganization is not fully specified yet, and the discussion moves slowly. Sun's executive engineering management engages with the OGB as well as the community. This current phase started from March 2008.
Currently the OpenSolaris community is structured around Members, Community Groups, and Projects. Community Groups sponsor Projects and grant Membership status to Core Contributors. There are some odd groupings, as well, such as user groups, which we have stuffed into Projects due to site constraints. Also, we have many Community Groups that were crafted back in the Pilot Program that really ought to be Projects today or consolidated into other Community Groups. And Sun has yet another grouping called Consolidations, which doesn't fit the Constitution. The website doesn't reflect the Constitution, too, since the site per-dated the Constitution and its evolution stalled due to resource constraints. So, the OGB's community reorganization has to address all of these issues.
To begin the process of discussing the issue, the OGB recently proposed interpreting the term Community Group to mean a class of groupings in the community, not a group itself. In other words, Projects, Consolidations, Special Interest Groups, and User Groups could potentially make up the new groupings and they could have relationships with each other in a web-like structure instead of the current hierarchical structure. To establish some consistently across the community under this proposed system, a new OGB committee would be formed to create standards for granting Membership status.
The reorganization idea has already generated several counter proposals, but the general concept is moving in the direction of offering more flexibility for different types of groups and crafting a system that reflects how OpenSolaris developers work rather than imposing an artificial structure on top. The reorganization and the infrastructure work necessary to support the changes will probably take a year, so there is plenty of time to get involved and contribute. The site can not be changed rapidly, and neither can a governance decision. The site's current monolithic architecture is being updated in stages to a new modular architecture, but it still must support current operations. And the community will have to participate in and finally approve any new governance structure.
The OpenSolaris governance process should define how the community operates. Therefore, it's at the core of how people participate in the project. It should not get in the way of participation, but it should offer opportunities for many people to contribute in many ways.
Update: Here is the video of my session:
part 1, 30 mins
part 2, ~40 mins