in reply to An irrational coding choice found
Have you ever made a coding choice that later you can not rationalize?
All the time, until I started using version control and reviewing my choices on a weekly , even daily basis ( refactoring ).
Its like when you first start writing code, you end up with 10-20 line if-blocks, 3-5-8 indentation levels deep, and it feels very comfortable because its all very fresh in your mind.
It's not until you're forced to revisit that code a year later that you realize how difficult it is to read, and start turning each long if-block (or indentation level ) into a function (refactoring).
schwern has a slideshow about this skimmable code where he tackles refactoring WWW::Mechanize
There is also a shorter version of the skimmable code talk, in the longer version he subliminally introduces Method::Signatures