Jonathan Lewis' recent blog post, entitled Nothing Changed, got me to thinking about how frequently I hear "nothing changed" in relation to a performance issue. I really do think those are quotable (and laughable) famous last words. Think about it: if everything was the same, it's not possible for something to change, right?
A query plan doesn't change without reason. Response time doesn't change without reason. In general terms, it's rare that nothing ever changes. So, instead of immediately asking "why" and claiming "nothing changed", I think it'd be much more productive to start asking "what changed?".
When we insist on believing nothing changed, we limit our options of what could have happened. We close off our creativity. We limit our mind's ability to pursue possibilities.
I think one of the best skills a good performance analyst has is the ability to see lots of options. And, I think that the reason why people, like Jonathan Lewis, Tom Kyte, Cary Millsap, and many others, are so good at what they do is that they always stay open to many possibilities. Skill and knowledge is certainly important, but the ability to look at many alternatives and not get stuck demanding that things must be "just so" is just as critical.
In the end, those who continue demanding "nothing changed" might find the famous last words of composer Ludwig van Beethoven most fitting: "Friends applaud, the comedy is finished."
Showing posts with label mistakes. Show all posts
Showing posts with label mistakes. Show all posts
Wednesday, June 4, 2008
Wednesday, May 28, 2008
Mistakes

I've often learned more from my mistakes than my successes. And, I've also felt more pride in myself when I've persevered through several failed attempts when I finally got it right.
So many times I see people unwilling to try something outside their comfort zone (myself included), because they're afraid of failure. When I'm on customer site, I'll often see people afraid to try new things (code changes, adding an index, etc.) even when they have proof provided to them of how doing something different can/will improve things. They're afraid to try even when the odds look very much in their favor.
Why do we fear the attempt so much? Do we think we'll lose our jobs, our good reputation, or even our anonymity? Do we just want to fly under the radar and do enough to get by and not call attention to ourselves, neither good nor bad?
I'm not suggesting to run willy-nilly making unthinking mistakes when it counts over and over. Make mistakes when you test. Make mistakes as you invent. Make mistakes on the way to the finish line. Taking time to do it right the first time includes the time it takes to make mistakes. Mistakes now are less costly than mistakes that are found later. There may well be things that are "mistakes", like a performance problem with a piece of code that didn't show up until it got used under heavy load. But, if you've done your job upfront, you'll have included a way to diagnose those issues quickly if/when they do occur (i.e. code instrumentation). If you've done that, you've built in your safety net for "if" something does go wrong.
I was reminded by this quote that it's not bad to make a mistake. Mistakes help bridge the gap between inexperience and wisdom. I often feel like I'm on a v-e-r-y long bridge, but the journey, and the view, are certainly beautiful.
Subscribe to:
Posts (Atom)

