Sunday, August 6, 2017

A Brief History of Mistakes


The other day, my boss Steve1 asked me about a ticket I had written a long time ago.  Was the problem I had reported still a problem, he wondered?  Well, yes, technically speaking, it was still a problem, I responded, but not a very big problem.  After all these years, we’ve mostly worked around the minor pains-in-the-ass it causes.  And while it could cause a bigger problem, and in fact had just done so no more than two weeks ago, the truth is, as I said to him, somewhat tongue-in-cheek:

That blip was the first one in forever, and, try as I might, I couldn’t get Arya2 to be worried about missing an entire day in his reports.


Now, some hours after I sent this, as I am wont to do, I started wondering about my own choice of words there.  I made it sound like I had actually put some effort into trying to convince Arya that the problem was significant, even though the most likely person to be impacted by it was him, and he was obviously not worried about it.  Not to mention that, if he did decide to do something about it, the something he would do is make a ticket for me to fix it.  So whatever effort I was putting into this argument was only going to end up making work for myself if I “won.”  And yet, it sounds like I put some effort into this argument because ... I actually did.  So, now I wondered: why?

And thus we begin what I suppose is now part 4 of my ad hoc series, “Why I’m a Pain in the Ass at Work.”  Last time I briefly reviewed the first two installments, then went on to recast my being a stubborn ass in as positive a light as I could manage, which mainly consisted of pointing out that I’m trying to keep from making—and/or trying to help someone else avoid making—some mistake that I’ve already made once and don’t have any desire to repeat.  And, unlike last installment, I’m not going to say today that I think there’s more to it than that.  On the contrary, I think I might have nailed it down pretty thoroughly at this point.

What I was pondering that led to today’s post, instead, was why sometimes (as in all 3 of the incidents that spawned the previous posts) I seem like I can’t let it go, and will go overboard in my objections, whereas sometimes (such as with this particular incident) I put up a token resistance, but then I cave pretty easily.  I mean, either way, it’s a mistake that I’ve seen happen before, right?  Either way, to let it happen again is going to be frustrating ... right?

Well, after much pondering and soul-searching, I’ve come up with an answer.  I wish I could tell you that I thought that, when people have this reaction, they base the intensity of their argument on their assessment of how much damage the mistake could cause, or perhaps on the likelihood of that mistake actually happening (is it nearly guaranteed, or a longshot that anything will ever go wrong?).  I do wish that were the case.  But I don’t believe it is.  I believe that rather it depends on whether you were the one who had to clean up the mess or not.

See, I’m not the only person who has these types of reactions.  Oh, sure: I’m probably the biggest pain-in-the-ass at my current job, I won’t try to deny that.3  But I am, occasionally, believe it or not, on the other side of this debate.  I am, occasionally, the one who’s saying, “yeah, okay, maybe that could happen, but that doesn’t sound so bad.”  Where this most often comes up, for instance, is with two of my co-workers who are very focussed on security.4  They’re always trying to convince me that we should implement this or that piece of authentication that I’ve no doubt will leave us safer, but which will probably be a big hairy annoyance to me in the meantime.  And, sure, I nearly always lose these debates,5 and nowadays my ssh key has a more-than-40-character passphrase, and my hard drive is encrypted, and I’m about to start undergoing the horror that is Multi-Factor Authentication.  But, still, whenever the topic comes up, I’m nearly always the one going, “I hear you about what could happen, but I’m finding it hard to get too worried about that.”  And it’s certainly not because I’ve never seen inferior security measures fail.  And I’m pretty sure it’s not because doing it the “right” way is going to make more work for me: I’ve argued to the death for making more work for myself on many an occasion.  Nope, I’m pretty sure that it’s because, whenever I have seen such things, it was never my job to clean up the inevitable mess.

Contrariwise, when it’s a question of making a sub-par design decision, I get very invested in making sure we don’t go down a road that is going to cause us heartache one day, because in that case “us” inevitably means “me.”  And, even if it doesn’t mean me in the future, it certainly has in the past.  I’ve seen the crap that can fall out of one bad choice, and I’ve had to go in there years later and try to figure out how to undo it.  And those are painful memories.  And, as far as I’m concerned, these are things that will happen, eventually.6  So it’s not a question of “if” but rather “when.”  I distinctly remember one such discussion, which happened to also include my boss.  He seemed genuinely puzzled at my passion for whatever particular design principle was at stake.  Intellectually, I believe he knew that what I was predicting could happen—maybe even he knew it was likely to happen.  It just didn’t seem that big a deal to him if it did, and I bet that’s because he just never drew that short straw of having to wade into the cesspool and shovel out the shit.  And, in the end, I let that particular point go because I was pretty sure that, whenever the shit hit the fan, the fan was most likely going to be pointing at someone else anyway.7

And, in the situation that spurred this post, I also knew that it was probably pretty unlikely that I personally would be responsible for the clean-up.  This was really only going to go wrong if the particular day that was missing from reporting—and, really: not even missing from all of reporting, just missing from one subset of reports—happened to contain a significant number of results from one customer, or maybe a set of customers, and therefore the lack of those results would significantly alter an aggregated view (likely a monthly one) in a way that was big enough to make a (business) difference, but small enough not to be glaringly obvious that data was missing, and if the report went through enough hands that the numbers were used to make some wrong decision, or sent the business off on a wild-goose chase involving many employees and lots of wasted time, but not so many hands that someone along the line didn’t remember that, hey, didn’t someone say there was a whole day missing somewhere?  And damn, that’s a lot of “if"s.  And, if anyone comes to me about it, I get to point out that I already told everyone I could imagine to watch out for this, and the worst that can happen is that someone makes a ticket for me to fix it, which is honestly what I was sort of pushing for in the first place.  So, you know: no skin off my nose.

So, yeah, I did try a little bit to convince Arya that he should be worried about a missing day in his reports, because if the worst case happened, I would feel bad for him (’cause he’s a genuinely good guy, and I love working with him, and I hate to see him stressed), but, no, I didn’t try that hard, ’cause, in the end, Arya gets to make his own decisions (and his own mistakes), and I can’t make ’em for him.  But maybe also because—just maybe—not only am I pretty sure that I won’t have to clean up the mess in this situation, but I’ve never had to clean up the mess in any past, similar situation.  And I’ve seen some.  Ignoring reporting data glitches will nearly always come back to bite you in the ass, sometimes in small ways, sometimes in big ones.  But it’s never been something I’ve personally had deal with.  Never have I personally been the one who had roll up their sleeves, muttering non-stop profanities under their breath, throwing all their current plans and schedule out the window, and start doing shit-work to clean up all that fertilizer that just passed through the oscillating air distribution device.

And I’m trying to figure out if that makes me a bad person.

I hope not.  I hope that I’m just a person who, like pretty much all people, is subject to confirmation bias (or maybe some other kind of bias; Wikipedia cautiously suggests correspondence bias), and that sometimes I’m on the receiving end, and sometimes I’m on the other end.  Maybe understanding that will help me handle these situations a little intelligently, and hopefully a little more diplomatically.

Or maybe I’m just fooling myself again.  But either way I found it an interesting meditation.



__________

1 Okay, Steve is technically my boss’s boss.  But I don’t usually think of him that way.

2 Arya is the head of the business analyst department, and the person on the business side that I work most closely with.

3 Yep, and probably the biggest pain at my last several jobs.  I can own that too.

4 One of whom is my actual boss, and the other of whom is our sysadmin.

5 Did I mention that one of the other parties was my boss?

6 Well, unless the code doesn’t last that long.  But I don’t accept that as a useful counterargument; that’s pretty much like saying “it’s okay if we build a completely flimsy house, because there’s a decent chance we’ll tear it down before it gets the chance to fall over.”  Which is cold comfort if you’re the one who has to live in the house in the meantime.

7 Interesting side note: the co-worker who was most likely to have said fan pointing at him has since left the company.  So now I suppose I’m back in the running for most-likeliy-to-be-spattered.  Lovely.