Tuesday, February 05, 2008

The word pathetic never sounded so good...

A while ago, a friend - Alberto Dell'Era - sent me a link to some youtube videos.

Videos on SQL.

It is SQL worst practices - presented in 20 minutes by Stephane Faroult.  To hear "pathetic performance" with the accent just made me laugh.

Note to all developers:

watch these - they are good, they are correct (they are ironic, anti-patterns, don't do them - do the opposite). 

Some people have said they could not see the embedded videos (probably using a news aggregator/reader - not the source entry itself).  Here are the links, embedded videos follow:

Part 1: http://www.youtube.com/watch?v=40Lnoyv-sXg
Part 2: http://www.youtube.com/watch?v=GbZgnAINjUw
Part 3: http://www.youtube.com/watch?v=y70FmugnhPU



it is neat to hear words I've said time and time and time again, said by someone else :)



Blogger David Horton said....

Hi Tom,

I'm guessing this is the video by Stephane??? The links/videos in your post aren't showing up for me, not sure whether it's a firewall/policy issue at my company blocking access or whether it's the links themselves.

Anyway, if it is Stephane's, the video is pretty good, on a par with Mogens installation using the just power of the nose.

I just wonder how many people, despite the numerous "Don't do this" will take these as examples of good practice...I know more than a few of those people...

Tue Feb 05, 05:19:00 PM EST  

OpenID sterolandro said....


Really nice presentations.
And, oh, so many known patterns...


Tue Feb 05, 05:59:00 PM EST  

Anonymous Michael Olin said....

We had Stephane speak at an NYOUG meeting quite a few years ago. The content of his talk was outstanding. I thoroughly enjoyed hearing his accent again. I suppose it is time to extend an invitation for him to speak in NY again, perhaps in September (we already have our keynote presentation lined up).

Wed Feb 06, 07:19:00 AM EST  

Anonymous Ofir Manor said....

Hi Tom,
did you notice the "when others utlpck.p_raise_error(...);" in the second part? (around minute 4:40) As he say, take a look at the following procedure found in production...
I thought it's worth mentioning

Thu Feb 07, 08:05:00 AM EST  

Blogger Thomas Kyte said....

@Ofir -

that utl p_raise_error(...) is probably OK, probably.

Based on the name, it sounds like it re-raises the exception.

What I say is "when others not followed by RAISE or RAISE_APPLICATION_ERROR is almost certainly (99.999999999999% of the time) a bug in your developed code - a very bad, big, huge, obvious bug"

their raise error routine probably (hopefully)

a) is an autonomous transaction
b) logs the error
c) saves the error stack
d) commits (but doesn't commit anything else because of (a))
e) invokes raise/raise application error to re-propagate the error.

Thu Feb 07, 08:11:00 AM EST  

Anonymous Jeff B said....


Did you read Stephane's book, The Art of SQL?

Just curious if you had any thoughts on it.

Sun Feb 10, 08:06:00 PM EST  

Anonymous Mladen Gogala said....

Tom, words may be yours but I sincerely hope that your pronunciation is slightly better then this.

Mon Jan 05, 07:25:00 AM EST  


<< Home