Universal truths

There's a difference between movies and real life. And IT doesn't live up to the Hollywood hype.

There are certain universal truths that we all have to face.  And even though movies, TV, and magazines would have us think otherwise, these things just cannot be changed.  The coolest toys on TV are always crap when you get them.  Supermodels have cellulite.  When people have sex they don't get up and put clothes on before falling asleep together.  That cute girl delivering your pizza isn't going to rip her clothes off and attack you.  And most importantly, moving a process from one box to another isn't seamless. 

Movies will have you believe that if you're really good at what you do, you can account for everything when moving a process to a new box.  Things they run on their test systems in movies always run perfectly when they hack into the real server and run them.  They never take longer, and they never get deadlocked, or come across something they weren't expecting.  Everything always goes according to plan.  Hell, in movies you can even hack into an alien system and plant a virus on the mothership without any knowledge of their language, platform, or anything else.  And of course, you can do it with the compilers we have on our planet.

Of course we know it doesn't really happen like that.  No matter how dynamic you make your scripts something can always come up.  No matter how many different ways you test there can always be snags.  Your production process can get deadlocked, blocked, or otherwise fail for some miscellaneous reason.  And the more servers that are involved the more unknown factors there will be. 

As I'm sitting here now implementing a well-tested, and very high profile replication scenario, and getting errors, it makes me long for the ominous movie score in the background that tells me something's about to go wrong.  Now, the errors I'm getting are nothing to be concerned about, but it still outlines the differences between test and prod systems. 

The trick is to mitigate the issues you can do something about.  There are types of errors that are acceptable and those that aren't.  The big question is could it have been prevented, and what's the ultimate impact?  Is it an unknown driver issue that's causing it to behave differently, or did you leave out an important line of code?  Is there something you had to do to get it working in test but didn't change it back on prod or did someone change prod without telling you between your tests?

Everyone makes mistakes, but careless issues time and time again show apathy for your work.  If you can't do consistent work across all environments then maybe you need to be doing something else.  I see this a lot everywhere I go.  People just making stupid mistakes that they have no business making.  I talked about this on my webshow a while back where a viewer sent me in his yearly downtime report and 20% of their downtimes were caused by inattention to detail.  And that's completely unacceptable.

Sure, I've made dumb mistakes before; we all have.  The question is how often do you do it?  Once in a long while is ok, but when it's a regular occurrence then something's wrong.  Make notes to yourself as you change things.  Don't rely on remembering to go back and change them.  Write down the steps you followed to get something working.  Write them down as you do them.  This way if you stumble upon the proper way you don't have to try to remember what you did.  These are just simple things you can do to keep from making ridiculous errors.  Don't write scripts that have a single value hardcoded in 100 different spots.  Make it a parameter that can be changed in a single place. 

And most importantly, if you keep making these mistakes, then maybe IT isn't for you.  Perhaps you'd be happier doing something else, because you clearly don't want to be here now do you?  So while the movies will tell us that things are simple enough to just work, it takes great attention to detail and an actual wanting to do it. 

Join the Network World communities on Facebook and LinkedIn to comment on topics that are top of mind.

Copyright © 2011 IDG Communications, Inc.