JavaScript: the C of the web

Today, a new conference from O'Reilly kicks off in San Francisco, Fluent (+O'Reilly Fluent Conference). Fluent's all about JavaScript, with a bit of the future (such as +Dart : Structured web apps) thrown in.

The relationship between JavaScript and the web resembles that of C and UNIX. Ubiquitous, but offering tempting opportunities to shoot yourself in the foot. Not since C have we had a language so universally available and (mis)understood, yet undeniably an important and enabling part of the web.

Here are some of the most important the ways JavaScript manifests.

Virtual machine — an increasing number of multimedia tools and programming languages compile down to JavaScript to execute in the browser. This means that you don't need to use JavaScript the language. (I'm a fan of ClojureScript.)

Network services — thanks to Node.js, JavaScript is a popular choice for network applications with a high number of parallel connections.

Framework substrate — due to its malleability, JavaScript has been the perfect substrate for sophisticated frameworks such as jQuery. JavaScript's origins in real computer science ideas have ensured it retained the respect of some serious engineers.

Entry-level language — it used to be kids got a start with BASIC. And in UNIX days, every machine was guaranteed a C compiler. Now JavaScript and HTML is the language that comes built into every computer.

I'm not at all sure that a reincarnation of C is the way we should be endowing future generations of developers. But JavaScript is the game that we have, and we still get many choices about how to build on top of it. I don't think we'll ever see a programming language that succeeds in this way again. JavaScript is the last and most successful emperor in the dynasty.

In the end, then, JavaScript isn't as important as much for being a language, as for being a platform on top of which tomorrow's languages and tools will be built. The Fluent Conference is well-placed to let us take a look at the present and future of that platform.
Shared publiclyView activity