incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Karel Minařík <ka...@karmi.cz>
Subject Presentation source and example app available for re-use
Date Sat, 02 Oct 2010 18:18:06 GMT
Hi,

a week ago, I had a talk on CouchDB at the WebExpo 2010 conference in  
Prague (http://webexpo.net/talk/couchdb-database-for-the-web/). The  
talk itself was in Czech, but the slides and accompanying app is in  
English.

In case anyone would like to reuse anything from my slides or code,  
both are freely available:

1/ The presentation SOURCE is downloadable from Github: http://github.com/downloads/karmi/couchdb-showcase/CouchDB.KarelMinarik.WebExpo2010.key
You can preview the slides in PDF on Slideshare: http://www.slideshare.net/karmi/couchdb-a-database-for-the-web
Don't forget that the Keynote.app format is essentially just a folder,  
so on a Mac you can do "Show Package Contents" to rip it open, or use  
terminal on every platform, in case you'd like to reuse pictures like  
this one: http://img.skitch.com/20100930-kme7jwerm6jkkwx4nhrs27kthg.png.

2/ The example code is available at Github: http://github.com/karmi/couchdb-showcase
It's essentially an addressbook-type "couchapp", but without the  
CouchApp dependency -- thus avoiding confusion as "do I need Python to  
work with Couch" etc. There's a set of Rake tasks to upload some fake  
documents and code into the database, demonstrating basic features of  
views, as well as _list a _show functions. There's also a Rake task  
and simple Ruby class to show off the _changes feed (http://img.skitch.com/20100930-j9ye6p7bdcwri7mx6g4g21cmic.png

).

Of course, I am interested in any opinion or feedback you'd have with  
regard either to the presentation or the code examples.

The feedback for Couch from the audience was quite encouraging, by the  
way. I have talked to some 10-20 people all interested in *starting*  
to use some non-traditional database, all keen to evaluate Couch.  
Everyone was impressed by the usual suspects: easy replication, crash- 
resistant design, binary attachments, focus on read-time speed, etc.

The conclusion I made, though, is that people were generally quite un- 
informed about the relative benefits and shortcomings of different  
NoSQL solutions. For example, I have refrained from any extensive  
direct comparison to Mongo during the talk, due to bad experiences  
with the Git vs. Mercurial debates; in the end Git won anyway and  
everything is fine :) But almost nobody knew about "single server  
durability" issues and such. Almost nobody understood that there's  
quite a difference between JSON an BSON, philosophically and  
technically. Etc. People thought Couch and Mongo are "almost the  
same", a misunderstanding I took to dispel in hallway converstations.  
(I tend to think that saying "hey, Couch has different values!" does  
not mean one is rude or confrontational, and there's really great  
amount of confusion out there.)

As you can see from the slides, I have emphasized the "schema-free"  
and "HTTP top to bottom" topics. To traditional developers, both were  
"interesting", but some people seemed to me quite ignorant as to what  
this _really_ means (that the storage is flexible and adapts to "real  
world" nicely, that you can reuse your existing knowledge related to  
HTTP scaling, etc.) Maybe it would be good to focus even more on these  
issues in blog posts and, more importantly, use cases. Traditional  
DBAs think way too much that their job is bring the "order" to the  
"chaos" of real world.

Thanks,

Karel

--
http://karmi.cz


Mime
View raw message