I came to software engineering in a very roundabout way. Fitting the stereotype of a smart but utterly directionless young man, I had a myriad of jobs ranging from managing a music store to being a mime in Eastern Europe. I did very technical work on fire alarm panels for a security company, and rather less technical work traveling with a carnival, and even started a successful event-planning company at one point.

When I married and settled down, it was with some reluctance that I decided to study computers, and I chose it for the wholly cynical reason that I knew a friend who had done it and it seemed like a fairly quick way to shift into a more stable career. To my great surprise, however, I absolutely love this work! As a naturally curious and analytical person, I found a passion for programming that I have never had for any other job.

I love to see how things function underneath, and this work gives me a window not only into how computers work but also how the human mind does. For instance, early in my learning I was challenged to write a program that finds the peaks in an array (the highest numbers surrounded by lower ones) and I realized that while I could do this quite easily as a human glancing at a list, I couldn’t really explain how I was doing it. To solve the problem, first I figured out how my own brain was able to find these peaks so quickly, then I wrote my algorithm based on that.

In programming, my goal is to not just be someone who uses tools, but someone who truly understands how they work, and that will be the main thrust of my posts here. If you’d like to talk, if you think we might have something to teach each other, or if you might want my help on a project, please do hit the contact button and let me know.