The Oedipus Dev Complex: Debugging Our Own Mistakes

A somewhat facetious post, but it occurred to me the other day. I will be clear that software developers don’t (generally) murder their father and marry their mother. Actually, neither did Oedipus knowingly do that.

Oedipus was the mythical riddle solver, he had razor sharp intelligence and used it for the betterment of his kingdom.

One day, a plague struck the kingdom and as he was a good king, he immediately sent for the advise of the Delphic Oracle and summoned the local wise man and seer to discover the cause.

“You must banish the impurity from the land,” was the answer given by the Oracle.

“You won’t like the answer,” responded the seer.

Oedipus was relentless and he interviewed everybody, slowly drawing in the source of the impurity. He drew close to the solution and feared the worst – fearing for a moment that it was he who killed the old king.

He crowed in triumph, only to have his victory crushed moments later by the incontrovertible evidence of his own ears: he had killed his father, whom he’d thrown off the mountain for being rude to him and who turned out to be the old king, and he’d been rewarded for solving the riddle of the Sphynx by being asked to marry the newly windowed wife of the old king … ie his own mother!


So why are developers like Oedipus?

Well, very often, somebody discovers a bug. Often its in a very old piece of code, a section that nobody has touched for a while; it could be months or years since anybody last looked at it.

We set up our environments, we run tests, we eliminate the things that it cannot be, we isolate the issue, we discover the offending line and exclaim:

Which idiot wrote that?!

We look into the history of the file and, Lo! I was the last person to edit this particular bit of code.


Discover more from Eunuchorn

Subscribe to get the latest posts sent to your email.

Leave a comment