Web – JavaScript = 1/good
Over the years, in my journeys through the world of web development, I have cursed JavaScript many times. It can be a downright cold-hearted bitch to work with. Granted, things have gotten better in recent years with the advent of tools like Firebug, but there is still plenty of pain, misery, and suffering to go around. As a user however, I celebrate the very existence of JavaScript and the innovation that it has enabled to make our overall experience as users more rich and more enjoyable (DOM Manipulation, AJAX/XmlHttpRequest, and all of the wonderful libraries out there).
Earlier this evening, I was showing my wife how it was possible, by disabling JavaScript, to use right mouse clicks on sites that attempt to disable them. Once I was done showing this to her, I got up for a bit. When I returned, I had forgotten that I disabled JS in the first place. I try to login to Gmail…. Nothing. It just sits on the loading screen, taking it’s sweet ass time, doing a whole lot of nothing. I figure my internet connection could be flaky… maybe a router barfed between me and the Gmail server…. maybe there’s a problem with Google. A few refreshes… Forget it. I open a new tab for Facebook. I login. Everything seems normal. I try to comment on a friend’s picture… Nothing. Finally, it dons on me that I had disabled JS a while back. JS back on. Sanity restored. The world is again a place fit for human life.
If not for JavaScript, we might all be mired in a wasteland of platforms like Flash and Silverlight. Nothing against Flash or Silverlight. They have their place in the RIA world, for the time being. Mainly, for delivering streaming media. However, in my mind, the fact that pure Flash and Silverlight content cannot be indexed by search engines takes away from their viability as serious platforms for delivering web based content. What if major blogging apps, like WordPress, had been done in Flash? Could you imagine all the knowledge that might be lost, or much more difficult to find, because search engines wouldn’t be able to index this content? I’ll tell you what it would be… A goddamn travesty! Of course, the fact that these platforms are not open source doesn’t help things either.
Fortunately, great work is being done to narrow the gap between what is possible with Flash/Silverlight and what is possible with HTML and JavaScript. In addition to the hordes of excellent JavaScript libraries out there (JQuery, Dojo, Prototype, etc.), work is being done to incorporate open source video standards in to the HTML spec. The latest release of Firefox (3.5) includes native support (no plug-ins required) for Ogg based video. The next version of Chrome will support this as well (EDIT: After a closer look, I saw that the current beta version of Chrome, 4.0.202.0, does have native Ogg based video support). Webmonkey has a good article that goes in to more detail about the efforts being undertaken to make open source video a part of the web/HTML standard.
From a developer’s perspective, JavaScript can sometimes be a very cruel mistress. However, asĀ a user, how could we live without it?
A house is just a place to keep your stuff while you go out and get more stuff.