Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Usenet -> comp.databases.theory -> Re: All hail Neo!

Re: All hail Neo!

From: Bob Badour <>
Date: Mon, 01 May 2006 03:13:56 GMT
Message-ID: <U1f5g.1202$>

Marshall Spight wrote:

> Bob Badour wrote:

>>Marshall Spight wrote:
>>>Yes, that's exactly what I am saying. A good logical model
>>>would be based on sparing use of the empty set, rather
>>>than on something like SQL's null, which taints most every
>>>calculation it takes part in.
>>It might or might not use an empty set. I suspect it would not in most

> What would you use instead? The decent tools that I'm aware
> of are empty sets and tagged unions.

And full normalization. Don't forget full normalization, which is always applicable whenever empty sets apply, and which I consider a better solution than empty sets.

In some cases, I would use the type system to create special types akin to tagged unions.

You can get whatever
> semantics you want from tagged unions and functions over
> same. The behavior of fold (or aggregates) over incomplete
> sets is well-defined; the functional programming crown has
> beat fold to death. I don't see any reason for the system
> to supply an UNKNOWN special value out of the box, but
> as I say you can code one up if you want it.

Yes, that's exactly my point. I don't want a dbms to incorporate some inconsistent and problematic silver bullet. If I want my types to have an unknown value, I will create them that way. The type system will enforce consistency while the dbms continues to use binary logic.

Vendors need to put the work into the things we really need. That would benefit us far more than putting effort into things that we can do without and that run the risk of harming the dbms itself.

I strongly advocate the principle of cautious design when it comes to data models and dbmses. We know we need good type support. We know we need physical independence. We know we need logical independence. Let's get those things right first.

> Falling back to the "we have no good theory" yet is not
> going to help the people that are building systems today.
> They have to put in something; I propose empty sets
> and tagged unions. If you have better candidates,
> let's hear it.

Full normalization is probably the best candidate. Give us good type support, and we can invent our own ad hoc solutions to meet the specific requirements we encounter in the field. Good type support facilitates the empty sets and tagged unions methods.

While I have not read the paper, I strongly suspect full normalization is the direction Pascal and McGoveran are heading, and it is also the direction Date and Darwen appear to be heading. Pascal describes his recommendations in _The Final Null in the Coffin_ at:

I have not yet read the paper, myself.

>>>Okay. Did you ever do any HCI testing? I expect not; it
>>>doesn't seem like something that would appeal to you.
>>With all due respect, what do you think HCI testing is other than
>>observing users in action?

> Building use cases. Role-based interaction modelling. Questionaires.

Self reports are useless or worse than useless. I don't know where you get your ideas regarding HCI, but it sounds more like you got them from a book on UML than anything from the HCI community.

> User scenarios. And yes, observing users in action, in a controlled
> setting.

Controlled in what way? Given task and user, observe. Take note. That, in a nutshell, is qualitative HCI testing.

Quantitative HCI is much more expensive. Unless one works for a multi-billion dollar corporation, one is unlikely to have direct access to internal quantitative HCI. However, much public HCI material is available and generally applicable. Everything from the perception of instantaneous response at 300 milliseconds to the human response to peripheral animation are already available without a massive quantitative HCI budget.

>>Nielsen would recommend successive samples of
>>about three users with intervening refinements in the user interface.


>>From memory, Nielsen's current recommendation is five subjects.

That's the maximum. Anything more than 5 is a waste of resources for qualitative usability testing. Three to five is the recommended range, and I would tend toward three.

With 15 subjects, I would prefer to get five iterations identifying 60% of the usability issues each iteration than 3 iterations of 80%. The 20% difference you miss on iteration 1 with 2 iterations remaining will be caught in iteration 2 with 3 iterations remaining instead. In the meantime, you get to test the solutions to the problems identified in iteration 1.

>>I suggest you stop making assumptions about me, which I generally take
>>as projection in any case. You know absolutely nothing about what
>>appeals to me,

> I know you get a big kick out of talking trash!

See? You only expose your ignorance about me and project your own failings onto me.

>>and I can say with certainty that you have been
>>absolutely wrong in every assumption about me.

> Okay, so you're saying HCI testing does appeal to you?

Yes, absolutely. I have used HCI results and methods professionally for almost 20 years. In fact, my interest in HCI pre-dates my interest in the relational model -- dating back to the late 1980's when I used to maintain the source-code for a proprietary network model database among other things.

My friend, Rocco, introduced me to the topic in 1987 or 1988 in relation to ideal software response times and optimization tradeoffs.

> You could simply say so instead of giving me the runaround
> every time I ask.

I choose to address what I choose to address. Your ignorant assumptions about me needed the spotlight much more than my interest in HCI does.

You will do much more good in the world if you abandon your inherently religious methods and embrace empiricism instead. Your assumptions about me are fantasies. The sooner you abandon the realm of fantasy for objective reality, the better.

>>You speak from a position of total ignorance when
>>you claim I am being pedantic.

> "Characterized by a narrow, often ostentatious concern
> for book learning and formal rules." You don't think that
> you come across that way on the net?

What makes you think I give a flying fuck how I come across? It's not pedantic to note that programming and data management are applied mathematics specifically related to formalism. They are. It's not pedantic to note widespread ignorance and incompetence when confronted with it daily. I am confronted with it daily. It's not pedantic to note that usenet is an inappropriate medium for learning applied mathematics. It is inappropriate.

Nearly 100% of the books on programming and data management are worthless horseshit or worse--they do more damage than good. Likewise what passes for formal education on these topics spreads more ignorance than knowledge these days. How those observations make me pedantic are beyond me.

Would it be pedantic for a carpenter to notice if his colleagues confused screwdrivers for chisels and wrenches for hammers? Would it be pendantic for the carpenter to observe the futility of trying to educate his entire industry through (at best) a marginal medium?

Either one grasps the basic tools, or one doesn't. If one doesn't even grasp the basic tools, one has no business pretending to anything resembling professionalism. Those who do grasp the basic tools have a responsibility to direct others toward the fundamentals and away from hucksters. Received on Sun Apr 30 2006 - 22:13:56 CDT

Original text of this message