Wednesday 25 February 2009

Back in the Day...

Musings about the bad old days of web design/development

Apologies in advance, for my lack of posts for the past couple of months. Inexcusable I know, but unavoidable. Life and work take precedence I'm afraid.

Grovelling aside, I thought I'd share my thoughts regarding where web designers/developers stand today, regarding the use of JavaScript, compared to "back in the day". I built my first site back in the early/mid nineties, and since then moved away from HTML/CSS/JavaScript towards Flash based solutions, and then over the past couple of years found myself ignoring Flash almost completely, unless the project requires video.

Why the change? Simple. JavaScript has grown up, CSS is more widely supported and HTML doesn't need any plug-ins. I used to be a bit of a Flash evangelist, and used it at every possible opportunity. I loved it's ability to do things that plain HTML just couldn't do reliably across browsers. Both in terms of layout, and functionality. I also found ActionScript 1 and 2 to be easy and accessible, which as a designer rather than hard-core developer was important. I genuinely believed that the Flash platform was going to completely change the Internet. Man, was I wrong! (alright, alright, Flash has changed the landscape, but not for the initial reasons I thought it would).

Today, that's all changed. The emergence of robust JavaScript libraries such as MooTools, ProtoType ,( and it's sidekick Scriptaculous), ExtJS, or my personal favourite jQuery, has had a noticable impact on web design and development.

I am currently working on an in-house tool that will eable users to manage and troubleshoot stored database queries and parameters. the current version is hideous (admittedly it is pretty old and was built by programmers rather than designers), and uses old-school JavaScript, HTML tables based layout, and requires visiting several pages to edit/view different elements of the data. The current results pages returns, on average a 900kb web page and is slooooooooow to say the least.

The new version is a different animal entirely. Using jQuery, I have been able to enhance it's functionality beyond all recognition. Users can now view/edit/delete master/child data sets within the same page, with data only being loaded when required, and only sections of the page changing rather than complete reloads. Using the amazing jQuery library, I have been able to reduce the HTML weight to less than 200kb (a roughly 75% saving on filesize), and at the same time produce a tool that performs faster, is easier to use, and allows users to get better results. In less than 6 weeks. Impressive stuff. I'm not bragging, saying "I AM A JAVASCRIPT GOD". What I am saying is...

How did we do it back in the day? jQuery has saved my life.

Why are you still here? You should be giving unobtrusive, library-based development a shot....