incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Antony Blakey <antony.bla...@gmail.com>
Subject Re: Changing rev to _rev in view results (Was: Re: newbie question #1)
Date Tue, 30 Dec 2008 01:46:19 GMT

On 30/12/2008, at 11:55 AM, Damien Katz wrote:

> Your argument about consistency and rigor being compromised is  
> unqualified. I see nothing more or less consistent or rigorous about  
> the current implementation versus other proposals, the rule as is is  
> easy to follow and use, and as far as I know has no inconsistencies.

Having no rule is simpler than the current rule. The API is  
unnecessarily complicated by that rule. The fact that '_id' and '_rev'  
would have underscores everywhere is not a rule, it is a matter of  
identity, which is a fundamental concept i.e. a thing has a single name.

It is inconsistent because sometimes a document id is named 'id' and  
sometimes '_id'. You claim that the name is consistent modulo the  
application of the rule. I assert that is prima facie inconsistent.

As far as rigor being compromised, I assert that the current scheme  
violates Ockham's Razor.

Furthermore, remember that this was brought up by Geir in the context  
of a first approach to the API. I understand the rule and yet still  
find it annoying to have to code against both 'id' and '_id' depending  
on context. It has more cognitive load that having a single name for  
that type of thing.

You claim that:

> The current rule maybe not the most intuitive to a newbie, but it is  
> far more consistent and easier to work with then when using the  
> deeper APIs.

I think that fact that it is not the most intuitive to a newbie is a  
telling point, given that I don't think the second phrase is true. How  
are the deeper APIs made simpler and more consistent by having two  
names for the id depending on context?

Antony Blakey
-------------
CTO, Linkuistics Pty Ltd
Ph: 0438 840 787

There are two ways of constructing a software design: One way is to  
make it so simple that there are obviously no deficiencies, and the  
other way is to make it so complicated that there are no obvious  
deficiencies.
   -- C. A. R. Hoare



Mime
View raw message