I couldn’t resist writing a blog about this topic given the chance to use a witty blog title. A few years ago, I blogged about a post that Mike Rogers (@mikeal) wrote about “Apache considered harmful” in the GitHub era.
Apache considered harmful http://t.co/t8IIUpTj
— Mikeal (@mikeal) November 22, 2011
I agreed with Mike to an extent, but mostly around my frustration in how slow the ASF was in adopting newer tools (like Git) and how the organization was structured with volunteers responsible for critical infrastructure. However, we can save that frustration for another post (note: this has improved as of late).
The interesting part was that Mike recently has had some interesting thoughts about the role of companies in open source due to the NodeJS / io.js forking debacle:
Q&A about io.js, the community fork of Node.js: http://t.co/q6j4FWM6wY
— Jan Lehnardt (@janl) December 5, 2014
In particular, his opinion is that no company alone can be trusted with the ownership of a community driven open source project. I generally agree with his thoughts however, there are solutions to his problem involving open source foundations. Open source foundations like the ASF, Eclipse Foundation and Linux Foundation (and more) are actually really useful:
@hjc1710 @lhawthorn @mikeal At Apache, *only* individuals participate in project work and in ASF governance. #ApacheWay
— Shane Curcuru (@shanecurcuru) December 4, 2014
The foundations I mentioned above have over a decade of experience being built for the sole purpose of allowing independent open source communities to flourish with fair governance models built on meritocratic behaviors (just take a peak at some of the Apache documentation or Eclipse development process). This is important because the incentives between individuals small companies, large companies, heavily funded companies and even academics are different and need to be accounted for in a fair open source governance structure. Some of these foundations like the Eclipse Foundation started out as the “Eclipse Consortium” and learned some of these lessons the hard way.
In particular, I would like to call out the Eclipse Foundation Working Groups and Linux Foundation Collaborative Projects concepts as some of the best ways to collaborate in the open for maturing open source projects.
On a funny note, as I was trying to get this post out last week, hilariously the container community was going through a fork of Docker with Rocket from CoreOS (in particular, this Hacker News thread was just cheeky):
Regarding the Docker/Rocket stuff pic.twitter.com/Ze6UF2gz55
— Drew Petersen (@KirbySaysHi) December 3, 2014
What happened with Docker/Rocket was almost predictable given the way the Docker project was structured and how late to the game they were in establishing some level of governance and independence as more larger companies were getting involved. At least the competition should help container technology improve at a quicker pace.
In the end, I have to agree with this tweet from Jim Jagielski (@jimjag) about the role of open source foundations:
Rocket/Docker and Node/IO.js show that foundations like Apache and Outercurve are more important than ever to ensure FOSS neutrality.
— Jim Jagielski (@jimjag) December 5, 2014
I hope that in the future as new open source projects become successful, they take a serious look at open source foundations (especially the ones I mentioned) as a proper place to grow and provide structure to their community. Their communities deserve it.