I cringe whenever I hear a programmer say that a code fix will only take “2 minutes”. Because I know they’re setting themselves up for disappointment. Because it never takes 2 minutes. Nothing takes 2 minutes. Even 2 Minute Noodles don’t take 2 minutes.
By the way, if you don’t know what they are, 2 Minute Noodles are an iconic Aussie instant noodle snack/meal. From what I’ve heard on TV shows I think they’re similar to what Americans call “Ramen” noodles. This post should in no way be viewed as a criticism of 2 Minute Noodles. I heartily endorse 2 Minute Noodles.
As much as I love 2 Minute Noodles, I’m constantly disappointed by how long they take to make. I reality, making 2 Minute Noodles takes 5 to 10 minutes. Don’t believe me, just look at the instructions.
Sure, it only takes 2 minutes to boil the noodles, but that’s only one of the steps. The other steps all take time too. Just boiling water takes 3 minutes!
2 Minute Noodles are exactly how programmers think. Our default position is to quote time based on how long we imagine ourselves coding. But coding is just one small part of our job. Think about all the other work we have to do. Work like reading requirements, discussing our solution, creating branches, asking for reviews, writing tests, deploying, and fixing new bugs we just introduced. On some teams, even the smallest possible code change will probably take a few hours of work.
The problem is that when you find yourself 1 hour in to a fix you said would take 2 minutes, you feel really bad. You feel pressure to hurry up, you feel like you’ve failed and you worry that everyone will be disappointed. That’s why I made this rule, as a reminder for myself to not forget about all of the non-coding work I have to do.
The 2 Minute Noodle Rule — Remember, there are a lot more steps than just boiling the noodles.
When you use the 2 Minute Noodle Rule you’ll feel good. You’ll feel relaxed, happy and accomplished. You’ll say a code fix will take 1 hour and then most of the time it will actually take 1 hour. And in the weird wild world of software development, that’s amazing.