One thing that helped me really get this one is testing software upgrades. It’s insanely tedious. Most stuff just keeps working. But if you don’t test, you’re just asking for something to come back and bite you in the backside.
e.g. recent work example: upgrading Tomcat 6.0.16 to 6.0.29. Minor point release from the Apache Software Foundation, computer scientists famous for their dedication to engineering stability. I so didn’t want to bother testing this at all—days and days of tedium. Then this bit us—someone decided the letter of the spec beat mountains of real-world code in a stable branch maintenance release. And it’s in mountains of real-world code because of this. My opinion of Apache slipped somewhat. But my systems stayed up.
I still hate lining up testing, but a few of these and you start to expand your map of chances large enough to mess you up. Sysadmins know that computers are evil and out to get them, and that the only way around this is not to give them the opportunity.
A friend of mine has a similar story involving why he never allows code-changes after code freeze dates, even if X, even if Y, even if Z. His story, however, involves avatars in a video game sorting their layers in strange ways on obscure video cards to cause breastplates to unexpectedly sort below breasts, which is why I still remember it.
It’s like backups or freedom 0. Approximately no-one gets it until they’ve been bitten in real life. (I am particularly bad at learning without direct application of forehead to concrete, but am attempting to think more clearly.)
One thing that helped me really get this one is testing software upgrades. It’s insanely tedious. Most stuff just keeps working. But if you don’t test, you’re just asking for something to come back and bite you in the backside.
e.g. recent work example: upgrading Tomcat 6.0.16 to 6.0.29. Minor point release from the Apache Software Foundation, computer scientists famous for their dedication to engineering stability. I so didn’t want to bother testing this at all—days and days of tedium. Then this bit us—someone decided the letter of the spec beat mountains of real-world code in a stable branch maintenance release. And it’s in mountains of real-world code because of this. My opinion of Apache slipped somewhat. But my systems stayed up.
I still hate lining up testing, but a few of these and you start to expand your map of chances large enough to mess you up. Sysadmins know that computers are evil and out to get them, and that the only way around this is not to give them the opportunity.
A friend of mine has a similar story involving why he never allows code-changes after code freeze dates, even if X, even if Y, even if Z. His story, however, involves avatars in a video game sorting their layers in strange ways on obscure video cards to cause breastplates to unexpectedly sort below breasts, which is why I still remember it.
It’s like backups or freedom 0. Approximately no-one gets it until they’ve been bitten in real life. (I am particularly bad at learning without direct application of forehead to concrete, but am attempting to think more clearly.)