I’ve made a huge mistake.

(Arrested Development, anyone?)

About a month ago I realized I was not learning what I wanted to be. Or should be. So I switched programming languages/frameworks. Again.

I thought Ruby on Rails was the way to go … But then, after months of learning, I decided to switch gears and focus on JavaScript along with Meteor. (And I am glad I switched.)

Of course, I wish I would have made the transition sooner. A lot sooner.

Here are my three biggest regrets since I started teaching myself how to code about a year and a half ago.

1. Given up Ruby on Rails sooner.

Before I embarked on learning Ruby on Rails (RoR), I spent over three months learning the fundamentals of programming with Python. I decided to make the transition to Ruby when I decided to try to build my own web apps. And Rails seemed like a better fit than Django.

There were many reasons why RoR was better for me than Python and Django. It’s too much to get into now. But the switch at that time was wise.

What I wish I did differently, though, was try Meteor sooner.

I first learned about Meteor in early September 2014, after already working through Ruby on Rails tutorials and building my own mini web apps for some time.

I heard how great Meteor was from one person. And then another person. And another. And so on.

Everyone was talking about the awesomeness of Meteor.

I was dying to give it a try. But no. I was stubborn. Actually, I feared I would love it, too. And then give up once again. But this time on RoR instead on Python.

And guess what? When I finally sat down and worked through the official Meteor tutorial, I was giddy. I loved it. I thought Meteor was so freaking cool. I wanted to share it with the world!

But instead of going with my emotions and spending the rest of the day looking at Meteor, I let my pride get the best of me. I didn’t want to be a quitter. I didn’t want to abandon yet another programming language for something else.

So I stuck with RoR a bit longer. Big mistake.

It’s sort of similar to dating someone new. (Or a long-time significant other if you’re lucky!) If you’re losing track of time when you are with that person (or learning that language) — that’s a good thing. Embrace it.

When I finally gave in to what I was longing for all along, and got the Discover Meteor book, I went through it in less than a week. That says a lot — and, yes, I lost track of time as I learned Meteor.

In the end, I wish I would have gone with my gut and given up on RoR sooner. And instead chased after the feeling I had when I read through Meteor tutorials. (God … As nerdy as that sounds…)

2. Not letting one bad experience scare me away.

This sounds like it contradicts the first point, I know. But let me explain.

Over a year ago I took a two day JavaScript workshop. And I freaking hated it. The teacher was boring, I felt confused by the end of the first day, and by the second day I was miserably lost.

I let one bad workshop experience affect my perception of JavaScript. Big mistake.

As a result, I hid from JavaScript. I did not do anymore JavaScript courses or read any JavaScript based books — that is, until I decided to give up on RoR.

For one whole year I avoided JavaScript. That’s more than half of the time I have even been coding!!

All because one teacher explained JavaScript in a way I did not understand.

The lesson here is: Don’t let one tutorial or course or workshop frustrate you to the point of giving up.

I still cannot believe I let a two day workshop make me hate JavaScript. WHYYYY!?!?!

3. Look at job descriptions of dream jobs, at dream companies

This is probably my biggest regret.

It is so obvious. But I didn’t begin to analyze dream job postings until about six weeks ago. (Here I mean full-time jobs, not listings on Craigslist or freelancer.com or what have you.)

Even if you never apply to said jobs (which I haven’t, yet), find ones that sound appealing and then compare the listed skills desired to your current skill set.

Then, use these job postings as guidelines to direct next steps in learning.

Once I began looking at job listings for front end developers (and regular web developers), I noticed how every single one mentioned JavaScript in some way. My initial reaction was, “I’m screwed.”

After about 30 minutes of sulking, I signed up for Treehouse and completed one of their Intro to JavaScript classes in a few days.

The lesson? Find “dream jobs” at “dream companies” and see how you match up. For me, all my dream jobs involved JavaScript in some way — not Ruby on Rails.

Which further instilled the fact that I should make a switch. (Which, of course, I did.)

———

So please, I beg you, if you’re just starting out as a self-taught coder — don’t make the same mistakes I did.

Moreover, if you do pivot (like I did) — it’s okay. As long as you’re pivoting towards something you enjoy.

(… And ideally something with job opportunities.)