This is why I love Haskell. Dealing with the type system and purely functional style forces you to think about the problem at hand before you do anything.
There was some Mixergy interview where the guy at IMVU or somewhere was saying that it was trendy to measure progress the Agile way, by lines of code written, whereas it was more accurate a metric to measure progress by learning.
Great post, resonates with my reply here:<p><a href="http://news.ycombinator.com/item?id=1334915" rel="nofollow">http://news.ycombinator.com/item?id=1334915</a>