The revenge of JavaScript

When I made my first steps in web development over ten years ago, in 2003 to be exact, of course I also learned JavaScript. It was the early 00’s and XHTML and CSS where still relatively new. It was also the time IE6 was the most used browser, which even prompted me to sign a petition to Microsoft to make a browser that followed W3C standards. Flash, then still from Macromedia, was the hottest thing and DHTML (for Dynamic HTML) was a buzzword. How much hings have changed since then, for instance: has anyone heard of ColdFusion recently?

So the JavaScript I learned back then is what is now refered to as Plain Old JavaScript. And like a lot of people I didn’t really like it that much. SO I was very happy when CSS became more widely supported and allowed a lot of nice effects, like rollover menus that untill then had only been possible using JavaScript. I used client side scripting in websites I made only when there was no other option. And as Drupal and WordPress became my favourite tools, most of the hard work was done by those CRM’s and I just needed to select the right modules and build a custom theme.

Fast forward to present time, where responsive design and full featured web applications are the norm and HTML5, CSS3, jQuery, etc are the buzz words. By using Bootstrap as the base of my WordPress and Drupal themes I was already using all of these without even making an effort. And now it is possible to build beautiful websites which are easy to maintain using only JavaScript. Thanks to AngularJS, node.js, backbone, underscore and a whole pack of JavaScript frameworks it is now possible to make fully dynamic websites with minimal server-side code.

So is PHP over and done with? Surely not. When you are putting building your business online, you will need to have a good back-end. But instead of making a website, you will make an API that your clients, be it web browsers, mobile apps, intelligent agents or whatever. The back-end can focus on the back-end logic and data and presentation and user interaction can be handled by the front end.

JavaScript might not win beauty contests as an elegant programming language (some might say it’s not even that, but a scripting language), but you can do some pretty amazing stuff with it and it is widely supported by browsers, even on mobile platforms (as long as the user doesn’t diable it). And PHP also has a bit of a bad reputation amongst programmers. And if you like form, there’s CoffeeScript, which compiles to JavaScript, but has the looks of Ruby, that other new kid on the block.

Leave a Reply