August 1, 2015 at 12:05 am
Comments posted to this topic are about the item But we've always done it that way…
"The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
- Theodore Roosevelt
Author of:
SQL Server Execution Plans
SQL Server Query Performance Tuning
August 1, 2015 at 1:03 am
the five monkeys experiment
http://www.mannkal.org/downloads/rspt/monkies.pdf
________________________________________________________________
you can lead a user to data....but you cannot make them think
and remember....every day is a school day
August 3, 2015 at 7:02 am
I love that you chose the trusty old NOLOCK hint as an example. I started work at a particular organisation many years ago and found the God-like NOLOCKs reverently placed against every table in every query. I'd never seen this behaviour before, so I just had to ask why. The dismissively authoritative answer (from the manager, no less) was "If you don't, it breaks replication". Wait... what? This didn't sound quite right to me. But I was new and this guy was the manager. I spoke to another newcomer (a DBA with some pretty good chops) and he raised his eyebrows. We did some googling and the respected SQL Server bloggers all seemed to be saying "first fix your query" before worrying about NOLOCK. It was the queries that were "breaking replication" (causing locking and blocking). The NOLOCK was (at best) treating the symptom, not the cause.
The bigger problem was that try as we might, we couldn't convince the manager to stop using NOLOCK hints (and writing queries so bad that they needed them). It became a petty professional jealousy thing. Any argument, article, or metric, was met with stonewalling like "Well that's just a matter of opinion", and "there's probably just as many articles arguing the other way." Essentially he was saying "I'm the manager and I'm not going to be told how to do my job by a couple of Johnny-Come-Latelies".
In our case the "...we've always done it that way…" became entrenched for utterly irrational reasons (hubris) and became exceedingly hard to shift. I hear they're still repairing the damage today.
...One of the symptoms of an approaching nervous breakdown is the belief that ones work is terribly important.... Bertrand Russell
August 3, 2015 at 7:19 am
I've run into the same type of thing over and over (especially, for some reason NOLOCK, it becomes a magical talisman somehow). There are no easy solutions once people get fixated on poor or weak practices. Education is the key, but, some people actively refuse education.
"The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
- Theodore Roosevelt
Author of:
SQL Server Execution Plans
SQL Server Query Performance Tuning
August 3, 2015 at 7:46 am
Grant Fritchey (8/1/2015)
Comments posted to this topic are about the item <A HREF="/articles/Editorial/129741/">But we've always done it that way…</A>
That's my favorite example on the subject.
The only difference in real life is that the original set of 5 monkeys never get shot with a hose. They're just stupid and fell off the stairs because they didn't know what they were doing to begin with. 🙂
--Jeff Moden
Change is inevitable... Change for the better is not.
August 3, 2015 at 7:58 am
Many moons ago in the Web 1.0 boom, I inherited a reporting system that was so slow that the database connection was timing out. Turns out the programmers didn't study any SQL and created a double loop that compared every record in a table to every other record in the table instead of using a simple SELECT DISTINCT. Addition of that and the commenting out of their "code" fixed performance issues. And I was fired later that day for questioning "Senior Developers" "code".
I swear I can't make up 98% of the crazy stuff I saw back then or since... :blink:
August 3, 2015 at 8:05 am
I just left a position because I got tired of hearing "That's the way we always did it" AND 'We don't have time to do it right".
Together, those sentences said " We really don't care".
Well, neither do I!
Michael L John
If you assassinate a DBA, would you pull a trigger?
To properly post on a forum:
http://www.sqlservercentral.com/articles/61537/
August 3, 2015 at 8:09 am
Michael L John (8/3/2015)
I just left a position because I got tired of hearing "That's the way we always did it" AND 'We don't have time to do it right".Together, those sentences said " We really don't care".
Well, neither do I!
I can't begin to tell you how many times I have been asked if I can make some development deadlines faster. My typical response is something like "Sure I can shave off a couple of weeks and push this out the door. No problem. When can I schedule the four weeks in the future that will be needed for me to fix it so it will continue to work?". I am almost always allowed the freedom to do it correctly. My favorite phrase on that topic is "Do you want it right, or do you want it right now?". 😀
_______________________________________________________________
Need help? Help us help you.
Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.
Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.
Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/
August 3, 2015 at 8:21 am
Sean Lange (8/3/2015)
Michael L John (8/3/2015)
I just left a position because I got tired of hearing "That's the way we always did it" AND 'We don't have time to do it right".Together, those sentences said " We really don't care".
Well, neither do I!
I can't begin to tell you how many times I have been asked if I can make some development deadlines faster. My typical response is something like "Sure I can shave off a couple of weeks and push this out the door. No problem. When can I schedule the four weeks in the future that will be needed for me to fix it so it will continue to work?". I am almost always allowed the freedom to do it correctly. My favorite phrase on that topic is "Do you want it right, or do you want it right now?". 😀
I've got some managers that will go for right now. Usually, I don't care what they say and do it right.
August 3, 2015 at 8:34 am
Luis Cazares (8/3/2015)
Sean Lange (8/3/2015)
Michael L John (8/3/2015)
I just left a position because I got tired of hearing "That's the way we always did it" AND 'We don't have time to do it right".Together, those sentences said " We really don't care".
Well, neither do I!
I can't begin to tell you how many times I have been asked if I can make some development deadlines faster. My typical response is something like "Sure I can shave off a couple of weeks and push this out the door. No problem. When can I schedule the four weeks in the future that will be needed for me to fix it so it will continue to work?". I am almost always allowed the freedom to do it correctly. My favorite phrase on that topic is "Do you want it right, or do you want it right now?". 😀
I've got some managers that will go for right now. Usually, I don't care what they say and do it right.
We have some of those too. I make them sign an agreement that they want the code as fast as possible and if there are bugs in the code or it doesn't do exactly what they want then the fix is a low priority. I tell them I don't mind putting it out for them but I will not do overtime or drop everything to fix it when it isn't right because I said I know it isn't right from the beginning. Not many of them will agree to it but some of them have...until I had to prove that it is a low priority fix. The situation has improved incredibly over the last few years around here. They have all started to realize that I really won't go the extra mile when corners are cut at the beginning.
As somebody's tagline around here reads "Your failure to plan does not constitute an emergency on my part". Or as they say in the Army "proper prior planning precludes piss poor performance".
_______________________________________________________________
Need help? Help us help you.
Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.
Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.
Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/
August 3, 2015 at 8:40 am
Fast/Cheap/Correct: choose two. And we shouldn't question established IT orthodoxy: look what happened to Galileo!
Wellington also had the advantage of having the gentleman English magician Jonathan Strange, at least according to a recent documentary that I saw on the subject. 😛
We had planned to go to Waterloo for the anniversary, but me getting a job and the observatory rescheduling both shutdown and new instrument commissioning pretty well bollixed up those plans, so instead we took a river cruise from Prague to Berlin. Three days in Dresden and a week in Berlin more than made up for not getting to Waterloo.
-----
[font="Arial"]Knowledge is of two kinds. We know a subject ourselves or we know where we can find information upon it. --Samuel Johnson[/font]
August 3, 2015 at 8:45 am
But we've always done it that way…
Often times organizations will worship at the alter of process without focussing on how that process relates to outcomes. Instead, however, process should be seen as a set of tools for repeating success. We should never blindly follow the footsteps of past failure. If you're the new DBA, and the previous DBA was terminated, then you should question everything regarding the process and best practices that you've inherited. Otherwise you're just setting yourself up to be cannon fodder.
"Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho
August 3, 2015 at 8:47 am
Wayne West (8/3/2015)
Wellington also had the advantage of having the gentleman English magician Jonathan Strange, at least according to a recent documentary that I saw on the subject. 😛
Is he related in any way to Doctor Stephen Vincent Strange?
August 3, 2015 at 8:53 am
Sean Lange (8/3/2015)
Luis Cazares (8/3/2015)
Sean Lange (8/3/2015)
Michael L John (8/3/2015)
I just left a position because I got tired of hearing "That's the way we always did it" AND 'We don't have time to do it right".Together, those sentences said " We really don't care".
Well, neither do I!
I can't begin to tell you how many times I have been asked if I can make some development deadlines faster. My typical response is something like "Sure I can shave off a couple of weeks and push this out the door. No problem. When can I schedule the four weeks in the future that will be needed for me to fix it so it will continue to work?". I am almost always allowed the freedom to do it correctly. My favorite phrase on that topic is "Do you want it right, or do you want it right now?". 😀
I've got some managers that will go for right now. Usually, I don't care what they say and do it right.
We have some of those too. I make them sign an agreement that they want the code as fast as possible and if there are bugs in the code or it doesn't do exactly what they want then the fix is a low priority. I tell them I don't mind putting it out for them but I will not do overtime or drop everything to fix it when it isn't right because I said I know it isn't right from the beginning. Not many of them will agree to it but some of them have...until I had to prove that it is a low priority fix. The situation has improved incredibly over the last few years around here. They have all started to realize that I really won't go the extra mile when corners are cut at the beginning.
As somebody's tagline around here reads "Your failure to plan does not constitute an emergency on my part". Or as they say in the Army "proper prior planning precludes piss poor performance".
I used to work for a director who often said: "We never seem to have the time to do it right, but we have no problem finding the time to do it twice."
For best practices on asking questions, please read the following article: Forum Etiquette: How to post data/code on a forum to get the best help[/url]
August 3, 2015 at 8:55 am
Hmm... what's fun is when good processes get built around bad processes and then the bad processes can't be fixed without redoing a lot more things.
Viewing 15 posts - 1 through 15 (of 35 total)
You must be logged in to reply to this topic. Login to reply