usable in any place a human can be used

20091013

the future: javascript

JavaScript is awesome. I'm going to say this unabashedly, there may be no language I love more than JavaScript. Truly cross platform, unique, glorious in its many ways, its lisp dressed up in C's clothing. Want to know about the origins of JavaScript, go watch Douglas Crockford's amazing talk or read his synopsis.

A lot of people get soured by JavaScript not because of any fault in the language but because of the horrible non-cross browser compatible DOM. John Resig of jQuery fame, now working for Mozilla, has a great talk about this.

I would like to declare today, in no uncertain terms that JavaScript is the future Would you care to disagree with me? That's nice, get your own blog, or leave a snarky comment, I intend to prove it.

JavaScript has been plagued with numerous problems in the past, buggy implementations, DOM nightmares, speed issues, and general abuse. But today we have a perfect storm of things occurring that mean that if you don't know JavaScript, start learning.

Thing the first: Google is producing a new operating system Chrome OS.

Speed, simplicity and security are the key aspects of Google Chrome OS. We're designing the OS to be fast and lightweight, to start up and get you onto the web in a few seconds. The user interface is minimal to stay out of your way, and most of the user experience takes place on the web.

You have the massive juggernaut saying that their OS is going to be web-centric. Along with the mindshare that has moved over to JavaScript for the web, this is going to push more of the best and brightest over to the JavaScript side. I have a sneaking suspicion that they will have an OS API in JavaScript, I base this off the fact that when Google last took to the desktop they did exactly that. This isn't JavaScript's first dance outside the browser, but with native support it might be the most important.

Thing the second: Speed. The big browser makers are in a shooting war speed wise, and we are all winners. Native code compilation, more horsepower, and pure competition have led to a wide array of speed improvements. All signs point to this only getting better, people are attacking the problem from all angles, and as these solutions combine, all the while Moore's Law keeps on running, we are looking at outrageous speed for JavaScript execution.

Thing the third: JavaScript is actually a really awesome language. Things that people are going crazy about in other languages, JavaScript has had from the outset. Let's see:

  • Closures... check!
  • First class functions... check!
  • Regex literals... check!
  • Huge ecosystem... check!
  • Objects... check!
  • Consistent comprehensible object notation... check!

When it get's down to it, JavaScript is a great language. It has a ton of exposure, and a huge amount of developer mindshare. JavaScript isn't going away anytime soon, and considering how hard it is to get browser vendor's to agree, isn't getting replaced anytime soon. JavaScript will become more and more prevalent both on the server and on the desktop. I welcome our new prototype based overlord, and so should you.

Pick up Douglas Crockford's JavaScript: The Good Parts. Work through John Resig's Learning Advanced JavaScript. Check out the present and dream of what could be.

Once you start learning JavaScript, you will see an amazing language that for too long has been relegated to changing label colors and hiding page elements. I expect the future to hold great things for this little language.

1 comment:

  1. Hmmm maybe I will have to learn javascript after all. Being completely self taught - that makes me nervous.

    Gah why did my stupid teacher have to tell me java was dead.

    ReplyDelete