Twelve years ago the World Wide Web Consortium released a set of specifications for the Extensible Markup Language or XML.

It was designed to allow anyone to create tagged documents, with tags describing the contents and by building on the work done with other languages (particularly SGML (Standard Generalized Markup Language) it was intended to be a common platform for data exchange across the rapidly growing internet and become the lingua franca of the connected world but a lot of people find it bulky and ugly.

The same could be said of JavaScript. According to Doug Crockford, considered by many in the development community to be the JavaScript expert, it is a beautiful, elegant, lightweight and highly expressive language which lies buried under a steaming pile of good intentions and blunders.

The very good ideas he says, include functions, loose typing, dynamic objects, and an expressive object literal notation. The awful ideas include a programming model based on global variables.

“I don’t understand

a mindset that

undervalues quality.

It doesn’t help to make

it fast if you aren’t also

making it good.”

By sheer coincidence Doug also rails against XML and developed JSON (JavaScript Object Notation) a lightweight data interchange format widely used in Ajax applications, because he found XML extremely verbose and time-consuming to transmit and process on the browser.

A senior JavaScript Architect at Yahoo! Doug has been a programmer since the early 1970s when he took a punch card Fortran course in college after finding it difficult to get into television broadcasting. Over the course of four decades he has combined computers with media and has worked for numerous companies including: Atari, Lucasfilm and Electric Communities. A member of JavaScript 2.0 committee at ECMA, Doug is a regular speaker at conferences on advanced JavaScript topics, and prefers to think of himself as a mahatma rather than a guru.