The Apache Cassandra battle highlights major problem with open source projects
techrepublic.com
techrepublic.com
Datastax employees were the controlling influence on the PMC, and the PMC failed to police copyright issues (including with Datastax marketing materials), mostly because they did not know this was their duty (and partially, in at least the case of some individuals, because they did not have any desire to participate in this duty on a volunteer basis).
They were also seen to have poorly nurtured other involvement from the wider community.
To some greater or lesser extent these charges were valid, and the community (not just the board, at least on the non-trademark issues) felt improvements would be welcome. But certain members of the board behaved in what appeared to be a very hostile and childish manner, by threatening Datastax with removal of every employee from the project. (I've been in heated arguments with these individuals for their behaviour, and I'll note they disavow any intended hostility, though do not disavow their actions)
The ASF did not remove Datastax from anything, although they were I think involved in Jonathan Ellis (Datastax CTO) being replaced as chair.
Datastax recently posted that they were planning to put much of their new feature development into their commercial version. They claim this all had nothing to do with stepping back from the project, but in all likelihood this is a "rising above it" PR position. That said, it probably is a good business decision, and may have happened sooner or later anyway.
Cassandra is one of the better big datastore offerings out there, and the doom and gloom narrative played by the article seems a bit disingenuous to say the least.
[1] http://www.datastax.com/2016/10/take-a-bow-planet-cassandra
Although I think you overestimate the inclination and ability of these corporations to invest - at least to date, only Apple has demonstrated any capacity or willingness to do so, and they are fairly slow about it. Their lawyers and antiquated deployments lead to very few (but quite big) improvements, and so far all of them have needed help from Datastax to be incorporated. This is despite a largeish team of people with direct experience of participating in the project; no other SV company has any such employee at present, and bootstrapping such a team would be non-trivial. Instaclustr claims they intend to do this, but it remains to be seen how successful they will be.
Also some patches coming out of FB/Instagram (with a new committer as well).
Would you have read it if it said "a bunch of nerds argued about nerdy things on the internet, and in the end, everything will be OK" ?
Yes, they could have a non-ASF open source fork, but what's the purpose? What do they gain? That just fractures the community - the same community they need in order to sell DSE to users.
But yes, forks of open source projects are never something one wants, they are a last resort, but one you always have with open source.
- non-Datastax Member of the PMC
But Mesosphere choosing not to contribute specific features back is their choice. The long term belief in a healthy community is that enough people will contribute patches that make the project better.
Take HBase... A thriving community, committers and PMC members from dozens of organizations, no open source vs commercial interest collisions.
Projects backed by a single commercial entity are suspect, but can work fine as well (Kafka for example).
Disclaimer: Apache HBase committer here.
My company does quite unfortunately; we don't really have enough data to make it necessary and it was justified w/ vague notions of scaling blah blah blah.
https://code.facebook.com/posts/321111638043166/hydrabase-th...
I cannot validate or refute any of it. Hoping some here can.
Anyway, I'm talking about small-ish startups that aren't super researchy technological trailblazers. There are definitely people outside of microsoft (I'm assuming that's what you meant instead of Google as Google already had BigTable and HBase started out as a Powerset project and so ended up at Microsoft) running HBase in production.
I work at one of the above :) where we run many, many thousand HBase servers.
It might cause those committing the code, building the tests, and writing the doco for other ASF projects to question whether their project is being justly managed. I only watch one ASF project, Apache Groovy, and it has a similar imbalance between fluff managers and grunt workers.
Although all 9 members of its PMC are committers, only 4 of them have ever committed code since Groovy joined the ASF via its incubator 18 months ago. The other 5 (i.e. chairperson Guillaume Laforge, Jim Jagielski, Roman Shaposhnik, Konstantin Boudnik, and Andrew Bayer) are all committers but have never committed any code in that time. I can't find any other technical contributions from them either. All 5 are also ASF members, whereas only 2 of the other 4 PMC members who do grunt work are ASF members.
There's 10 other committers in Groovy, most of whom are more active contributors than those 5 I named, and in my view have far more merit to be on the PMC than them. OCI, the company doing Grails consulting, a few weeks ago enlisted an active PMC member (Paul King) as an OCI consultant "to coordinate contributions to Groovy". If Groovy's governance at ASF doesn't radically change fast to give PMC voices to the people doing the actual work instead of those ASF politicians, OCI might tap into the discontent and "take over" in similar style to DataStax, or even fork it like LibreOffice.
There's no need to worry about ratios of people committing code - the PMC is about guidance, not about writing code.
I'm positive about Groovy's widespread use for builds and scripts on the JVM, similar to the way Bash is used on Linux. It doesn't get used much for building actual systems, even though some of Groovy's project managers tried to repurpose it for that. I've long had concerns about Groovy's governance, and believe that's the reason for its problems, e.g. Pivotal, OCI.
For example, a longstanding Cassandra bug makes it hard to build the database from source if you have a modern version of maven installed. Though Cassandra builds itself using ant (why?), simply having modern maven installed is a big enough incompatibility to break the build. That's weird.
Another recent weirdness is that Cassandra was shipping a non working command interpreter (cqlsh) for at least 3+ months as recently as a few months ago. That's now fixed in v3.9. I have to admit, the first thing I thought upon seeing that brokenness shipping in the binary distribution was - Is this because Datastax needs more sales?
Full disclosure: I work for Couchbase, and our management tends to describe DataStax as a key competitor.
From my perspective it seemed like the ASF board members had already prejudged the situation before engaging in any public discussions on the Cassandra mailing lists. The first interaction was about why Cassandra doesn't ship with its own client drivers[1]. The board member believed this to be a sign of Datastax "controlling" Cassandra because they have their own high quality open source client libraries. As a user and a former maintainer of a client library, this theory came off as completely ridiculous. The project has never shipped a production ready client driver in tree. It is simply impractical to be able to do that for all the languages for which there are drivers. I've got code in three different languages in production right now and none of them use Datastax drivers. If you read that mailing list thread, that is basically what everyone says on it (including the new Casssandra PMC chair), and yet the conclusion that the ASF board member takes away is that Datastax is controlling the project by having out of tree open source client libraries.
That ASF board member also got upset when a question on the mailing list was answered with a link to Datastax hosted documentation[2]. Again this seemed like an overreaction from the board member over a fixable problem as justification for a Cassandra shakeup.
Then recently there was a new wave of threads about Apache and Datastax[3][4]. Both sides come off looking pretty bad in these threads. Its clear that at this point a lot of people in the Cassandra community have negative feelings toward certain members of the ASF board. It also seems like those board members have become very defensive about what has transpired. Fortunately people have started to calm down and there has been a few reasonable emails from both sides.
From my perspective the ASF came off looking like they care more about the Apache trademarks than they do about the health of the community. I do believe there were some actual issues that were identified as places for improvement for the Cassandra community, but I don't think it was necessary to come in wielding a sledge hammer. It seems that the Cassandra board was not given an opportunity to fix the issues (mostly by increasing the number of project committers) before the board forced the changes. This has resulted in a lot of hurt feelings and a general sense of distrust between the Cassandra community and the ASF.
All that being said, I'm not particularly worried about Cassandra's future. I was sad to see Jonathan Ellis leave as the chair person, but hearing that Nate McCall was stepping into that position put a lot of my concerns at ease.
I hope that the Datastax folks know that the community appreciates all that they have contributed to the open source Cassandra project, even if the ASF doesn't.
[1]: https://lists.apache.org/thread.html/72a884fa8f35cbed23135c8...
[2]: http://www.mail-archive.com/dev@cassandra.apache.org/msg0914...
[3]: http://www.mail-archive.com/dev@cassandra.apache.org/msg1003...
[4]: http://www.mail-archive.com/dev@cassandra.apache.org/msg1002...
Other than "governance is hard and politics sucks," I'm not sure what the "major problem" actually is
I think multiple (not many, nor all) OS projects have a leading vendor supporting the codebase in various ways. For poorly adopted or niche OS projects, hardware, computer languages, etc, this can be a deathstroke to the project.
Does anyone here know what value do these foundations bring to projects, in this day of cloud hosting/computing that make these foundations worth for the projects?