Little Steps

Hmm, Ruby and Ruby on Rails breaks into so many branches, I can learn testing, I can learn threading, I can learn metaprogramming. So many books to read too. There is Practicing Rails, Rebuilding Rails and even Practical Object Oriented Design in Ruby. And I haven’t even fnished the Pickaxe book yet!

But, Javascript is really important! I need to learn the MEAN stack and fast! I also heard that ES6 is coming up soon, I gotta learn that as well. My CSS sucks, I have no front end skill. I can barely make a website desktop responsive, never mind mobile responsive. My frontend skills need levelling up, NOW.

I read an article that “Real Men Code in C”. C is the mother tounge of programming. I can’t call myself a programmer if I don’t know C. And whats this functional programming thing I keep hearing about? Haskell makes you smarter? Erlang is good for concurrency? 

Thats an accurate transcript of what goes on in my head when I’m trying to decide what to learn next. A few months ago I started allocating “learning time” a few hours a week to learn something new. This noble activity usually ends up with me web surfing something totally unrelated. Usually some obscure thing I found on Hacker News.

I admit its partly because I have focusing issues that date back to childhood. But its also because I have a fear of “missing out”. When I first started this web developer gig, I kept reading how “5 years from now, everything you know will be obsolete” or “You must be continuosly learning”. I guess that spooked me into thinking I wasn’t learning things fast enough and that I should be mastering more complex (i.e incomprehensible) subjects. I have this weird habit where if the subject is so hard that I’m lost after the first paragraph, then I think it MUST be useful

After realizing that I’ve clocked about 50 “learning time” hours and haven’t actually learned anything, I’ve started to reassess my choice of topics. Instead of looking a one big topic like CONCURRENCY, I now try to master little topics. like maybe how partials work in Rails. I also liked the technique taught in Practicing Rails. The Tiny Apps method, where you create a tiny app to try new gems or a new feature first. Its awesome when you can test something out almost immediately. Especially for someone like me who can get distracted by literally anything.

I guess the point is to break everything into the smallest piece possible. Don’t make grand plans to study everything about Javascript for two hours, focus on sitting down to learn one specific thing for 10 minutes. I usually find myself pushing forward after those ten minutes to learn something else although there were plenty of times where I immediately stopped to do something else. Thats fine though, getting 10 minutes of learning time a day is 10 minutes more than I got previously.

 Don’t worry about getting good now, take your time. Small steady progress is better than giant steps that end up not happening . As a wise man once said, “How do you eat an elephant? One bite at a time”


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s