Episodic Genius

occurring occasionally and at irregular intervals


I’m not a writer nor a genius. Even so, I’ve been getting the itch recently to write this blog. Partially, the reason is so that I can remember what it is that I am passionate about.

I was going over some old code today that I wrote about four years ago to dust it off and get it running again. The code was written in C++. I was surprised at the style that I used in this code. I would have written it much differently now. Coincidentally, I found my coworkers talking about coding style and I told them a little bit about this code and the style that I used. I went for a walk and got to thinking about how I’ve changed over time and realized that I’m better in many ways but that I’ve lost or forgotten some of who I was a few years ago.

I have been fortunate to have some ideas over the past decade or so that I would call genius. I have not taken the time necessary to fully explore the potential of any of these ideas and they usually get forgotten. I’d like to change that.

I’m working on a new project that I started during the year. It is a side project and only gets a limited amount of my time but I believe that it can become something more. It draws on much of the experience that I’ve had as a software developer and incorporates many of the things for which I’m very passionate. It also embraces the idea of computing in the cloud and applies it in an area where I’ve seen very little real advancement during my career. I guess you could say that I’m setting off to change the world for the better with this project. Hey, why not think big?

Scalability, responsiveness and security will be very important in this project. These are a few of my my passions. I’ve been guilty of spending a little too much time tweaking personal websites using the latest caching techniques so that when I get two visitors all in the same day they get the fastest possible experience. Expect to hear more from me on this subject.

I’ll list a few concepts for which I’m very passionate; it might help to set the tone for my blog. I’m a software engineer by trade. I get excited about software architecture, scalability, caching, algorithms and data structures. I believe strongly that I should write testable code and then take the time to write tests for nearly everything that I write. I also take great interest in the software development process: revision control, building, test automation, regression and the release process. I get heavily involved in the process wherever I am working. I like making processes easier to use, more robust and repeatable.

After we talked about coding style today at the office, we talked about our passion for engineering. Someone asked me if we suddenly hit it big and made a lot of money whether I would still do this. I didn’t have to give this any thought. I knew the answer and gave it to her before she could finish the question. Yes, if I was all set financially and had the freedom to do anything that I wanted with my time, I would still use a significant portion of it creating something in software. I can’t put it down.