Re: 3vl 2vl and NULL

From: David Cressey <david.cressey_at_earthlink.net>
Date: Tue, 06 Dec 2005 13:36:34 GMT
Message-ID: <Ctglf.70$Dd2.51_at_newsread3.news.atl.earthlink.net>


"paul c" <toledobythesea_at_oohay.ac> wrote in message news:m26lf.53756$Gd6.35030_at_pd7tw3no...

> Thanks David. You always seem to have a position that you can defend
> rather well even if I, being or trying to be a rather strict interpreter
> of the RM don't agree. But your points have more than a little
> practical weight to them.

Well, that's what I am, a parctitioner rather than a theoretician or a defender of the faith.

> I did notice that you jumped about 15 years
> between Codd's 2nd paper and the notorious twelve rules, which I mention
> only because I think Codd, as smart as he was (and entertaining - I once
> had the privilege of listening to him even though I didn't understand
> most of what he was talking about!) did diverge from his original two
> papers in a significant way after about 1979 or so.

I would have been very surrpised and somewhat disappointed if he had not. There was a lot of material to work with after Oracle and others began selling Relational DBMS products. One of the things he had to work on was "is it really relational"?

> I think he has (had?) a great deal of what you call
> 'data system' experience.

That's important. I don't mean to disparage theory, but ultimately a lot of these religious wars have no practical consequence at all.

>
>
> When it comes to a strict treatment of the RM, avoiding nulls, I could
> say that I would prefer 700 tables without nulls (along with a mere ten
> thousand lines of code) over 600 tables without nulls!

Did you make a typo in the above?

> I suspect you
> have modelled many, many, more applications than I have - for the most
> part I only got to do the ones that nobody else wanted to do (because
> they involved some strange process control machine or because several
> failed versions that wouldn't run on less than six mainframes had
> already been built and nobody else wanted to be the next scapegoat) and
> the rest of the time I was regarded as a mere interloper, aka a
> 'sh...disturber' or a 'bare-metal' type who was inherently incapable of
> understanding highly abstract concepts for modelling reality. So I
> personally never designed more than a seventy or eighty tables or so for
> a single app.
>
Not a great many. Most of the work I got called in to do was to bring failed systems back from the brink.
Only a few times did I get to be in on a system from the very beginning. I got a broad enough background to be able to tell a bad design from a good one. And I never got to build an OLTP app from the ground up.

I was a "bare metal" type from 1962 (counting college) through about 1981. Then I got introduced to the "data centric world view", the RM, DEC Datatrieve, and DEC Rdb in short order. That was a big change for me. Not enough is said in here about the "data centric world view". But comparing 600 tables to 100,000 lines of code neatly contrasts the data centric world view with the process centric world view. Thanks again for that.

>
> Of course, being the oddball sometimes has its advantages because you
> can suggest unorthodoxy without the other developers feeling threatened.
> I'll admit that I often agreed with the others in the sense that I do
> tend to think fairly often in terms of the bare metal and when push
> comes to shove, I think we must always remember that the machinery can
> never be the same thing, and must remain to some degree or other a mere
> representation of aspects of it, indeed I'd go so far as to say that we
> must expect some distortion as a result of putting an application on a
> computer. From my own little practical viewpoint, I did find that
> without needing to give much explanation to the higher-level business
> users, to whom I usually had some access, I was often able to get away
> with zero instead of a 'null' number and blanks instead of 'null' string
> or character data, but I never thought of 'empty string' being
> equivalent to null, rather I thought of it being equivalent to 'empty
> string'!
>

It isn't the users (or subject matter experts) who are going to correct you on this one.
To a bank executive, an account with no money in it, and no account are different, but it's a difference that he delegates to his clerks.

>
> Even though I disagree with lots on this group, I enjoy it. I'm also
> grateful to the people here because even when I disagree, it forces me
> to examine my own attitudes.

Thanks. Received on Tue Dec 06 2005 - 14:36:34 CET

Original text of this message