Would you use a database from this guy?
fourspaces.com: FeatherDB - Java JSON Document database
Or at least I should have been. At the time, CouchDB was (and is) very much a work in progress... there were a bunch of things that were planned but were missing, such as: support for stored/named views and any sort of authentication. No problem! I'll just add this myself!
Problem: CouchDB is written in Erlang.
I don't do Erlang.
I don't have anything against Erlang... we've never met. I just don't want to learn another language. Especially one that is so specialized. I know that I should learn a language a year, but Erlang was just too much of a hurdle for me to get in and start mucking around in code. Plus, would you really accept a patch from a guy that is just learning a language? Neither would I.
No problem! I'll write my own Java version of CouchDB... and do it better. The result was/is FeatherDB."
(Emphasis Added by me)
So I ask you, dear reader of this blog, would you really accept a database from a guy that writes a Java clone of an entire database system just to avoid learning a language to add a couple of missing features? What a terrible reason to reinvent the wheel. Java developers can connect to CouchDB using CouchDB4J, the Java client for CouchDB.
I found Erlang ridiculously easy to learn. "Especially one that is so specialized"? Specialized in what, being incredibly reliable, scalable, cross-platform, and mature? Brutal.