Developer Advice for CouchDB Newcomers, Part 1

On the tail end of our CouchDB as a database solution three part series (1, 2, 3), we promised some developer advice for those who are new to the CouchDB platform.

During our interviews, we quickly ran into some collective advice we feel is well worth mentioning. There is one thing that nearly every developer encouraged: connection. It doesn’t matter if you choose to connect on Slack IRC, in person, or otherwise, any time you are looking to learn or develop a particular skill set, the quickest route to success is connection.

Thus, our first piece of advice is don’t be afraid to get your feet wet (courtesy of Joan Touzet). Ask questions and then, feel free to ask more questions. Embrace the fact that questions lead to deeper knowledge and deeper knowledge leads to more meaningful answers.

Second to this, have fun! Take a moment to realize that discovery is fun!

Nick Vatamaniuc suggests that someone new to CouchDB should open Fauxton and take the time to experiment.  Add some data, and then write some code to modify the data. He says that finding your way into CouchDB can be complicated, but it doesn’t have to be.

Dialing into some specific elements of advice, Glynn Bird directed us to Joan Touzet’s 2013 “Misconceptions about CouchDB” talk. He referenced this as essential viewing material for a developer new to CouchDB–especially if they are coming from a relational background. He added that Joan’s presentation pre-dates the “Mango” query language and the other “2.0+” features, but has otherwise aged well.

Glynn went on to say that CouchDB doesn’t know about or ask for your database schema, but that doesn’t mean that you shouldn’t think about your schema in advance. He encourages those new to CouchDB to consider the questions your application is going to ask of your data, and how that can be achieved in a performant way using the querying, indexing and aggregation functions available.

In addition to Joan’s word of encouragement, her first piece of advice was that if you know SQL, don’t approach CouchDB like a database that you know. Step back from your “5 normal forms” and start afresh. Check out some of the community frameworks around CouchDB (like Hoodie), that make it easy to write applications.

In summation, Paul Davis extended his most common piece of advice for people learning CouchDB by “If it seems complicated, you’re over thinking it,” stating that he can’t count the number of times he’s seen someone have an “Aha!” moment and then say, “I can’t believe it’s that simple!”

 

Stay tuned for more advice for newcomers to CouchDB and please, feel free to reach out if you’ve some advice of your own. We would be happy to accommodate. Email us!

For more about CouchDB visit couchdb.apache.org or follow us on Twitter at @couchdb

 

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s