On Learning New Programming Languages

Posted October 22, 2016

Here’s something I know about myself: I learn best when I’m forced to. Usually this will require a situation at work, or within a side project that has me saying to myself, “Welp, I need to learn this to complete the project, so here goes.” This is the strongest way for me to progress and learn, when I have a hard goal to work towards. Unfortunately those situations are often difficult to just conjure up when you have the desire to learn. Admittedly, I’m not the best at thinking up side projects that are both within my means and challenging/rewarding at the same time.

A recent example has been my desire to learn React. I did a few tutorials, watched YouTube videos, and studied pre-written code, but at the end of the day I couldn’t write any React myself. I just couldn’t wrap my head all the way around it, and it was really frustrating. Sure I had read the docs and done some simple tutorials, but in the end it wasn’t what I needed. Ultimately it was react-native that did it for me, which was totally unexpected. I had an idea for a small app that would give me a good introduction and the react-native cli starts you off with just the right amount of code as to not do everything for you. I made the app, got it on my iPhone, and finally (!) something clicked and I understand React (at least the core concepts).

An example of an ideal situation was presented to me at work, where I was asked to rewrite a good chunk of a Ruby on Rails application. I have literally zero experience with Ruby, but this was perfect! After two weeks of Googling and flipping through some textbooks I can write some Ruby, and have an understanding of how Rails apps work. Maybe once the project is done I’ll be able to put Ruby/Rails on my resume (at a lower skill level). It really is a fast track to success for me.

This, I have realized, is contributing to the importance of learning how to learn. Once you can understand what works best for you, and use those situations as often as possible, your knowledge will skyrocket.

Back To Blog