It’s Not Too Late to Learn to Code (Or Do Anything, For That Matter)

forblog

(I originally posted this on the Huffington Post‘s blogging platform.)

For the past year or so, I felt like I had been missing out.

Maybe the problem was that I didn’t know how to code. My friends were working on interesting projects that I couldn’t be a part of because I didn’t have the skills, I couldn’t even make basic changes to my own organization’s website, and I felt crippled in a world where many up-and-coming ideas were articulated in a completely different language.

How were others innovating in fields that I didn’t know anything about? What could I do to build skills if I wanted to create more than just hardware going forward? Although I dreaded the idea of sitting in front of a computer drowning in code all day, I signed up anyway to be an apprentice this summer at the Software Craftsmanship Guild, a 12-week program teaching the .NET framework in Akron, Ohio, because I wanted to become more tech literate.

Little did I know that the Guild would mark the beginning of my passionate and sinusoidal love affair with programming. Of course, it wasn’t easy – we had a rocky start during the initial 16-hour workdays of writing – and then deleting – thousands of lines of code, as I resisted the urge to throw my laptop out the window. But, after a while, the logical process of writing out action steps for a computer to follow didn’t seem so intimidating anymore. Over the course of just a few weeks, I found myself needing less and less help from my mentor as I became more competent at architecting simple applications and debugging on my own. It grew easier to apply my knowledge of building games (like Tic Tac Toe and Wheel of Fortune) as C# console applications and creating SQL data models to building professional web applications in ASP.NET MVC4.

Empowered that I could now use software to solve problems in my everyday life, I built an application that would automatically select a dining hall at my university with the best food for the me based on my dietary preference (paleo) by filtering out certain menu items. To allow other students to use it as well, the DHall Picker was expanded to include other popular diets such as vegetarian, vegan, and gluten-free.

Some nights, I would stare at my screen in disbelief. Did I really just build that all by myself? I couldn’t even write a single line of code a few weeks ago! The fact that programming was unexpectedly intuitive to me led me to realize that the problem all along was not that I didn’t know how to code, but more that I was afraid I wouldn’t be smart enough to learn.

That fear in the past had caused me to dismiss software engineering as a potential career path. Like most young people who think we have ourselves figured out, I was – and likely will continue to be – completely clueless about what I want and what I am capable of. Although I came into the Guild looking to learn about a technical subject, I came away with a boost in my self-confidence: I am smarter than I thought I was, and I will be an awesome inventor one day.

Now that I know the basics, my ability to self-study other programming concepts will allow me to engage in meaningful work not limited to hardware. For example, one of our SunSaluter partners in Uganda and I are exploring the idea of customizing an SMS platform for nurses to log data at their maternity clinic. And I could even make my Dad a birthday website!

I’m sharing my story now because I want others to know that even though they may feel like they are falling behind, it’s not too late to pick up any skill and change one’s perception of what they should be doing with their life. Today, I might be building a dining hall picker, but who knows what I could be creating tomorrow?

[Special thanks to Janine Chan, Anand Gupta and Chloe Fan for reviewing early drafts of this!]