There is no JavaScript on this website.

This little website doesn't need any, of course. So why am I even mentioning it?

There is too much JavaScript on nearly every other website.

I like JavaScript. I've made my living with it. It's a powerful general-purpose programming language, and most websites probably need some.1 This isn't a diatribe against it.

Nor is it an indictment of JavaScript developers, maintainers, or leaders; this is happening to all of us, and we all bear some responsibility.

There is too much JavaScript because we've been trying to make the Web into a general-purpose application platform. It isn't one. The Web is for documents2. We need to refocus how we build for the Web on making new kinds of documents, not on making the documents act like general-purpose graphical user interfaces..

It's bad out there

Since the Web became my full-time job about fifteen years ago, I've watched (and helped) as this thing has taken over huge swaths of regular people's daily lives, and has displaced and replaced countless other technologies in our work as developers. The World Wide Web has eaten the world. But now, it has some indigestion.

As a developer, I feel the chaos and bloat of the Web development ecosystem. Toolchains, frameworks, best practices, and especially websites themselves, have become overengineered and inscrutable. The sense of ease, casualness, and simplicity of "making a website" has given way to the drudgery of running mazes of boilerplate that try and fail to anticipate your needs; you might as well go to the DMV and apply for a website license.

As a person, I feel the heat on the back of my phone as it tries to load the average professionally-made webpage. If you're not a Web developer, but you are blessed (or burdened) to know one, they may also tell you "you're not crazy, it's worse". They might blame ads, malware, big and slow frameworks used unnecessarily, or developers who neither know nor care how to do better. I don't blame those things, but I do feel a rising dread that the technologies I've immersed myself in are not performing well for the average person, and so the average person doesn't trust Web pages and uses native apps wherever possible. And because of that, a young developer with a great idea may not build it and launch it on the Web, but instead will give it over to the walled gardens of the app stores.

Read part 2: "How did we get here?"

Footnotes

  1. In fact this website is built with JavaScript; it just doesn't deliver any to your browser.

  2. The Web is for "apps" too, if those apps are basically documents. JavaScript is there to be used, and it can be used to make those documents really adaptive and convenient to read and change.