Re: acceptable way to program

From: Chas Douglass <cdouglas_at_NOSPAMoz.net>
Date: Tue, 04 Jan 2005 00:38:54 -0000
Message-ID: <Xns95D3A9C9BB62Ecdouglasoznet_at_216.168.3.30>


DA Morgan <damorgan_at_x.washington.edu> wrote in news:41d9a797$1_3_at_127.0.0.1:

> Chas Douglass wrote:
>
[snip stuff I agree with]

>> There are way too few controlled studies in life. To me, even an
>> assertion of "most" requires some verification of the methodology and
>> population.
>
> If I were publishing in a peer reviewed journal I would agree. This
> is the usenet and we are usually grateful if the post isn't rude,
> obscene, or spam.
>

Touche.

>>>Addressing your second comment I would not say that performance and
>>>scalability are the most important attributes of a program. But when
>>>the database is capable of returning a result set in less than a
>>>second and the Java developer getting the same result set uses a
>>>method that takes 1-5 seconds there is a major problem and not just
>>>to the end-user. Often management ends up purchasing far more
>>>expensive hardware to compensate for bad design, bad implementation,
>>>and a lack of experience.
>>
>> If this query occurs once every day, is it still a "major problem"?
>> What about once a week?
>
> No such query. Objective research by Oracle and IBM have both shown
> that the average database hosts, at most, a few hundred unique queries
> in the lifetime of an application: Rarely are there unique queries
> except during development.
>

I see your point, and even though my comment was somewhat hyperbolic, it is still not out of the question for any single query to be both in-the- set-of-a-few-hundred-unique-queries and also only-run-once-a-day (backup?).

>>>Let me give you some simple examples related to Oracle since that is
>>>where this has been cross-posted. How many Java developers in your
>>>organization know about the following?
>>>
>>>EXPLAIN PLAN
>>>TKPROF
>>>TRACE ANALYZER
>>>Bind Variables
>>>Multiversion Read Consistency
>>>Stored Outlines
>>>Hints
>>>
>>>And that is just the tip of the iceberg. The answer, undoubtedly, is
>>>a very small number. And yet no serious Oracle DBA or developer would
>>>consider doing much without one or all of them.
>>
>> If your point is that any large development project would benefit
>> from expertise in the specific database to be used -- that is pretty
>> hard to disagree with.
>>
>> If your point is that every Java programmer needs to be an expert in
>> that database -- I would definitely disagree. Hey, it might be nice,
>> but this is the real world.
>
> An expert no. But would you let your psychiatrist set a broken leg?
> They are both MD's. Would you let your auto mechanic work on a Boeing
> 777 in which you were about to fly to across the Atlantic? They are
> both mechanics?
>
> So while not an expert knowedgeable enough to be competent.
>
 

I think your analogy works against you. Do I care if my family physician can read the MRI of my head and spot a brain tumor, as long as an expert does read it?

Do I care if any particular Java programmer is an Oracle expert, as long as I have an Oracle DBA on board with appropriate design/review responsibilities?

Certainly, my physician must be broadly trained enough to know to request an MRI and an expert reading. And any Java programmer should be trained broadly enough to know when to ask their DBA for help.

I would argue that having a problem domain expert (for instance, an Oracle DBA) is not just a great idea, but a requirement for any nontrivial  database program.

I would also argue that, in the real world, we're not going to hire a whole team of Java/Oracle experts.

I don't even think it would be a good idea. If I decide to switch from Oracle to DB2, do I want to replace one expert, or my whole team?

>> (Should we drop comp.databases.oracle from followups? I'm not sure
>> this discussion is relevant there any longer. I'm reading this in
>> c.l.j.p but I don't know where you are reading it.)
>>
>> Chas Douglass
>
> I am reading in the Oracle group but it should be noted that last year
> I taught a JDeveloper class here at the U with one of the people that
> helped write Hibernate. So I know my way, reasonably well, around Java
> too.

I apologize if I, in any way, implied that your knowledge of Java (or anything else, for that matter) was at issue.

Chas Douglass Received on Tue Jan 04 2005 - 01:38:54 CET

Original text of this message