My first career aspiration was to be a baseball player. I came of age while Ryne Sandberg was earning his way into the Hall of Fame, and I dreamed of being second baseman for the Cubs.
My second idea was to be a writer. I’ve never been particularly verbose, but in fifth grade, I remember spending hours on a story that I was writing for school, and I really enjoyed it.
My third idea was to be a computer graphics programmer. It was fueled by the toy programs I wrote on Commodore 64s and my family’s 286, and Jurassic Park really ignited this desire. In high school, I gave a presentation in English class on how to program, and brought in the family C64 to demonstrate. The computer graphics angle morphed into general researchy computing, and led to my current businessy software job. I still dream of getting into something that deals with high performance computing, but I’m pretty happy doing Ruby on Rails development, with some .NET sprinkled here and there.
I’ve been a practicing software developer for about eight years. My biggest professional leap came about five years ago when I was working very closely with a guy who was about two years further into his career. His code reviews, and the ideas he was putting into white-paper form captured my interest. He introduced me to new practices and patterns, as well as patterns and practices that I had fallen into (and appreciated having a name and set form for) and that I had only a nominal familiarity with. One of the key moments for me was when I realized that reviewing and editing prose is very similar to reviewing and editing code. A part of my brain that had been mostly dormant at work engaged, and I’ve been a much better developer since that moment.
I’ve been thinking about starting a technical blog on a public network (i.e. not just on a private server at work) for a while. I have another blog, but I mostly just grouse there. Before this week, I wasn’t sure how much I’d be able to contribute to the community, and whether it would be worthwhile to start a blog. This week (and really, for the past 6 months or so), I’ve started seeing how the things I’m doing are applicable more broadly than on my projects. I’m hopeful that having this blog will help me to think about the problems I’m solving in a way that’s more generally applicable so that I can share my solutions.
I also realized this morning that this could be a good combination of job aspirations 2 and 3 — writing about software. I’ve been interested in doing more writing (not necessarily software-related), so I’ll start by writing about something that I know pretty well.
Maybe someday I’ll become a modern-day Charles Dickens.