When and how did you originally become interested in technology?
I really got interested in technology when the World Wide Web started to bloom around 1995 or so. I became obsessed with the full stack of the web – web pages, web servers, etc. I wanted to understand all of it. I had a knack for UI and I really enjoyed maintaining some personal web pages in college. When I saw something on the web that I didn’t know how to do, I had to learn how to do it.
At what age did you write your first computer program? What did it do?
Age 12 – it was an Apple IIe program that played a basic musical sequence through the computer speaker.
What do you do now? What languages are you proficient in?
How have you increased your skillset over the years, formally or otherwise?
I learn best through hands-on building and continuously building prototypes in my spare time. I keep myself informed of technologies and trends in a variety of ways such as reading blogs and tech-heavy news sites, and attending local user groups and tech events. I also blog on my own site about what I learn. Programming is a craft, and you have to practice it to get better (rather than just reading books or going to a class).
Which do you prefer in programming, the struggle or the achievement?
I like the struggle! I really love being in the thick of things, working with team members, continuously learning, and being in the zone while figuring out a new problem. The achievement is always elusive; it is hard to ever be truly “done” with something.
What people, groups, projects, or resources were most influential in your development as programmer?
I think every person who was more skilled or experienced than me was an influence – whether they were a project team member, a manager, a blogger, or a presenter at a conference. They motivated me to learn more because I wanted to be as skilled or as experienced as they were. I wanted to understand what they knew. I got a little influence from everybody; there is no one person that I could credit.
I spent seven years as a consultant at a company called Inetium (now called Avtex) – and I think my skill and experience as a developer grew exponentially during my time there because of the challenging projects and other very skilled co-workers.
I also recall that the book Planning Extreme Programming (by Fowler and Beck) completely blew my mind when I read it.
What do you enjoy about it? Is there anything you dislike?
I enjoy software development because there is no shortage of things to learn. I love being thrown into a completely unknown technology or environment and having to learn and become productive with it. I get stir-crazy when I stay in my comfort zone.
I also love building and creating. I’m a maker at heart, and I like starting with that blank canvas and creating something new.
What I dislike about programming is having to keep up with the “technology treadmill”. As a consultant/freelancer, there is some added pressure to have to keep on top of things. Sometimes I can’t get enough of it, but other times I need to unplug, recharge, and get away from tech for a little while.
If you were to be doing anything else, what might that be?
My academic background is Industrial Engineering, so I could see myself getting back into a manufacturing environment as an engineer. I also have a musical background and dabble in electronic music production, so a career in audio or music performance would be fun and extremely challenging. Right now I’d choose to be a starving live-coding artist/performer.
Where do you spend most of your time online?
Hacker News, reading blogs, instant messaging, tech chat rooms, Soundcloud, Rdio, and in gmail.
What concerns you most about where technology is headed?
I’m no security or privacy expert, but I’m a little concerned about data privacy and all those useful, free services out there that have so much data about us. I’m also concerned that we’re using technology more for creating meaningless entertainment rather than solve real problems in the world.
What excites you most about where technology is headed?
Technology is becoming a norm in every aspect of our lives. This will continue to push what we need out of our programming languages, environments, and tools. As the world starts to accept these new norms, there will be more demand to keep doing new things. Ten years from now, I cannot imagine what new things we’ll be building. It will never stop being exciting!
Is there anything else you would like to add?
I’d like to mention that I’m helping build a community of Live Coders in the Twin Cities. Live Coding is live, improvised music and visuals performed with programming languages. It is a very unique form of art and performance and it blurs some lines about music and programming. Instead of writing code as infrastructure to support an app, live coders write code that is in itself the focus. I’m interested in hearing from other programmers interested in helping build this community.