I tend to follow my hunches. Reading a job post by Doug Boutwell sparked a little voice inside me to say, “Write this guy.” So I dashed off an email and this morning we talked on the phone.
Turns out, Doug’s looking for software engineers to help take his collection of totally rad Photoshop actions to the next level. Doug asked me what kinds of programming I liked to do, and I mentioned that I like implementing algorithms.
Now I’d just got done with thirty minutes of wacky brain training yoga before my call with Doug. So when I got off the phone, bits and pieces started to click.
Childhood memories
If you really want to figure out what you should do in life, go back and look at what you did as a kid. Dig through your memories. What you’re looking for is the thing that sustained you. You’re eight years old, and it’s a sunny summer afternoon. What are you doing?
I’m building something out of LEGOs.
Those little colored bricks where a window to another world. I had pirates that raided coastal forts, space lanes filled with intergalactic shipping freighters, and garbage trucks that plucked bean bags off my floor. But it wasn’t the stories that I was drawn to. In fact, as soon as I found a story for one of my creations, I’d pull it apart and build something new.
What I loved was putting the pieces together.
Delight was found in collecting disparate parts into a working model, and watching something from my imagination become real. Even today, that’s the kind of work that sustains me.
Creating software
Before you can go off and create something, you have to know what all the pieces are. The first thing you do with a LEGO kit is open up all the little baggies and follow the included instructions to create a model. The software equivalent is implementing algorithms from technical papers. It’s something I do for fun, because that’s how I learn how the different parts fit together.
The real joy in a LEGO kit comes after you’ve but the included model. Because then you know what all the pieces are and how they work together. Then you can let your imagination run wild and create something new. In the software world, that manifests as the creation of something like digital Dance of Shiva. Math and graphics and design all blend together to form something the world’s never seen before.
As a software engineer, I love orchestrating the creation of digital things. The best part is when I get to be part of a team, working with other people to transform the basic building blocks of sounds and graphics and algorithms into something new.





