I, for one, Welcome our new JavaScript Overlords
You are probably most familiar with JavaScript as that sometimes useful, often quirky, client-side scripting language used on websites to enhance user interfaces and enable dynamic content.
Wikipedia describes JavaScript as “dynamic, weakly typed and has first-class functions … a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles.” Fairly generic technical description there. Wikipedia fails to point out that JavaScript may also be a ravenous monster intent on infiltrating every bastion of technology we have!
JavaScript is not just out of the web browser but is becoming a pervasive presence in all aspects of the computing industry. Desktop, mobile, tablet, web servers - no application is safe from JavaScript’s rush into the mainstream. To paraphrase Kent Brockman (Simpsons Season 5, “Deep Space Homer”), “I, for one, welcome our new JavaScript overlords”.
JavaScript is not a new language. Since its birth at NetScape in 1995 as a lightweight interpreted language complement to Java, JavaScript has become one of the predominant languages used in the world. JavaScript's growth is significant. Part of that growth is due its use in applications outside of the web browser in PDF documents, custom web accessible applications, mobile applications, widgets and even server-side applications.
According to web statistics from HTTP Archive for 2011, “along with the increase in JavaScript, the size of HTML, CSS and images on websites also rose significantly”. The same statistics show that the size of Adobe Flash files have remained static giving credence to the idea that HTML5, CSS and JavaScript are taking over.
Some of the most significant recent developments in JavaScript are:
- JQuery: “Write Less, Do More”- an open source, cross browser JavaScript library that aims to take the pain out of writing for multiple environments. Championed, and for many years solely run by John Reisig, JQuery is close to becoming the de facto JavaScript library on the web. Old timers like Prototype and script.aculo.us are still out there but their usage numbers are dropping.
- Node.js - a network application development platform written on Chrome’s JS runtime, Node.js made a big splash when a contributing developer created a JavaScript only web server that seemed impossible to overload with requests. Node.js is currently used by a number of companies including Microsoft and WalMart.
- Meteor - open-source JavaScript platform for building “top-quality web apps in a fraction of the time”. I think we’ll be the judge of the quality Meteor but, by all means, bring it on! Their mission statement alone makes Meteor stand out, “Writing software is too hard and it takes too long. It's time for a new way to write software — especially application software, the user-facing software we use every day to talk to people and keep track of things.”
- WinJS - the JavaScript framework for Windows 8 Metro Style Apps. Whew, that’s a mouthful. Basically in Windows 8 you will have the option to create Metro Style Applications using a combination of HTML5, CSS3 and the language of your choice! Well, WinJS, C++, C# or Visual Basic. The big news here is that you can build complete applications in JavaScript!
Finally, I feel I should at least mention my long time JavaScript debugging friend, Firebug. Firebug provides a happy, comfortable environment to watch values, make live script changes and adjust CSS for a long time. Built in tools for DOM (Document Object Model) debugging are making a resurgence but Firebug will have a special place in my toolkit for as long as I can justify it.
For today, know that the reach of JavaScript is no longer creeping; it’s exploding at an exponential rate. It feels like the metaphorical “fourth wall” in web development has a leak and all of these Web 2.0/3.0/X.0 technologies are about to spill out into the world.
Tomorrow, JavaScript will be everywhere, are you prepared?
- Log in to post comments