Re: Theory IS Practical.
Date: Sat, 9 Oct 2004 13:32:00 -0400
Message-ID: <TKmdnXO-4_05vfXcRVn-pw_at_comcast.com>
"Kenneth Downs" <firstinit.lastname_at_lastnameplusfam.net> wrote in message
news:jks8kc.9nv.ln_at_mercury.downsfam.net...
>
> I am glad you brought this up. I have been meaning to ask the question
> "what is the relationship between theory and practice in computer
science?"
> It seems to me that there are some very large unstated assumptions in this
> group about this relationship, which perhaps should come to light.
> Finally we have the third relationship, which I posit is not valid but
which
> we see here. This relationship jumps straight from free-floating
axiomatic
> systems to bridges. A simplified example of this jump is "The RDM
requires
> sets instead of bags, and your system allows duplicate indistinguishable
> row, ergo your system is *bad* *engineering*." Huh?
>
> The mismatch is because the axiomatic system, RDM, aims only to remain
> internally consistent (what mathematicians want), while the database
system
> aims to satisfy human motives.
>
> This is not to say that RDM is irrelevant. It's appeal is that it gives a
> framework for determining data correctness, which satisfies a human
motive.
> But if it is not complete (hierarchies?) then we will end up choosing to
> combine it with other models to enhance our ability to store information
> about the world.
TIMTOWTDI. You can make many logical designs for a database that are equally internally consistent. Of those, the one that is the most relevant is probably the one that will lead to the best created database.
> Mostly the programmers are so smart that they get to work through the
night,
> on the weekends, and over the holidays. No thanks, I don't want to be
that
> smart anymore.
>
When I was less than half my current age, I was charmed by programming for its own sake. I might have wasted a few evenings and weekends.
Ah, but I was so much older then. I'm younger than that now.
> >
> How about the third half? This is information that cannot be stored in a
3NF
> database such that information meaningful to human beings can be retrieved
> without procedural code, such as hierarchies or the bipartite matching
> problem?
I guess I cop out on this one. I store data in a database, not
information. I don't expect people who need information to go looking in a
database. I expect processes that add value by turning data into
information. I know that's a corny phrase, but I think it has real meaning.
>
> I find myself coming back over and over to the issue of derived data, such
> as extended price = price * qty. If I am trying to satisfy a mathematical
> theory, I will leave this out, but if I am trying to satisfy human motives
> of convenience and correctness, I will find a way to store it on save so
> that downstream users have a better time of it.