Brothers in arms

by Volker Weber

Thomas Gumz is an engineer. An engineer builds stuff. Just because he can. Like a Domino Administrator running in a browser which looks and acts the same as a native application. An application written in DHTML and Javascript with an asynchronous data link to the server. Web 2.0 people call this Ajax. IBM calls it WebAdmin.nsf.

Damien Katz is an engineer. An engineer builds stuff. Just because he can. Like a stand-alone document store, accessible via XML REST. Ad-hoc and schema-free with a flat address space. Distributed, featuring robust, incremental replication with bi-directional conflict detection and resolution. Query-able and index-able, featuring a table oriented reporting engine with a simplified formula query language. Damien calls it CouchDb.

Thomas and Damien used to work for Iris Associates, a subsidiary of Lotus. Iris is no more. It's now an IBM lab, it is still building Notes, and Thomas is still working there. Not Damien though. He is working on his database engine.

Engineers build stuff. Just because they can. Sometimes they need managerial oversight. Otherwise they won't finish stuff until it's perfect. Which it never is. But sometimes they also look after each other. Like Thomas looking after Damien.

Today Thomas gives Damien And And Damien does not know this yet. OK, now he does. ;-)


Who says that world is a bad place, when things like this happen? The world is good.

I'm keeping Damien's blog in my feedreader and I'm very interested in how CouchDB turns out to be... I'm not thrilled about the formula language :-) but I'm thrilled with the feature set. Go, Damien!

Jens-Christian Fischer, 2006-06-15

What's wrong with formula language? Chortle. This is a very cool story: good work Thomas, and keep up the good fight Damien!

Ben Poole, 2006-06-15

I wonder if Thomas would have done this if Germany had lost :-D Yeah I know he would, he's a good guy.

Carl Tyler, 2006-06-15

And if you want to hear Damien talk about CouchDb with another engineer Julian Robichaux and a manager type (me as Thomas would say) then be sure to check out this podcast:

Bruce Elgort, 2006-06-15

Very nice.. very good.
Its nice to even be associated with people like this.

Paul Mooney, 2006-06-15

Link to podcast

Bruce Elgort, 2006-06-15

Formula language? Don't get me started. I have developed allergies against @, ; and too many brackets.

I think the syntax of a language should be something elegant. (And no, I don't intend to start a language war). I have worked with Ruby for the past year. Apart from Smalltalk (which I adored) this is the most elegant language (to read and to write) I know.

(I've been around the block, language wise: Basic, Pascal, Modula-2, APL, C, C++, Java, Smalltalk, Perl, Python, Ruby, ELisp, Notes Forumla Language, LotusScript, JavaScript - so I think I know what I'm talking about)

Notes formula language is sometimes elegant (list functions) but in general just a PITA to write and maintain.

I admit I haven't looked at the proposed CouchDB language - reading that it is based on the Notes formula language was a turn off for me.

Jens-Christian Fischer, 2006-06-15

Jens-Christian, I was just pulling your leg. I hear you ;o) When I encounter line-upon-line of nested formula language, I shudder in despair.

However, when I encounter three or four lines of judiciously-placed @formula -- especially ND6.x formula -- this pleases me. It has a zen-like quality, and the best code does the job amazingly well.

Ben Poole, 2006-06-15

Ben, yep - there are some good formulas. I have the same feeling when I read good Ruby code (and I have just begun to write "so-so" Ruby code, so I know that I can strive for much more)

Jens-Christian Fischer, 2006-06-15

Thank you Thomas

Hi Jens, Fabric is not intended to be a general purpose language, but rather primarily as query language. It is list based like Notes Formula language, but I think you'll find the syntax much nicer.

Damien Katz, 2006-06-16

Your most welcome, Damien. And vowe is a good mother.

Thomas Gumz, 2006-06-16

Old archive pages

I explain difficult concepts in simple ways. For free, and for money. Clue procurement and bullshit detection.


Paypal vowe