JavaScript Everywhere

Over the past week or so I’ve really been diving into JavaScript to get a deeper understanding of the underlying language (not just jQuery). What I’m realizing, and what prompted me to actually write this, is that Node is clean, unfiltered awesomeness.

I had been contemplating diving into Ruby for a long time. I’m currently actually auditing a course on Ruby. But once I fired up Node most of that motivation to learn a new back-end language went out the window. The thing is, I really enjoy doing stuff in the terminal and writing scripts that will do things for me. Automation, as we say. This has prompted me to learn a significant amount of bash scripting (used for Z shell of course), but that has it’s own limitations, and it was never really designed to be good at many of the things I would want to do from the terminal.

PHP works as a scripting language, and it’s already my go-to language for development, but the lack of well known PHP shell scripts made me wary. Whereas Ruby and Python both have a ton of excellent scripts under their belt, PHP just never seems to have caught on outside of server-side scripting. This may be changing, as Composer makes it abundantly clear that one can do awesome things with PHP on the command line, but I still wanted something different.

Enter Node.js

I won’t go into the specifics of what it is or does, there’s a whole internet out there that will provide that information. Suffice to say, Node let’s you run JavaScript without a browser. For many developers these days, this means running it on a server. In my case however, this means running it in the terminal.

JavaScript is Everywhere Now

JavaScript was already making waves before Node, but only as a front-end language that allowed developers to do awesome things in a browser. Still, we then had to send any information back to the server for ‘serious’ processing or storing to a database.

What Node has done, is freed JS from the confines of the browser. By adding allowing it to be used on a server or in a terminal it now has what it needs to truly become ubiquitous. This is all in addition to an emerging trend:

Compile Anything to JS

Today we have things like CoffeeScript and TypeScript as well as an array of tools for compiling probably anything you would care to develop with to JS. These include compilers for C#, Java, Python, C/C++, etc.

It’s crazy, it’s awesome and even if there are now more ways than ever to create JS without actually writing it, it’s still an amazingly exciting time to be a JavaScript developer.