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

 

 

 

CouchDB Weekly News, January 25, 2018

Releases

Releases in the CouchDB Universe

  • loopback-connector-couchdb2 1.2.0 – The loopback-connector-couchdb2 module is the CouchDB 2.0 connector for the LoopBack framework that supports the advanced functionality originally found only in Cloudant but that is now available in CouchDB.
  • spiegel 1.0.2 – Scalable replication and change listening for CouchDB

PouchDB

Opinions and other News in the CouchDB Universe

… and in the PouchDB Universe

CouchDB Use Cases, Questions and Answers

Stack Overflow:

no public answer yet:

PouchDB Use Cases, Questions and Answers

Stack Overflow:

no public answer yet:

For more new questions and answers about CouchDB, see these search results and about PouchDB, see these.

Get involved!

If you want to get into working on CouchDB:

  • We have an infinite number of open contributor positions on CouchDB. Submit a pull request and join the project!
  • Do you want to help us with the work on the new CouchDB website? Get in touch on our new website mailing list and join the website team! – www@couchdb.apache.org
  • The CouchDB advocate marketing programme is just getting started. Join us in CouchDB’s Advocate Hub!
  • CouchDB has a new wiki. Help us move content from the old to the new one!
  • Can you help with Web Design, Development or UX for our Admin Console? No Erlang skills required! – Get in touch with us.
  • Do you want to help moving the CouchDB docs translation forward? We’d love to have you in our L10n team! See our current status and languages we’d like to provide CouchDB docs in on this page. If you’d like to help, don’t hesitate to contact the L10n mailing list on l10n@couchdb.apache.org or ping Andy Wenk (awenkhh on IRC).

We’d be happy to welcome you on board!

Events

Job opportunities for people with CouchDB skills

Also in the news

Submit news to the CouchDB Weekly

Reach out to us with your news suggestions by sending us an email or by contacting us on Twitter @CouchDB.