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 KernighanC is a razor-sharp tool, with which one can create an elegant and efficient program or a bloody mess.
Brian Kernighan