I love to read. In college, I had no social life for the first two years because I lived within walking distance of a 9-floor library. I always had a book in my pocket or in my hand, and read constantly. Sometimes I would read while walking to class. Then I got busy with college life, harder classes that required more coding and less reading. So reading became a hobby rather than an obsession.
After college, I took a job working on a large app written in C at a company 3000 miles from home. I had time to read again! Not only was there no homework, there was no social life, since it was a new town. I also had a bit of time to read at work while the app was building and tests were running.
After the C project, I moved onto a team doing Java. Now, in addition to the building/testing time for reading, I was forced to read! Everything I wanted to do required reading 2-3 javadoc pages, with a ‘choose your own adventure’ element. I would have an object of class
A@, and what I really needed was an object of class @B. Starting at the doc for each end, I would try different paths to get to the other end, often backtracking at dead ends.
Then I moved into web development, and started with good ole’ PHP. I lost a lot of the api adventure from Java and lost the build/test reading breaks (testing?). But I gained more time for reading! ‘How?’ you ask? Job security! The code I wrote lacked cohesion, followed few standards, and was unmaintainable by anyone else. I became an essential part of the organization, and could come and go as I pleased. So I read in the morning, came in late, read at lunch, and left early to read back at home.
And then it all went to shit. I started programming in ruby.
No more api reading – I would guess at method names, try them out in
irb, and be right most if the time. No more compile breaks. Testing? Yes, but with autotest, it was quick. I could barely find my place on the page before the tests were done. No more job security – I was writing code the ‘ruby way’, or the ‘rails way’, and any competent ruby/rails programmer could pick it up. So no more leaving early/arriving late. And coding was fun again! All those other languages felt too much like work. So no more reading at home either – just sitting in front of my laptop, hacking away on crap. Hell, I even started doing the opposite of reading; I started writing about ruby.
F you ruby.