I, programmer

I, Robot
I, Robot - Digital Domain

Today my brother-in-law asked for advice on whether he should fill a general elective with an introduction to computer programming course. I admit, I’m a bit biased towards the subject considering that I spend around 45 hours a week programming professionally in addition to another 5-10 hours on my own personal programming projects. But, I wouldn’t spend this much of my time on something I didn’t think was worthwhile. Why do I devote so much of my time staring at a computer making pixels dance how I want them to?

Computer Problems
Computer Problems - XKCD

I love to solve problems, and programming is all about solving problems. Little problems, big problems, weird problems, ordinary problems I love them all. Why do I love problems? Because every problem is an opportunity, an invitation to learn, to conquer, and to make the world a better place. The transition between knowing something is wrong to finishing a solution is sublime.

In order to solve problems, programming forces you to analyze, design, and implement systems. To me, this process is the perfect blend of art and science. Plus, ability to build, tear down, and rebuild entire systems at a small cost is probably the best part about computer systems.

Like most people, I enjoy shiny, new things. If you don’t spend quite as much time as I do on Hacker News you may not realize just how insane the rate new ideas/languages/libraries/frameworks develop in the world of computers.

Where did this passion for programming start? An introduction to programming class I took in my freshman year of college. It took a few more years for me to figure out that I wanted to make a career out of programming but I finally got there and have yet to regret a moment.

Now, my brother-in-law is an economics major and has enjoyed creating some complex spreadsheets and macros. So when he wanted to know if he should take a class in programming I couldn’t say yes fast enough.

 
0
Kudos
 
0
Kudos

Now read this

Interfaces in Python

In the middle of building a web app template with the Tornado web framework I started thinking about how I was including a lot of code dealing with database access in my controller classes. The code is still in a prototype/proof of... Continue →