Sunday, July 17, 2005

First Major Hurdle for Volume I

I've just, as in minutes ago just, passed the first major hurdle for Volume I of my next book. I finished the first drafts of everything. It ended up with 15 chapters and is sort of my "concepts" guide if you will. It roughly covers the first 9 chapters of Expert One on One Oracle, in more detail than before. It took longer than I thought.

We have tech edited up through chapter 9 and I have chapters 10 and 11 in my inbox to do.  A couple of chapters are “finished”, as in I’ve seen the pdf proofs of them and that will be what is put onto paper.  The deadline for everything is August 11th, so we are in the home stretch now.  I’d really like to have the book in the store for Oracle Open World in September and in order to do that – the 11th is sort of a drop dead date.

I’ve learned a couple of new things going through this rewrite process.  It has been interesting.  Lots of things “technically” changed from 8i to 9i and 10g.  Things you might not notice until you go looking for them.  But it just drives home that being able to test and measure things leads to better understanding.  The tuning advice of 8i and even 9i is not as relevant in 10g and some of the setup “rules of thumb” have just been turned upside down.  The experience of the past is useful, but unless you know how to see what is going on – it’ll just be magic.

One analogy.  I was just looking through Effective Oracle by Design.  I was writing about scalar subqueries.  While doing that I noticed I wrote this extremely ‘useful’ comment:

But somehow, the second query is more efficient.

In hindsight, I’m sort of embarrassed by writing that.  I didn’t know then what I know now – I know precisely why the scalar subqueries can be more efficient in that case (and now I even know how to make some of those queries even MORE efficient than they were in the book).  A feature called scalar subquery caching is involved and I knew about it vaguely (well, I don’t know if it is called that, that is what I call it)  When we figured it all out – with some help from Jonathan Lewis – new opportunities to use them opened up.  So, why is is important that we actually understand what is going on (going beyond the incredibly useful statements like “try this, I did once and it was great, maybe it will be for you too”)?  Because now that I understand exactly what is happening, I can use this feature even better.  If I just observed “hey, sometimes this thing works good” and didn’t understand it, I wouldn’t know when to apply it – or how to best apply it.

So, in the rewrite, I’ve gotten clarity on some things I knew but didn’t know why (I can safely say, there are no comments like “but somehow” in this book!).  I’ve gotten my thinking readjusted on things I thought I knew (eg: the shared_pool_size init.ora parameter is always smaller than the actual shared pool size – show SGA will always show a variable size much bigger than the shared_pool_size.  NOT true anymore…). 

All in all, I’m feeling fairly positive about the next release of the book – sometimes second editions are superficial updates, I didn’t want to do that and I can safely say I did not do that.  There is a lot of new material in there.

Now, if I can just make it to August 11th :)

On a non-related note.  Has anyone else ever had a bird take out their internet connection?  I did this morning.  It was going along great and then all of a sudden — nothing.  Looked to the sky to see if a big storm was coming (that can take it out) but it was clear.  So, I haul the ladder out to the field:



and noticed a bird had left a nice present on it (it was a bit dirtier before the photo).  As I’m cleaning it off, I notice this label on the long bar — which I’m sort of holding onto for balance:


It says “This device emits radio frequency energy, Keep two feet (0.6 meters) away from this point, Before servicing or upgrading, unplug indoor power connection”.  I should have read the documentation first I suppose.  Now I know.



Blogger Peter Tran said....

LOL Tom! If the quality of your blog or the answers on AskTom goes down hill, we'll know what to blame. :)


Sun Jul 17, 03:28:00 PM EDT  

Blogger David Aldridge said....

This all sounds like a very in-depth exploration, and I was wondering what your experience was in using the Oracle documentation set in your "authoring process".

For example, did you find that there were many errors or omissions in the documentation, or that some of the changes from 8i -> 9i -> 10g were not taken account of correctly? Or were there occasions when you deliberatly did not use the documentation, in order to avoid getting preconceptions about the software?

Sun Jul 17, 08:05:00 PM EDT  

Blogger Thomas Kyte said....

For example, did you find that there were many errors or omissions in the documentation

I try to avoid like the plague the documentation, support notes, anything internal or pre-written at all.

I do cross reference to the docs "hey, this is external tables, couple of chapters in this doc, many over here - read it" but I don't have the docs open while writing (or the support web site or anything).

The only time I almost copied material was my own material :) When I switched from WROX to Oracle Press I had to erase and rewrite a chapter that was borrowed from another WROX book I wrote (but that Oracle Press could not print obviously). We deemed that the text, while different, was too close to pass our litmus test.

So, I didn't really see if the doc was "lacking" specifically and I try not to have that stuff open while writing as it can influence you, and your thoughts.

The SQL reference was probably the most used documentation as it is almost always open (hard to be a script kiddie without it after all).

Sun Jul 17, 08:18:00 PM EDT  

Blogger Michael Dinh said....

How much longer Tom?

Will your book discuss any 10gR2 features?


Sun Jul 17, 10:01:00 PM EDT  

Anonymous Anonymous said....

Back in the olden days, I had a ten foot satellite dish which was far superior to cable in those days. One day it quit working. Hauled out the ladder set it up, took off the cone that covered the connection (it had a name I forgot C-Band, Ku Band I dunno). Out fell a bird nest, bird eggs, a bird, and a few other things. There was a small opening at the bottom of the cone so water could seep out.. Only problem, birds seeped in! What a mess.

Sun Jul 17, 11:28:00 PM EDT  

Blogger Aman Sharma said....

Hi Sir,
Wish you all the very best and good luck.I am waiting for your book vry eagerly.Definately you will be able to bring it out on Oracle Open World.
with best regards

Mon Jul 18, 12:10:00 AM EDT  

Blogger R Menon said....

Hi Tom
Good luck with your book - Having
written one just a few months back,
I know the feeling.

I was surprised to learn that
you dont use documentation
in your writing - but I do understand
your logic. May not work for
us "mortals" though :)

I am sure you would make the deadline. I will see your book
in OOW. Already placed a pre-order...

Mon Jul 18, 12:35:00 AM EDT  

Blogger Niall said....

No you aren't the only one to have had bird issues. In fact initially it was thought that the cosmic background radiation was, er a pile of poo

Mon Jul 18, 01:38:00 AM EDT  

Blogger Tim... said....

David Aldridge said....

I was wondering what your experience was in using the Oracle documentation set in your "authoring process".

During my authoring process I've noticed a large number of mistakes, ommisions and out of date documentation, especially where PL/SQL is concerned.

When I spot these I raise a TAR against the documentation so it gets corrected. That way other people won't fall into the trap of believing it and creating a new myth.

I urge others to do the same. The documentation is a product like everything else and we should log bugs against it to maintain the quality.

If you follow Tom's advice and never believe anything you can't prove it isn't going to affect you :)



Mon Jul 18, 04:35:00 AM EDT  

Blogger Fahd Mirza said....

Tom, Do you consider digital divide an important issue? I think you do, because of ubiquity of AskTom. But wouldnt it be nice if you also stretch this to your fine books. For instance, here in Pakistan, I have access to your great site (asktom) and your blog, but would you believe after searching for 1 year in three major cities of my country, I am still unable to find your books in stores. Is it possible that you direct your publisher to also publish your books in growing economies like ours. It would be a great service indeed by all means.

Mon Jul 18, 04:42:00 AM EDT  

Anonymous Georg Feinermann said....


how about chapter 16 - Oracle myths

I really wish such a chapter in a book written by an Oracle guru.

I know a lot of the Oracle myths - and you know them probably all.

The main difference is - as a noname OCP I have to convince someone of e.g. the order of table names in the FROM clause.

Believe me - it's still a hard job. I simply wish to point to your book and say - well, this was maybe a point 15 years ago, but not today.

A very popular myth is the "Index rebuild myth" - you already mentioned in the first edition. So you probably thought about it.

I could imagine chapter 16 as a funny one, but having a serious background.

Mon Jul 18, 05:20:00 AM EDT  

Blogger Thomas Kyte said....

mdinh said will your book discuss any 10gr2 features?

reference this blog, as 10gr2 just was released - no, no real experience with it. 10gr2 comes with a new features guide and that is the best anyone could do right now. I can say the book would be pretty much "not changed" for 10gr2 so far - based on what I do know about it.

Do you consider digital divide an important issue?

My books have been available in a huge number of countries -- including Pakistan.

You can definitely get electronic copies of it as well. The publisher ultimately is the decision maker as to where it is but there were reprints in all of the "growing economies".

how about chapter 16

chapter 16 - ugh, there will be a 16, 17, .... (volume II) :)

but later. I doubt I'll do myths though.

Mon Jul 18, 07:27:00 AM EDT  

Anonymous denni50 said....

oh dear!...good thing the bird wasn't on the dish the same time you were using it for balance...imagine a freak lightning bolt and off flies the bird with Tom's head and down comes Tom off the ladder with the bird's HEAD!! could then answer all the askTom questions with "tweet,tweet"..(lol!)

...looking forward to the grand opening of your book.


Mon Jul 18, 02:24:00 PM EDT  

Anonymous Kevin said....

I'll have whatever Denni50 is having please. :0)

Tue Jul 19, 04:10:00 AM EDT  

Blogger Javier Morales said....

I'm fighting now against an ancient hard myth. "In a datawarehouse envirorment, foreign key are forbidden because they decrease performance".

I've explained novalidate, disable, rely,... but they defeat to check all IR with PL/SQL...

...and the best of all is that they want database dimensions and OLAP cubes!.

Tue Jul 19, 07:45:00 AM EDT  

Blogger Thomas Kyte said....

In a datawarehouse envirorment, foreign key are forbidden because they decrease performance".

without foreign keys in a DW, especially in a DW, the CBO is flying blind. Opportunities for query rewrite are reduced. It is very much important for the optimization to know primary, foreign key constraints and especially NOT NULL constraints.

penny wise, pound foolish.

Tue Jul 19, 07:57:00 AM EDT  

Blogger Javier Morales said....

...and our datawarehouse is going to be 6Tb.

Every query's full of outer joins for each lookup table.

I know, Tom, I have a long long run :)

Thank you for your help.

Tue Jul 19, 08:32:00 AM EDT  

Anonymous denni50 said....

hey Kevin...must be a 'flashback'
to my Timothy Leary days.

Tue Jul 19, 08:49:00 AM EDT  

Blogger Renee said....

You better get busy. I got a "Thomas Kyte Bulletin from Barnes &" in email today encouraging me to pre-order "Expert Oracle: 9i and 10g Programming Techniques and Solutions" today! :)

Tue Jul 19, 10:35:00 PM EDT  

Anonymous Allen Shatzer said....

Tom, you must be just out of reach of cable (and FIOS?) in the rural reaches of Loudoun County VA, hence the use of DirectWay. Since I respect your Oracle and Database acumen greatly, I just have to ask about your experience with DirectWay. I am out of the reach of cable, DSL, etc and that is my only option for broadband access.

Also, do you have to use VPN over DirectWay. If so, is it decent to use, especially if you have to use terminal login (e.g. telnet) with the latency problem of satellite?

I would appreciate any and all feedback!

Thanks for the great service you provide to all of us wannabe Oracle Gurus!

Wed Jul 20, 06:53:00 PM EDT  

Anonymous Priidu Tanava said....

"But somehow, the second query is more efficient."

I remember that sentence, enjoyed it and it made me smile. Because it was an odd one out it did add to the book not take away. Well, it took away some perfection but added something in return. It must have, because I really remember it well. If someone quoted it I would say, ah, this is what Tom Kyte said in his book. So for me, what you are not happy with, is the pearl of the book. No pun, or joke or anything intended, this is my honest opinion. Going down the perfection route is natural, but there is something in human nature that fights against it. Maybe this is why you wrote it in the first place.

with best regards

Mon Aug 08, 07:47:00 PM EDT  


<< Home