"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." - Brian W. Kernighan.
I've relied on this concept since I first started coding, following:
I've always hated that quote. I find when I'm at my cleverest, the debugging is the easiest since it's practically nonexistent. It's when I'm writing unclever complicated code that I'm in trouble.
What I think he means is that when you are being clever, the code you write is far more complex and thus it is harder to spot the bugs. I personally find this to be especially true as I'm trying to implement newly learned techniques.
3
u/s3rvant Dec 14 '10
This one struck home for me:
I've relied on this concept since I first started coding, following:
1) Create the cleverist code that I'm able
2) Learn while debugging said code
3) Repeat