Re: database systems and organizational intelligence

From: Dawn M. Wolthuis <dwolt_at_tincat-group.com>
Date: Fri, 28 May 2004 12:08:35 -0500
Message-ID: <c97rmt$p2v$1_at_news.netins.net>


"Laconic2" <laconic2_at_comcast.net> wrote in message news:AvydnWXh6p7K1SrdRVn-uQ_at_comcast.com...
>
> "Dawn M. Wolthuis" <dwolt_at_tincat-group.com> wrote in message
> news:c97doc$i8i$1_at_news.netins.net...
> > Iin what (type of) language would you like to see data constraints
encoded
> > and constraint handling logic written so that these same "services"
> > (components) can be used for both data entry (when needed for tossing up
a
> > UI or validating entered or sent values) and data storage (if the DBMS
> > didn't lock you in)?
>
> I think the language is less relevant than the location of constraint
> handling logic.
> I think of contraints listed in the DB and enforced by the DBMS as acting
to
> enforce a contract
> between the writers and the readers of data in the DBMS. Constraints
> enforced at data entry
> time are different.

It's a different contract, but many of the same constraints.

> Having said that, I think that "WHAT rather than HOW" applies here.
Good
> constraint languages will
> let the user (of the language) specify WHAT the constraint is, rather
than
> HOW to enforce it.

and nothing I have seen today permits me to specify even as simple a constraint as "this attribute is limited to values in this table/column" so that the constraint logic can be employed when tossing up a list in a GUI, validating data coming in via an xml document and storing data in a database. We end up telling the software WHAT so many times, that we have to figure out a better way and FREE THE CONSTRAINTS and "constraint-handling engine" from proprietary DBMS software. [Sorry, I'm must be in a rant mood]

> > Lament -- I'm teaching Java in the Fall and the last time I taught a
> college
> > language course was over 20 years ago --COBOL, Fortran, and BASIC.
Where
> we
> > were once able to teach a language and in short order a student could
take
> > in data, validate it, use it, modify it, store it, and retrieve it (i.e.
> > data processing), we might now need to teach Java, SQL, XML (including
> many
> > xml-based "languages" such as ant), jsp, html (along with taglibs etc)
to
> > write one little example of taking in data, storing it and retrieving it
> > again the way a production system might work. (and then to get the
> software
> > run-time environment set up...!!)
>
> Interesting topic!
>
> What's the lament? Are you teaching the language? Are you teaching how
to
> program? or are you teaching how to work with production type systems?
Or
> are you teaching all three in the same course?

It's within a liberal arts context, so let's just pretend that the point is to teach how to program (they are using the Deitel & Deitel book for Java). But I'm sure we would also want students to be successful if tossed into a job in a Java shop (e.g. summer job after 2 terms of a programming course). I have no problem at all with the fact that we have better approaches to quality, scalability, reliability, etc than 20 years ago and are much better equipped to build skyscrapers, but if you want to teach how to build a dog house before teaching how to build a house, you still need to teach most of the same languages and tools. So, we teach loop concepts instead and leave configuration management for the real world.

> I've never taught in college, but I have taught in industry. I've never
> taught people COBOL, Fortran and Basic but I have taught programmers how
to
> use SQL in conjunction with those languages.
>
> A little over 20 years ago, I was exposed to a little language called
> PASCAL. I really liked it, compared to COBOL, Fortran, and BASIC, and a
> lot of others. Maybe it's time for someone to do for the current state of
> the art what PASCAL did for 3GL.
>
> PASCAL, you will recall, had as its prime mission the support of
> programming courses. Students were not learning, PASCAL, per se, They
> were learning how to program. PASCAL minimized (somewhat) the
distractions
> to the learner due to the quirks and historical accidents in the existing
> 3GL alternatives. At the same time, a person who learned how to program
> well, in a learning evirnment, was well prepared, in theory, for
whatever
> 3GL they had to deal with in progressional life.

Java does use (an updated) Pascal machine (JVM) and is reasonable for teaching general programming concepts, but perhaps the change is that programming is now such a tiny percent of what is required to build software compared to what it used to be.

> So, what are programmers doing today? More importantly, what are they
> going to be doing 5 or 10 years down the road?

I'm a services fan, trying not to use the SOA buzzword (or "web services" or "grid").

Cheers! --dawn Received on Fri May 28 2004 - 19:08:35 CEST

Original text of this message