Sometimes people ask me how they should interact with the OpenSolaris community and how I think the community will react to various issues. This is difficult to predict, as I’ve come to learn (and am still learning). Many times it’s just a person who has worked internally and wants to get used to the free flow of an open community conversation. That’s pretty easy. But the challenge comes when people internally need to make difficult decisions that they feel the community many not agree with. What to do about that?
First, there’s no need to pre-judge the communities reaction because you really don’t know unless you directly and personally engage. Second, we need to remember that Sun is part of the OpenSolaris community now. True, we are leading OpenSolaris and sponsoring the project, but the process of making decisions within a community is quite different than making decisions in a closed system. The process of opening should be to engage with the external community and consider their ideas and needs right along with ours here internally. Now, we’re the ones doing the opening (and there’s a lot to open), so a lot of the discussion internally is based around how to open our own processes, which is understandable. But in general, if we are serious about building a community — and we are — more and more of our decisions should be made by involving the community — internal and external — as much as possible. You can see this beginning to happen on multiple lists, and over time it will only increase as more of what’s in Solaris is opened.
So, this is what I tell people … if someone at Sun has to make a business, legal, or engineering decision that the "community out there" may not like, then that decision should be made after engaging in an open conversation on the project’s lists. There are exceptions, of course, but that’s the direction we’re moving. I’m finding that open conversations can actually move faster than closed conversations because the group self selects and there’s less politics.
In general, we are trying to publish documents early to engage more of the community at Sun and outside Sun. Some well meaning people internally are sometimes concerned that this may bind the company to something or mean the company has to adopt every change the community (internally or externally) wants. This is a legitimate concern but fairly easily addressed. My feeling is that documents are published as drafts intentionally, so community members can participate in the creation of those documents (or processes or decisions or whatever) as much as possible. So, it’s a process of leading an open discussion to come to a better, more inclusive, more focused decision. People leading the discussion need respond to feedback, consider all reasonable opinions professionally, and actually engage in an iterative process. In other words, emails going back and forth on list for everyone to see. If you have to do something that may be unpopular even after this process, at least everyone was involved and had a say up front. In other words, you have to talk to people and consider their views and articulate yours. Hopefully, learning goes both ways when this works. You can’t fake it, by the way. It’s pretty easy to spot. But as a practical matter, what usually happens when you engage the community early is that the initial idea is flushed out more thoroughly and everyone wins because everyone participated.
We have early drafts of the Governance, Charter, and development process definitions, as well as various development meetings (here, here) out in the open for feedback and participation. Anyone in the OpenSolaris community at Sun or outside Sun can comment and be heard. It’s the only way to be heard on these issues, actually. Now, there’s a great deal of work to do on these governance and development processes documents, but when they are completed and implemented, it will be the OpenSolaris community that was responsible for the decisions. That’s what we are shooting for.