Your low standards don't represent an engineering failure on my partWhat is it that makes you uncomfortable deploying at 5pm on a Friday? Let's talk about that.
In response to what I wrote yesterday, I got an interesting response on LinkedIn, which I want to take a moment to respond to:
Releasing at 5pm friday evening and leaving for the weekend is totally irresponsible. Somebody with that attitude would have a very short career under my watch.
I can understand this view. And on some systems, it certainly would be totally irresponsible.
But if we’re in the business of engineering reliable systems, there’s no reason we can’t build a system that’s reliable enough to deploy at 5pm on a Friday. Or at 3am on a Tuesday. Or any other random time.
The same person went on to say:
No system is reliable enough to pull irresponsible stunts like that.
I’m sure he doesn’t actually believe this. At least I hope not.
Imagine living your life where every system you use requires babysitting after making a change.
“Sure you can borrow my car. But I just put gas in, so let me drive it for an hour before I give you the keys, just to make sure it doesn’t break.”
“We just installed the new bed from IKEA, but don’t sleep on it yet! We need to let it sit for a week to make sure it doesn’t fall apart before we use it.”
“I just washed the dishes, but don’t eat anything yet. We need to test the dishes to make sure they’re safe.”
“But software systems are different” you might say.
Are they? Why? What makes them different?
What, specifically is it about your system that makes you uncomfortable deploying at 5pm on a Friday? Let’s talk about that thing, rather than making overly-broad generalizations and assumptions about all (computer?) systems being unreliable.
So to the gentleman who made that comment, I have this to say: Just becuase every computer system you work on is unreliable doesn’t mean they all are. Your unfortunate experience, perhaps compounded by low quality standards, does not constitute an engineering failure on my part.