CouchDB is interesting for a variety of reasons:
- The simple data model avoids a lot of ORM hazards and tedium. It also allows you to build an application loosely around your data, instead of shoehorning your data to fit your app. A "document" is basically a versioned JSON object (i.e. dictionary) with a unique DocID.
- No controller means that UI state sits in the browser, where it should be! (This is a big deal).
- Ground-up bidirectional replication capability makes it a less irritating "offline solution" than Google Gears, etc.
Ajatus is an application which takes advantage of these new capabilities. In class, I covered the DB, document, and view APIs. Then we built a quick todo application similar to this one.