“Hi, I’m Alan Temaficoni. I’m here for my interview for the software engineer position.”
“Take a seat.”
The interviewer set Al a challenge: to identify the purpose of a snippet of program code. Al took one look at it and recognized it as some flavour of ‘c’, though, being not entirely familiar with that language, he wasn’t sure which. After considering the code’s structure, his first thought was that it might be instructions to accept an input string and reverse it, using recursion.
Unfortunately, Al had never fully grokked how recursion worked. He was fond of saying that the dictionary definition of recursion should read, ‘recursion (n): see recursion’. Naturally, this thought popped into his head right then, but he dismissed it quickly: he was on a timescale here. Not wanting to give his prospective employer his first impression of what he thought the code might do, in case it was the wrong answer, he began trying to work through an example to confirm that the code actually did what he thought it did.
As the minutes ticked by, Al began to sweat. Try as he might, he couldn’t get his head around it – and, of course, that made the task even more intractable.
“Time’s up.”
Al looked up at his tormentor, confident of just one thing: that the fear in his eyes would be evident. “I think it takes a string and reverses it using recursion,” he managed to stumble out.
“Absolutely right. What took you so long?”
As he tried to explain that it had actually been his first thought, but he wanted to check so that he didn’t give a wrong answer, and he was more familiar with ADA than c, and recursion had always been his nemesis, Al realized that he was beginning to babble incoherently.
The interviewer raised a hand, and offered some advice:
Never let ‘perfect’ be the enemy of ‘good enough’.
Al didn’t get that job.
Al was working against the clock to finish up a project. He’d been toiling at it all weekend and was short of sleep. Though the essential guts of the task were complete, a few loose ends and inconsistencies remained.
Al yawned and stretched. Then it struck him: these issues were relatively trivial; they might never even be noticed. And then the memory of the advice he’d been given in that interview years before wafted into his head.
Never let ‘perfect’ be the enemy of ‘good enough’.
He finished up his summary report using that phrase to excuse any remaining flaws. It was the last thing he wrote before hitting the sack.
Upon waking the following morning, Al was reminded that our brains don’t stop working even when we’re asleep. Forefront in his mind was the (somewhat ironic) thought that, although he’d congratulated himself the night before on having found what could be considered an acceptable resolution to the ‘almost-but-not-quite-complete’ conundrum he’d faced, in the cool light of the morning, the choice struck him as being more than a little disingenuous.
He needed a better answer, but he was out of time. The project deadline was that morning; Al had no choice but to submit it. Fortunately, his mind had worked on the riddle overnight, and it offered him a solution. He amended the closing words of the summary report, adding:
… uh, no, on second thoughts I can’t subscribe to that; it sounds to me like an excuse for sloppy work. Granted, perfection is an unrealistic goal; but if all we ever strive to achieve is just what’s good enough, and sit back on our laurels once we’ve accomplished that, not only is perfection out of reach, excellence is, too.
I think the motto I live by is:
Pursue excellence – but accept that you’re only human.
– Alan Temaficoni
Header image adapted from
‘silhouette photography of person‘
by Greg Rakozy on Unsplash
Yes.
LikeLiked by 1 person
Um. I take that to mean you agree; but, with what?
LikeLike
The motto. And I loved the story.
LikeLiked by 1 person
Why, thank you! :)
LikeLiked by 1 person
😊
LikeLike
For some reason, apropos of nothing, really, your post made me think of the story of a guy who went for an interview at a large IT firm to get a position of Chief Hacking inspector.
The boss asked him, “So, what makes you suitable for this job?”
“Well,” He replied, “I hacked into your computer and invited myself to this interview!”
LikeLiked by 3 people
Nice, like it :)
… so, did he get the job?
LikeLiked by 1 person
lol. He should have.
LikeLiked by 1 person
I do accept that I’m human, but I keep on pursuing excellence.
My brain doesn’t want to agree with the “Never let ‘perfect’ be the enemy of ‘good enough.'” Only last week, I was asked to complete a project I have not done before (new job and stuff). So, what did I do? I did it three different ways just to make sure that the result was the same. Well, it wasn’t. While the numbers were close, they were not exact. While I was given an explanation of why one way provided different results, we could not figure out why the other two did not agree, either. For all intents and purposes, an estimate was sufficient, but I did not feel good about the discrepancies. My boss shrugged it off. I think it was a perfect illustration of ‘good enough.’
LikeLiked by 1 person
Yes, that’s a great example. But I’m intrigued… and would suggest you pose a question about it on StackExchange, you might get an answer there.
Another would be transcendental numbers like π: for most purposes ’22/7′ or ‘3.1415926’ are ‘good enough’, calculating it to ‘perfection’ is impossible (though, true to form, homo fatuus brutus has been working on trying to do just that for 4000 years!)
(You’ve got a new job? Congratulations! Hope it’s going well, and, above all, that you’re enjoying it!)
LikeLike
‘It’s complicated’… is all I can say at this time. Hopefully by the end of the year things will sort themselves out. LOL
LikeLiked by 1 person
I apply this concept to approximately everything, give or take a little, by saying that all sentient beings are apprentice Buddhas.
However, I refuse to expand on the concept.
:)
LikeLiked by 1 person
Aww… I’d love to hear more. Presumably you mean you refuse to expand on it here on Wibble (pity, it’d be great if I could persuade you to do a guest post on the subject); but is it covered somewhere on Bobbing Around, or one of your books, perhaps?
LikeLike
Being human is far better than being perfect If we all were perfect there would be nothing to laugh at. I strive for excellence and laugh at my mistakes on the way up.
;;
;;
;;
Laugh everyday, It’s as necessary as food
LikeLike
The thought of a ‘perfect human’ fills me with dread. Though on the other hand, if there were such a creature, it would be a terrific source of amusement to the rest of us. :D
Mr. Ohh… I can’t recall whether I’ve introduced you to the Multiphasic Phlyarological University – I think you might find that chuckleful.
LikeLiked by 1 person
Thanks I will check it out 😃
LikeLiked by 1 person
I love this as good, solid life advice. But from my experience (which is scant to non-existent), the world of computer coding seems to demand absolute perfection and accepts nothing less.
LikeLiked by 1 person
My experience (which has involved a great deal of ‘computer coding’) indicates that your perception is incorrect. There is no ‘absolute perfection’ possible where humans are involved in designing it. I don’t blame the software engineers, myself: I’m sure many of them aspire to provide the best solution, but they are incapable of doing so when those who pay their wages say “that’s good enough (even though it’s not): let’s release it”: and the marketing department hypes the released ‘solution’ as though it’s the best thing since sliced bread (though, to anyone who can recognise it, it’s most definitely not). Go-faster-stripes and economic expediency have ruled the roost for far, far too long.
LikeLike