Why I’m learning to program

Today I stared my first day of Code Academy here in Chicago. It’s a 12 week program meant to teach computer science fundamentals, web applications, Ruby on Rails and introduce you to agile. I’m excited as we have great instructors and some of the top Rails talent in Chicago serving as mentors. Wish me luck!

I came across this post by Edward Castano on why he’s learning to program and found I agree with a lot of it.

From Edward’s Blog:

“For the love of learning.  I enjoy learning new things.  Even more, I like understanding how things work.  A little bit of tech knowledge goes a long way.  For instance, I was able to customize this Posterous blog using the HTML and CSS that I know.

To bootstrap.  I should note I’ll never be the main developer for my company and don’t ever expect to be a 10x programmer.   However, it’s ridiculously difficult to find and recruit talented developers in this frothy environment.  Maybe I can learn enough to build my own prototype and use that to recruit a team.  Once my team is in place, they can throw away my old code and start from scratch.

For R-E-S-P-E-C-T.  One of the most valuable things I learned at business school is that in order to be influential, you need to be influencible.  Well, learning how to program shows respect for the work of developers.   In exchange, this might just earn me some respect from developers.   Learning any language (spoken or computer) serves as a signal to others that I give a damn.   I care enough to put in the immense effort required to learn the language.  When my wife and I were traveling around the world, the first thing we did before we got to a new country was learn two words in the local language, “hello”, and “thank you”.   These two simple words transformed us from “tourist” to “guests”.  You’ll be surprised at just how few tourists bother to even learn how to say “hello” in the language of their host country.  In this sense, immersing myself in technology is a gesture of humility to my future teammates.  I don’t just expect you to speak my language; I’m willing to learn your language, too.  This brings me to the next benefit…

For the obvious.  Speaking the same language as another person dramatically helps with…hold your breath…communication!  :)   This applies equally well to technology as to spoken language.  Today, I can have a conversation with a developer that goes beyond simple concepts.   I can now discuss the tradeoffs of straight HMTL/CSS vs. HAML/SASS  or ask whether our web app should be built using Ruby on Rails or Node.js

For hiring purposes.  Whether I find a technical co-founder or hire a CTO, I now know what to look for in a good developer.  Should I ever need to hire a team of developers, or outsource a project, I have a much better idea of what to look for and how to work with them.

For the challenge.  I love a good challenge and building a web application from scratch is tough as nails.  I’ve done more difficult things in my life, so why not this? 

Because I can.  Through the course of my journey I’ve learned of other business people that have successfully learned how to program.  Proof that it is possible!  Here are a few examples.  Do you know of others?”

Wish me luck into full geekery!