FAQ about CouchDB and it's new IBM overlords
Q. What does IBM's involvement mean for CouchDB and the community?
A. The main consequences of IBM's involvement are:
- The code is now being apache licensed, instead of GPL.
- Damien is going to be contributing much more time!
Q. What about all the people who worked on the project? Are they still going to contribute, or has this become an IBM only club?
A. No one is being being replaced or pushed aside, and I'm hoping the people who are currently contributing keep contributing, because they are passionate and their work is fantastic.
Q. IBM sucks! They are going to ruin everything because they're a bunch of ruiners! Blah Blah Blah!
A. Ok, that wasn't really an question, but I'll respond anyway.
Yes IBM does suck. But they also rule. And they are just "Ok".
They say you can't be all things to all people, but when you have 350,000 employees and a presence in every nearly every niche of the computer industry, you can come close. IBM is gigantic and diverse.
So say what you want about IBM, but CouchDB will be a part that does not suck.
When it comes to CouchDB and control, I've made sure not to get myself into a situation where I could lose my rights to keep working on CouchDB. Praise the power of open source!
Now don't get me wrong, I will tend to see things IBMs way a little more often, seeing things through big blue tinted glasses. It's just unrealistic to think any other way about it.
But they don't own me, and they sure don't own CouchDB. I've made sure of it.
If there is bad quarter and a corporate reshuffle and suddenly I'm working with vapid bureaucrats, then we'll have to part ways. Same as any other job. Except CouchDB has been kept free and open and I, like anyone else, can continue the work on my own, forking the code base if I wish.
It's the beauty and freedom of open source, and IBM has shown time and time again they are visionary enough to be a part of it and share in the rewards.
Q. So is CouchDB now going to written in Java?
A. Erlang is a great fit for CouchDB and I have absolutely no plans to move the project off it's Erlang base. IBM/Apache's only concerns are we remove license incompatible 3rd party source code bundled with the project, a fundamental requirement for any Apache project. So some things may have to replaced in the source code (possibly Mozilla Spidermonkey), but the core Erlang code stays.
An important goal is to keep interfaces in CouchDB simple enough that creating compatible implementations on other platforms is feasible. CouchDB has already inspired the database projects RDDB and Basura. Like SQL databases, I think CouchDB needs competition and a ecosystem to be viable long term. So Java or C++ versions might be created and I would be delighted to see them, but it likely won't be me who does it.
Q. What is CouchDB's relationship to Lotus Notes/Domino?
A. There is no relationship at all. I've not talked about CouchDB with anyone in the Lotus group. CouchDB is in IBM's Information Management group. As far as I know, there are currently no plans for CouchDB to be in any way integrated with anything from Lotus.
But that may change at anytime.
Posted January 6, 2008 11:28 AM
Comments
SpiderMonkey should not be a problem.
Sam Ruby, January 6, 2008 9:20 PM
i congratulate you to the IBM involvement in couchDB. i think it can only be a big win for couchDB and anyone who is interested in using couchDB.
i appreciate the move to the apache license, because i think the GPL might be to restrictive for some possible usage of couchdb (no flamewars, please).
i also appreciate, that couchDB won't be ported to java ;-) - however i never believed, that this would take place anyway.
i think couchDB is very hot stuff - can't wait using it in some project anytime soon!
harald, January 7, 2008 2:34 AM
Nice news. I hope that those freezed Windows versions of CouchDB now can have an update. Some at IBM, maybe? About the Apache license, I feel a little disappointed with the spidermonkey dismis. Keep JSON and Javascript "attached" to CouchDB, it's 99% of the coolness. Congratulations for your new job.
alsanan, January 7, 2008 3:50 AM
Reading the Apache guidelines Sam linked, it looks like Spidermonkey would be a problem. If you can't use it, would you write your own (really cool, but *yikes*) or switch languages (bummer)?
Joshua Paine, January 7, 2008 5:21 AM
No, as in Sam's link, the MPL is a Category B license and therefore Spidermonkey should be usable if distributed in binary form.
Mike Shaver, January 7, 2008 5:40 AM
I'm happy that CouchDB moved away from GPL
Oli, January 7, 2008 7:01 AM
Ported to java...No
Ported to scala...hmmm...interesting.
Dan Sickles, January 7, 2008 9:42 AM
Scala?
http://stuffthathappens.com/blog/2008/01/02/scala-will-do/
:o)
Ben Poole, January 7, 2008 9:51 AM
Here's to continued progress and success.
Cory von Wallenstein, January 7, 2008 10:26 AM
Welcome aboard!!
May be now we can meet at one of the IM conferences..
Raj, January 7, 2008 11:16 AM
Addendum to the FAQ:
Q.Is CouchDB going to be renamed WebSphereDB™?
(:
C8E, January 7, 2008 1:17 PM
Congrats!
ps. if JavaScript is not viable anymore you can consider embedding Python :-P
Lawrence Oluyede, January 7, 2008 3:09 PM
For many folks, Scala is shiny and new but that might be better than an evolutionary dead end:
http://www.artima.com/weblogs/viewpost.jsp?thread=221903
In the context of prting couchDB, the Actors library and fucntional features of Scala map well to erlang along with addressing some of the erlang problems that Damien has vented about.
And as an interactive language for Notes, Scala rocks!
Dan Sickles, January 7, 2008 4:16 PM
Can you compare CouchDB with ThruDB which is written in C++ based on Facebook's Thrift framework?
yingfeng, January 8, 2008 5:57 AM
@Shaver, sure, I see that they can distribute Spidermonkey in binary form, but binary-only makes a general-purpose linux distribution nigh-impossible and/or requires a tremendous amount of build infrastructure that wouldn't otherwise be necessary.
Am I wrong?
Joshua Paine, January 9, 2008 1:15 PM