Monday, May 02, 2005

Why...

Why “why” is the right answer. (I’m talking about “why” tonight at IOUG-A, and I wanted to get the gist down and get feedback on the thoughts – please – feedback away!)

I’m into polls all of a sudden – I want to know what people think, about a particular question.

If you ask someone a question and they ask “why” or for clarification/more information – is that rude? Insulting? Unproductive? Presumptuous? Do you think it is insulting to be asked to justify what you are asking to do? Especially in an environment where the people talking to each other don’t necessarily know each other… Like an internet discussion forum.

I’d like to know, if someone asks a question like “how do I ….”, is it insulting to ask ‘why’. I’ll postpone the poll to the bottom – after I say why I think “why” is the right and in many cases the only safe answer…

Let’s say the question is “How do I reorg a table?”. One could answer in many ways:

  • Alter table move, followed by index rebuilds
  • Dbms_redefinition
  • Export/import
  • Create table as select

Among others. Let’s say you don’t ask why and you pick “alter table move” as the answer. Ok, what have you done? I’ll say you just made them schedule downtime, you just made them move a 10 gig table and rebuild all of the indexes.

And why did you do that?

Well, because they had 1,000 chained rows.

And after the rebuild. They still had 1,000 chained rows.

What did they get? Downtime. Did they achieve their goal? No. Why not? We didn’t ask “why”. The right answer for them was not even on the list. When you find you have chained rows, you must first determine “are they chained because they don’t fit on a block” – you won’t fix that with a reorg no matter how many times you do it. If they are migrated – you have to ask yourself “should I reorg the ENTIRE table, or maybe just analyze the table and list the chained rows, select them out, delete them and put them back”. It could be that in seconds you accomplish your goal – without downtime, no downtime.

Or someone asks “How do I create a table in a stored procedure”, you can answer this in one of two ways:

  1. get CREATE TABLE granted directly to you, then use EXECUTE IMMEDIATE ‘create table ….’
  2. “Why”

The only correct answer to me is “why”. Why? Because doing DDL in Oracle is really expensive (the tradeoffs you have to make -- make it expensive). Because temporary tables in Oracle works differently than in SQLServer. Because the person asking the question might well have 10 years of experience in databases – just in a different one. I want to know WHY. If the answer is “we are porting stored procedures from SQLServer/Informix/Whatever” my answer is “let me tell you about Oracle”.

If the answer to “why” is “we are creating an install script and need the error handling of a language like PL/SQL” then the answer is #1.

Oh and the list goes on. And on. And on.

So, I’d like to know. If you ask a question on a forum (remember, we don’t know each other, the person asking the question doesn’t necessarily know the person giving the answer and vice versa), would you be insulted by someone asking you “why do you want to do that, what is your goal, what do you hope to achieve”. I’ll let you know my answer – I think it would be entirely unprofessional, naïve, and dangerous not to. That probably messes up the poll, but let’s see what we see. Warning: the poll is a free site, it will show you ads that are wholly unrelated to me and this blog.










Is asking "WHY" rude or presumptuous?
No
Yes




Free polls from Pollhost.com

POST A COMMENT

34 Comments:

Anonymous OracleDoc said....

In our profession the consequences of not asking “why?” could have catastrophic consequences. Just like your example with the table move. How much money would of it cost that company for every hour of down time? A simple “why?” and some research has the power to solve a plethora of potential problems.

If one doesn't ask "why?" if they are unsure of something, isn't that kind of like the blind leading the blind?

It's funny that you should bring this topic up. I'm the middle of a "why?" and "prove it" debate right now. When this debate is over will I not be the wiser no matter what the outcome?

Mon May 02, 08:05:00 AM EDT  

Blogger Connor McDonald said....

Unfortunately, having just done my (wait for it...drum roll) v7.3 => 8.0 OCP upgrade exam (my company have insisted that everyone get to 10g OCP...what a farce), I've just discovered that "why?" is never an answer when it comes to OCP questions...

All you get is "pick from the 5 of the most insipid, lame, pathetic options possible"...

I'm ranting because your 'how to reorg' question bears a remarkable similarity to one of the exam questions...

Sigh

Mon May 02, 08:45:00 AM EDT  

Anonymous Anonymous said....

Why not ?

Mon May 02, 08:51:00 AM EDT  

Anonymous Shawn Brockway said....

You can't not ask why. Someone goes to askTom and posts "How do I rebuild a table?". What they are really asking is "What is the best way to eliminate migrated rows?". You just don't know that until you ask "why?". Anytime I post to your forum I try to not only ask "How do I...?", but also include what I am trying to accomplish. If you don't know the end goal, there is know way you can help. You can only cause more damage.

Mon May 02, 09:13:00 AM EDT  

Blogger Jeff Hunter said....

"Why" is perhaps the single most important question that should be answered when dealing with Oracle. Too many "experts" in the field spew advice that people take for granted and implement without really understanding the implications or applicability to their own situation.

Mon May 02, 09:17:00 AM EDT  

Blogger Rachel said....

If you don't ask why, you end up with the "if all you have is a hammer, everything looks like a nail" scenario. Too simplistic an answer to a complicated question. I might phrase it differently though (what are you trying to accomplish? or what problem are you trying to solve?).

Mon May 02, 09:23:00 AM EDT  

Blogger Thomas Kyte said....

I might phrase it differently

I agree, I usually do - "why do you want to do that..." or "what is your goal, what are you trying to achieve"

"Why" is just so simple for a title :)

Mon May 02, 09:25:00 AM EDT  

Anonymous Anonymous said....

Tom,
The site you are using to host polls:
(1) has managed to pop up an advertising window in defiance of Mozilla's pop-up block
(2) the pop-up it pops is advertising "free smileys" - which in my experience install spyware 99.95% of the time when downloaded.

Just thought you should know.

sPh

Mon May 02, 09:54:00 AM EDT  

Blogger Thomas Kyte said....

The site you are using to host polls

Yeah, I know (i use mozilla as well). I never even looked at them, just closed them.

It is in this case a matter of getting what I paid for, I paid nothing.

I don't want to use asktom to host polls from the blog -- I want to keep them separate and distinct. If I like the polls enough (and I'm thinking I do), I can pay the small fee they ask for to get rid of the ads.

Thanks!

Mon May 02, 10:02:00 AM EDT  

Anonymous MojoMark said....

as a developer and with enough knowledge to be a dangerous Jr DBA, I get asked 'Why' by the DBA's a lot. Generally they phrase it just like that - "why?" - sometimes in a one word email, which I do feel is rude. If they come back and say "there are lots of ways to do that, tell me what you are trying to do" they get a much better response from me. Now I feel as if they are facilitating the solution, not just a gatekeeper. Sometimes I still have to give them a URL to AskTom.... I don't think they get out much.

Mon May 02, 11:43:00 AM EDT  

Blogger David Aldridge said....

This isn't to say that it's not possible to be rude when asking "why", of course ;)

I could think of several ways.

Mon May 02, 12:06:00 PM EDT  

Blogger Jan said....

Well, sometimes i dislike "why?" a lot...

Me: "Clean up your room.."
Kid: "Why?"

Me: "Unlace your shoes when you take them off!"
Kid: "Why?"

Me: "Don't turn on the TV when you know we're about to leave!"
Kid: "Why?"

But for the rest i agree with Tom :-)

jan

Mon May 02, 12:11:00 PM EDT  

Anonymous Rama Nalam said....

About the popups..
You can install Adblock extension for Firefox, which is the second most popular extension. Then import the filters from http://www.geocities.com/pierceive/adblock/

Asking why is very important, as there are many options available to do one task even doing that particular task is required. But, it should be cordial to the other person.

Mon May 02, 12:20:00 PM EDT  

Blogger R Menon said....

This one was easy (in that I
agree with what others have to say.)
But I think this poll is again
biased, no? You have given
your opinion (and you are very
much respected by all readers of
this blog barring a few (I guess
they are the 4%:)) before the poll is posted...

Mon May 02, 12:35:00 PM EDT  

Anonymous Justin said....

I feel very, very strongly about this. I always have, and the longer I support a userbase, the more I feel you have to. Too often do people say "I need privileges to change/delete this data." And when I find out why, it's because some other system or process isn't working as it should, so they are trying to work around it. We then go and fix the source of the problem.

But to respond to Jan, maybe it's because I don't have kids, but I think that parents and kids have a right to know the reasoning behind decisions, and can both benefit from the information exchange.

For instance, to use one of the examples:
Me: "Unlace your shoes when you take them off!"
Kid: "Why?"
Me: "Because not doing so will wear them out faster, cost more money, and take away resouces that need to be used for other things, like keeping you warm and safe and dry. Why do you not unlace your shoes?"
Kid: "Takes too much time."

Then you can go into a cost-benefit analysis and determine that yes indeed, untying your shoes is a good thing, and maybe your kid should slow down and enjoy life a little more. :-)

I don't have kids of my own (so yes, I'm not going to have the same viewpoint, obviously, and I don't have to put up with the incessant questions), but I usually will ask kids "why" when they say something. Sometimes the results are enlightening.

Mon May 02, 12:59:00 PM EDT  

Blogger Thomas Kyte said....

But I think this poll is again
biased


I said as much in the closing paragraph!

Mon May 02, 02:10:00 PM EDT  

Anonymous Simon said....

One of the good things with 'why' either when asked or you yourself are asking is the one answering has to think what he answers and sometimes finds the solution simply by telling the problem out loud. :)

I just love it when I'm explaining some problem what I have and figure it out when explaining it. So yes for why from here.

Mon May 02, 02:49:00 PM EDT  

Blogger Robert Vollman said....

How come "why" wasn't one of the choices in the poll?

Mon May 02, 05:59:00 PM EDT  

Anonymous Mr. Ed said....

The first time I ask someone, in person, "Why do you want to do that?", they get offended. It's probably instinct. But then I add, "It depends on a lot of things. I need more info." Then they usually feel better, and we talk.

In a forum, email, or instant message on the Internet, things don't work that way. You don't get the chance to immediately soften the blow.

It's not rude to ask "Why?", but people still get offended.

Mon May 02, 07:12:00 PM EDT  

Anonymous Marcio said....

Well, depends on a matter of "why" is said all about.

The problem here is we don't know each other, thus when someone read: why? It can be interpreted as

- rude WHY
or
- softly why

either, who knows?

Mon May 02, 08:40:00 PM EDT  

Blogger DaPi said....

e-mail, fora, blogs etc are informal media, yet display a very wide range of styles: from "u cn fwd msg 2 fred" to the beautiful prose of Howard Rogers.

U cnt object 2 a curt "Why?" if u leave out all the other letters. (should that be "Y?")

Better a curt "Why?" than nothing at all.

Agréez, Mesdames, Messieurs, l'expression de mes sentiments les plus distingués.
OR
Ciao.

Tue May 03, 02:33:00 AM EDT  

Blogger Niall said....

Well I'm going to agree with the poll results, and the general tone of comments here.

Asking why, in the sense of trying to determine what the objective is, sharing the problem and understanding the issues is just about the only way to be sure that you are offering good advice, in my opinion.

It also speaks about the curiosity of the questionner. I had a 4 year old nephew (he's now 7) who got into perpetually asking 'why'. I think I rather upset his parents when I told him to never stop asking that question ;) Now I have a 3 year old I can empathise with the parents better, but I still say that why is the most powerful question in the universe. (Closely followed by the basic scientific question of How?)

That doesn't mean of course that such a question can't be, like Chloe in 24 'inappropriately blunt'. Of course it can - and its more likely to be taken that way in an online discussion than face to face.

I believe the online discussion in fact to be a special case, because the necessity of determining what the reasons behind a request are is especially important, but conversely its probable that you know nothing of the efforts and skillset of the person asking the original question, if I've spent ten days trying to find out how to achieve a specific thing, the last thing I expect is some ignorant anonymous unknown to question the very basis of my last ten days of effort. Now just asking 'why' probably doesn't do that, but the way it is often stated 'you don't want to do that in Oracle you are probably thinking of some toy database' for example, most certainly does

One last thing. I hate getting 'Just a quick question Niall', because quick questions always require why? Slow questions where the background and reasons are set out to start with rarely do. So Why is good, long questions better.

Tue May 03, 04:19:00 AM EDT  

Blogger Alberto Dell'Era said....

Just beware that your replies on asktom (asking "why" or anything) quite often seem aggressive.

I know that you don't mean to be aggressive at all (at most you combat fiercely against the bad idea, not the person), but it took me a couple of months of navigation on asktom to figure it out ...

Tue May 03, 05:49:00 AM EDT  

Anonymous Anonymous said....

Asking "why" is fully legitimate and not rude at all - but it depends on way you ask it what might make it rude.

Tue May 03, 08:28:00 AM EDT  

Anonymous Jo Holvoet said....

LOL !
I took the poll and up pops an ad for ... a clairvoyant/psychic ! I guess if I employ her services I won't ever have to ask "Why ?" again :)

Tue May 03, 08:58:00 AM EDT  

Anonymous Pratap said....

How to "Question authority" - Without screwing up your appraisals?

Pratap

Tue May 03, 09:05:00 AM EDT  

Blogger Jeff Hunter said....


David Aldridge said....

I could think of several ways.


...like one of Dave's favorites, WTF?

Tue May 03, 09:07:00 AM EDT  

Anonymous Anonymous said....

Tom - I have a batch job that updates a datamart using SQL (Oracle 8.1.7). Sometimes there'll be a failure because the RBS isn't big enough. The DBA will say 'why don't you split tha transaction up into smaller updates?'. Should I say 'why don't you size the RBS appropriately, and why don't you use autoextend anyway?'. Problem is, if the DBA says 'why' it's okay, but if I say 'why' he takes the huff....

Tue May 03, 10:43:00 AM EDT  

Blogger Thomas Kyte said....

Just beware that your replies on asktom (asking "why" or anything) quite often seem aggressive.

Yeah, I gotta watch that sometimes. Many times it is unintentional. I know I've made some mad by saying "did you know about X" and they come back with basically "of course I did, what do you think I am, stupid". That is the problem with a pure text based medium -- no way to judge who is on the other side, what they do or do not know. And if not said carefully, can be read many different ways.

sometimes when I'm firing off 20 or 40 replies quick -- I'm very terse. And when I see something wrong -- I'll just say it. Someone called it Tom-Kyte-Bluntness once. Probably fits. I'll watch that more -- but it is hard to always say it unabigously (two people reading it could take it two different ways).

Probably why I despise 'SMS' speak on the forum, clarity and communication are important...

How to "Question authority"

Depends on the authority. When I was managing developers, they would get pinged if they didn't question the leads. No one knows it all, no one has all of the best ideas.

We all get blinded by what we know and it takes a constant "yeahbut" to keep us on track.

If you have an authority that cannot stand to be questioned in public, then (while looking for another project with a different lead :), do it in private -- with compelling evidence, in a nice way.

Tue May 03, 12:26:00 PM EDT  

Blogger Howard J. Rogers said....

I think it depends on who is asking the 'Why', sometimes.

I have just had to re-locate the Dizwell Forum, and the site I moved it to gives me a web address full of "?" and "=" signs. Normally, I like to do server-side re-directs, so a dizwell menu item links to a page on my site, but a re-direct then immediately kicks in and the visitor transparently gets shunted to the forum. There are very good, well-defined and clearly-explained W3C guidelines for why this is the right way to do things, and anyone in the business of website management, or HTML coding, would know that.

But the re-direct breaks when the URL contains "?" and "=" signs. So I asked the new site for some technical help: 'How do I get server-side redirects working with this sort of URL'. And the answer came back 'Why? Why not just use the HTML META tag to do "normal" HTML redirects?"

That particuklar "why" was not appreciated, because it is informed throughout with crass ignorance about W3C guidelines and web usability principles. A why from you regarding a 'How do I make Oracle do this' is rather different, of course.

So I'm not sure there is a philosophical one-word answer to your poll. I'm afraid it's actually a case of the usual answer in these sorts of circumstances: it all depends!

Tue May 03, 06:06:00 PM EDT  

Anonymous Anonymous said....

I have found that if you don't ask why carefully you can anger members of your team. I find that alot of Oracle people will just go 'why'. Get an explanation and go 'why' again. Then do it again...

That is rather obnoxious. I have found that alot of developers feel like they are being talked down to and that the DBA is an 'obstructionist'.

I think you should direct the why questions to be more specific and to use some tact. Add comments when you ask the questions so that its more like a banter than you questioning the person.

It's also important to assure the person that you believe he/she is competent and you just want to learn more about what is going on.

This is far more effective. I have seen DBAs completely alienate themselves from the development team to the point where people avoid them at all costs.

Ryan

Wed May 04, 09:03:00 AM EDT  

Anonymous Anonymous said....

Ryan,

Let me give you the other side of the story as a DBA that has probably alienated a few developers in my day.

I work in a large environment with a lot of DBA support duties. I don’t have time to teach developers how to do their job - especially developers that are hired as contractors with (supposedly) 10 years of experience.

Personally, I always try my best to be friendly and approachable to the developers. Believe me, it makes my life a lot easier to be on friendly terms with a developer than not. However, when developers ignore my polite requests to correct their code or for an explanation for a totally unreasonable request, I’m left with no choice but to play hard ball. In the few times that a developer has raised an issue about DBA support to management, the developer has come out on the losing side.

The bottom line: it is my job to manage the databases. If I did everything developers asked me to do, our environment would be an unmanageable mess. That’s not going to happen on my watch.

Thu May 05, 02:59:00 PM EDT  

Blogger haohaori said....

免费游戏下载 免费电影
单机游戏下载

Sun Jan 21, 05:33:00 PM EST  

Anonymous Xenofon said....

I totally understand your argument. If I also would need further information, I would my discussion partner know it. But it is not about what you say, but about how you say it...
You could say "It depends..." and concretely ask for the details you need. Your partner will then probably try to provide the additional information. But if you answer with "why?", you kind of behave as if you were his boss... Should he excuse himself for asking?

Personally I think, asking is always better than not asking. So accept even a fool question and try to help. What if they would not ask you, but google some "solution" from the net and implement it, without understanding what they are doing? So asking you, is the best thing they can do and they deserve an encouragement for doing so.

Fri Jul 16, 06:35:00 AM EDT  

POST A COMMENT

<< Home