By webmink on May 21, 2009
Here's how to keep your slow loris happy.
A rather unusual project just started in the OpenSolaris community. It's the OpenSolaris Lending Project. Instead of directly working on the code for OpenSolaris, the new project provides a venue for OpenSolaris community members who want to contribute to the OpenSolaris Lending Team at Kiva.org
If you're not familiar with Kiva, it is a scheme that acts as a marketplace and aggregator for microfinance loans. It allows ordinary people to make small loans to other people keen to lift themselves out of poverty around the world. The loans are aggregated by Kiva, sent via a local organisation that Kiva has vetted and used as start-up capital (or growth capital) by an entrepreneur who would otherwise be unable to get finance. The sums are small - $25 sums from lenders are aggregated into loans around $500 for borrowers - but the impact can be enormous.
The idea of the OpenSolaris community is to allow OpenSolaris community members who also share in the vision for microfinance to gather together and make a difference. By forming the team at OpenSolaris, we also hope that advocacy activities will choose to work with Kiva when they are looking for a gift or incentive for user groups and marketing activities. Not everyone would prefer a Kiva gift certificate to an iPod, but it's a gift that lasts longer and has a better effect on the world!
To get things moving, we've also opened an OpenSolaris Bookstore. If you order your copy of The OpenSolaris Bible through there, Amazon will give us a 5% commission that we'll use to fund Kiva gift certificates for use by the OpenSolaris Advocacy community. You can also bookmark this link and use it when you visit Amazon.
I wrote recently about the Sun Model for open source business, my high-level overview of how Sun is working with open source.
- remove barriers to software adoption between download and deploy;
- encourage a large and cohesive community of software deployers;
- deliver, for a fee, the means to create value between deploy and scale, for those who need it.
I've had a number of comments and questions about that third phase. It can include all kinds of value-creation, depending on the product in question. Here are some examples of delivering value for people who have already deployed and are heading towards scale:
But it would be a mistake to believe Sun's open source strategy is only about software. As has been frequently explained, Sun is a systems company, and the news last week and today underlines that fact by showing two new ways Sun is offering value for those between deploy and scale:
Recently, the first database servers optimised for MySQL were made available. For MySQL users who have moved beyond initial deployment and are now looking for high performance servers with rock solid support at great price points, these are excellent. They are optional, but I'd wager most people will save money and create more value by graduating to them for some applications.
Today's huge news is the release of the new Sun Storage 7000 Series. These new storage appliances create value by combining open source software with commodity hardware and very clever programming and hardware design to deliver low cost storage appliances with great performance. And the use of open source means the extra access protocols other storage vendors try to charge for are included free.
There's plenty more to say on this subject. For Sun, open source is not a matter of warm statements of alignment while we carry on with the same old business or keep our core products proprietary. I hope it's becoming clear that the Sun Model is a directional matter.
I got a comment this week from someone asking why OpenSolaris didn't accept commits from community members. The fact that a reasonably well-informed individual could ask that question suggests there are some misunderstandings that need clearing up. I've been investigating the current status.
First, the question itself is wrong - OpenSolaris accepts commits from outside Sun. Both Subversion and Mercurial have been available on OpenSolaris.org for a couple of years now so that projects there can host their source code. Indeed, one of the significant new-code updates in OpenSolaris - the integration of ksh93 - was accomplished mainly by Roland Mainz and his sponsor April Chin with support from a range of community members, who put in a huge amount of work and achieved integration into the OpenSolaris code in build 72 in August 2007.
Multiple projects are being developed in the open on the site with source code repositories out there using one or the other. Individual projects grant commit rights using whatever method they choose. There are multiple examples of non-Sun people having direct commit rights on projects - one that comes to mind is Shawn Walker on IPS before he became a Sun employee.
While many of the code groupings in OpenSolaris (consolidations) have been publishing source code for a while now, the version control systems (VCS) used by some of the OpenSolaris consolidations are still inside the Sun intranet at the moment, having completed their move from the old closed system to Mercurial (with much help from Richard Lowe). Changes to those must be done by a Sun volunteer - this is what the sponsor program is for. The outside person can work on the code (for the "ON" consolidation, using the Mercurial mirror repository that has been available for about a year), make changes, test, do a code review in the open, and so on.
The Sun sponsor is needed to update the bug tracking system inside Sun (although we now have a public one that many projects are using) and do the actual putback. The request-sponsor table lists the 600+ contributions offered to date via the sponsor program and their status (~43% integrated; ~20% in progress).
ON has transitioned to using Mercurial as its VCS as of this month. The tentative date for ON to move its VCS to the public internet is the end of October. Companion CD and JDS have been outside since 2006 (they use Subversion). G11N has been outside since 2007 (they use Mercurial). The new install code has been outside since it started; it's been developed in the open. Publications has a gate with source for four books so far (opened this Spring). I didn't get status reports from some of the consolidations, most importantly SFW, and I think it's important from them to move as soon as possible.
The summary is that OpenSolaris has been accepting commits from community members pretty much from the moment the source was published. Of necessity there were Sun employees inserted in the flow when the project opened because the VCS in use was closed source and internal. In the years since then the process has gradually been getting easier and easier. Having the gates internal to Sun certainly hasn't helped growth, but it was unavoidable. That is finally getting fixed.
The Sponsor system itself is actually a great idea and is now working better than ever before. Like Jim I think it should be retained - and populated with experienced developers regardless of employer - even when all the gates are publicly accessible. Even in the world of Linux it's hard to get started as a contributor and the Sponsor system provides a great pathway.
We've been considering refreshing the OpenSolaris community governance in the light of experience. During the OGB meetings, I have made the following proposal a few times, so thought it would be good to write about it and see what people think.
I think the OpenSolaris governance needs to be simplified. We should move to an approach of "drawing a line around existing practice" rather than trying to invent a new system and force-fit everything that is going on into it. This is the approach we're taking with OpenJDK and, barring a few problems every now and again, it seems to be working.
For Governance purposes, all the overall community needs to have regulated are:
- What the top-level structure of the community looks like
- Who gets to vote in plenary decisions (OGB elections, constitutional amendments, extraordinary general meetings)
- Who gets to consume resources (create new mailing lists, repositories, web pages and so on)
All other factors are local to a particular grouping of the community, and given the size and diversity of that community it's likely attempts to generalise in a way that effectively embraces all the groupings will be very hard. I therefore suggested that, for governance purposes only, we treat all entities in the community as "community groups" empowered to do whatever it is they are already doing, but coming to the OGB for approval when they do one of three things:
- Instantiate a new top-level entity
- I suggest that new instantiations be handled on a case-by-case basis by the OGB.
- Top level groups can then create nested groups any way they wish
- However, new groups must abide by points 2 and 3
- The OGB may wish to publish criteria for which groups it would be likely to permit and limit creation of top-level groups to one-per-type but I suspect writing rules for this now falls under YAGNI.
- Grant a member voting rights at the plenary
- I suggest that the OGB create a Board Committee with diverse composition to grant plenary voting rights
- I suggest that the committee ask groupings in the community wishing to have the power to grant plenary voting rights to members to submit a proposal for how they will decide to do that
- The proposed process should as a minimum:
- Be deterministic and repeatable
- Grant voting rights only to those who have already demonstrably contributed, not to those intending to
- Require those being given voting rights to publicly assent to the grant (either by nominating themselves or accepting the nomination of others)
- The committee should grant rolling annual permission to groupings to grant voting rights once their process is approved
- The committee should draft a default process for new groupings to adopt if they don't need special treatment
- Choose to consume resources in a new activity
- I suggest the OGB create a Board Committee for this too
- I suggest the committee also grant resource access allocation rights on a rolling basis to those groupings exhibiting bona fides
As plenty of people will agree, I am no master-of-governance but that seems sufficient to protect community-wide rights while leaving maximum flexibility for there to be Consolidations, an ARC, User Groups and more. Thoughts?
Many thanks to the people who voted for me in the OpenSolaris Governing Board election last week. I was very surprised to receive so many votes, especially considering the strength of the field and who else was elected. I was also pleased that both the constitutional amendments I proposed were approved - I edited them into the Constitution this evening.
I've dived straight in on the ogb-discuss mailing list and IRC. Our first OGB meeting is on Wednesday and I welcome input, especially conversation on the OGB IRC where I try to show up at 10pm UK time each evening if I am free to do so.
Do please vote - those amendments need a "yes" from 50% of the overall electorate if they are to pass so I doubt we have enough "yes" votes so far to pass these very rational and widely agreed amendments.
We're half-way through the voting for the new OpenSolaris Governing Board as I write there have been 74 votes cast. That means there are plenty of people (nearly 300) who have yet to vote.
If you've not seen them, I wrote some notes on why I encourage you to vote for both of the amendments I proposed. There's been some comments against them from certain community voices, so I'd like to clarify that both of those amendments are submitted by me as a community member in response to community comments and I have tried to incorporate all the feedback I received for both. I was not asked to submit them by any Sun management and they are not "official" Sun amendments.
In those notes I also listed some other candidates and endorsed them as people I would be pleased to work with on the future of OpenSolaris if I was elected. It was noted they are all Sun candidates, and while that reflects the significant presence of Sun employees in the OpenSolaris community, I'd like to make it clear that I would also be pleased to work with candidates like Michal Bielicki, Stephen Lau and Justin Erenkrantz, all of whom have shown the sort of constructive spirit we'll need to take OpenSolaris forward.
Ultimately we need an OGB that has the backing of all the Core Contributors. So if you have a vote please use it, whoever you vote for.
I was interested to see news from the European Commission where they announce a new policy to more frequently use open source software in the administration of the European Union. They say:
For all new development, where deployment and usage is foreseen by parties outside of the Commission Infrastructure, Open Source Software will be the preferred development and deployment platform.
It's not just European government that's opting for open source. Today the NSA (the super-secret spy agency in the US) have announced they are joining in with OpenSolaris. Barton has an interview that explores this more. I think we'll see more and more government engagement as the adoption-led market takes hold.
Using Free software from open source communities makes perfect sense for governments, and not just for the obvious reasons of up-front savings on license fees. As I heard said on behalf of the Brazilian government, open source is a matter of sovereignty. When a government decides to use closed software, they are guaranteeing that they will be sending money out of the local economy. The degree of expatriation depends on the actual system they've chosen. In the worst case, all the money goes to the US, all the resulting assets belong to someone else and all the ongoing service and support costs pay for the development of skills abroad.
By contrast, using Free software has no licensing costs. Any extra programming results in an asset shared by an open source community. All service and support can be handled locally, growing the skill-base and economy. What could be a smarter way for a government to obtain the essential infrastructure it needs and develop the local economy at the same time?
I've been spending a little more time than usual on IRC because the OpenSolaris Annual Meeting is currently in session on Freenode. There was some excellent discussion on Thursday about constitutional amendments and I went on to submit two amendments for consideration by the membership (to article VI and to article IX). I plan to show up this week to discuss those amendments with anyone who has questions; I'll post the times once I know I have internet access in the places I am visiting!
On the subject of IRC meetings, there are also a series of them coming up this week to give the MySQL community the chance to chat with some Sun people. Kay Arnö has the details on his blog; I'll be joining #MySQL on Thursday at 2pm GMT (my nickname is "webmink", naturally!)
You'll remember when I was in India I announced a $1m programme from Sun to recognise contributors to a selection of Free/open source communities (and gave a few more details afterwards). In the interim, each of those communities has formed a team to work out how they would like to direct the $175,000 Sun has allocated to them, and I'm delighted to announce that the six programmes are now live. Full details in the press release which links to each of the community sites.
Thoughts and pointers on digital freedoms and technology markets. With a few photos too.