The medieval version
A man was walking on a path. He saw a rope lying on ground. He also saw a sign saying “Pick up this rope since you will need it soon”. Man was “too busy” shining his glasses, so he wouldn’t to pick up the rope. He just left it there. One hour later the man was facing a problem: there was a stone wall blocking his path, with a sign saying “hope you got your rope”.
Well, the man didn’t have the rope. He was too busy picking it up.
So, the man followed his own track and went back to the rope, picked it up and returned to the stone wall. Then he used rope to climb over it.
End of story.
The look-what-I-did-yesterday version
I experienced a bug in my code. It was few days old code. Code that I knew when I wrote it that “I really should do this part better, but I just leave it like this for now since ‘I’m too busy'”.
Well, yesterday I made some changes and experienced this weird bug. My game kept restarting itself over and over no matter what I did. After tedious debugging session, I found out that I had left code that chose to “reload game data in case of error”. This was merely a “temporal solution” and I knew I would need to re-do that part later.
Well, thanks to that quick error handling code I was experiencing this weird “restart” bug which I eventually managed to solve by getting rid of the bad code.
I knew the code would come back and haunt me. Why did I code it? I knew it was bad piece of code. I knew I should have done it better. Yet, I didn’t.
Next time I’m picking up the rope.