Ryan Martinsen

On Being Dismissive of JavaScript

I started writing PHP in 2003. I wrote it full time until being moved to a new team at my job in June 2014. My new project had a back-end in Python (Django) and a front-end in JavaScript (Angular).

I was excited about the Python, but I had a lot of reservations about the JavaScript.

I loved jQuery when I discovered it in 2007. I don’t remember an exact moment when I stopped loving it, but when I did I decided all JavaScript was bad. Maybe it was working on (or creating) one too many large piles of spaghetti DOM manipulation. Perhaps it was dealing with old browsers. Whatever the cause, I decided I didn’t like JavaScript anymore. Death to JavaScript! Yay backend programming! Down with CSS, too, because this bandwagon is going places!

I doubled down on my dislike with every hot new JS framework I heard about. Backbone? Boo! Knockout? Hiss! Ember? Haha look how stupid this website looks when JavaScript is turned off!

But now I was going to be on a new team working on a project in Angular 1. I had to learn this stuff. Would I rage quit in a few weeks? Or would it provide me with so much snarky tweet material that it’d all be worth it in the end?

Here’s how I was feeling one month into this new project.

This was my way of saying that using a big JavaScript framework was the same as failing. Because how could you not notice? Portions of sites would load slowly or fail to load altogether. It all felt like a big step backwards.

By October I was beginning to toy with the idea that there might be something to this whole fancy front-end framework thing. It wasn’t my thing, but it’s maybe okay if it is for some people. Surely I’d move on and find a new job soon.

This tweet by Guy English couldn’t have come at a better time. It was a slap in the face. In a good way.

Crap.

I held no delusions that I was anywhere near the top of my field. I knew I wasn’t, but this was a very clear indicator that I had farther to go than imagined. I don’t think I was exclusionary, but I was most certainly dismissive of JavaScript, JavaScript frameworks, and the people who pushed for them.

I had known for months that I had two choices. I either needed to get better at JavaScript in spite of not liking it or get a back-end job and never touch the front-end again. Since I wasn’t about to quit—being 1 year short of my 3 year job goal—a new job wasn’t an option. It was time to take off the blinders and learn JavaScript for real.

Huge Blinders

While I didn’t go from disliking it all to loving it overnight, the decision I made in October 2014 made an immediate difference. Instead of being annoyed all the time I started enjoying the act of learning a lot more. I also began to see JavaScript and its frameworks not as gross hacks that sometimes break, but as incredible tools that push the boundaries of the web.

People are doing amazing things with JavaScript—things I never would have built or even dreamed of because I was too busy congratulating myself for being part of the crowd that hates JavaScript.

Yes, there are lots of real issues with JavaScript and JavaScript frameworks. Speed is still a major issue, for example.

But the issues are being solved. They’re being solved by people who care. Tools and frameworks are improving because of people who see potential where others only see failure. The dismissive people aren’t contributing anything.

I haven’t ever been very involved in the communities built around programming languages. I’ve only answered a few questions on Stack Overflow. I haven’t done much open source work. I honestly haven’t figured out how people find time for any of it, but I’m going to attempt to get involved more. I don’t know what form that will take (maybe blog posts), but I do know for sure that I’m tired of only consuming and critiquing.

JavaScript is easy to make fun of. So is PHP. And so is Visual Basic, the language I started on. I liked working in Python not because I felt it was a better language, but because I finally felt like I was using a respected language. That mattered to me.

But now?

I don’t care.

Worrying if people respect the language I use is silly and pointless.

You think JavaScript is dumb? Don’t like web development at all? That’s cool. It’s okay to not like things, but there’s no need to be a jerk about it. Been there, done that.

All hating and being dismissive of JavaScript ever did for me was slow me down.

I still catch myself being dismissive and overly critical of new or old technology and I almost always regret it. I don’t have to care about everything thing in existence, but I also don’t need to create reasons to dislike them.

Have you failed if you use a Javascript framework? No. Is being dismissive of a technology you haven’t bothered learning the same as failing? Yes.

Suggested reading:

Work, Mistakes, JavaScript, Angular
comments powered by Disqus