The Fallacy of Premature Optimization (2009)
Rich Hickey has a succinct quote that reveals the abuse that Hoare&#x27;s &quot;premature optimization&quot; quote has undergone:  <i>the cheapest place to fix bugs is in design.</i><p>And if we&#x27;re going to proceed by quotation, another one to consider is Linus Torvalds&#x27;:  <i>Bad programmers worry about the code. Good programmers worry about data structures and their relationships.</i><p>IMHO, a big thing for junior programmers to unlearn is that one should begin by putting a sloppy version of the program in production, and incrementally improve it thereafter.  A little bit of forethought and a bit of attention paid to big-O will do three things:  (1) make incremental improvement easier (2) limit the amount of incremental improvement needed, and (3) avoid painting you into a corner wherein significant refactors are needed.<p>As it turns out, thinking ahead of time is not antithetical to shipping code.  Quite the contrary.