On August 6th, 1945, the world shook with the detonation of a 15 kiloton nuclear warhead, over the Japanese city of Hiroshima. Exactly 46 years later, on August 6th, 1991, a British software engineer by the name of Tim Berners-Lee quietly deployed the first website to the newborn World Wide Web. Two world-changing events, united not only by a day of the year, but also by a common thread of history.

Today (if you are reading this today), marks the 79th anniversary of the “Little Boy” detonation, and 33 years since the deployment of the first website. While significantly less interesting to the history books, today is also when I learned that the nuclear bomb essentially got me a job.


The Past: World War Web

The second world war had shaken Europe to its knees, with massive devastation to infrastructure, industry, and scientific institutions. In the war’s aftermath, the focus for Europe became institutional and scientific recovery. The Marshall plan, officially known as the European Recovery Program, saw billions of dollars in foreign aid sent to Western Europe by the United States. This effort, among others, provided a ground upon which new scientific efforts could blossom.

In December 1951, the groundwork was laid for CERN, which in English stands for the European Council for Nuclear Research. You don’t want to hear me try to pronounce the French. The establishment, created with the goal of advancing research in particle physics, but in a more peaceful manner this time, has made numerous impressive achievements in the field. But we don’t really care about those.

(In French, CERN stands for Conseil Européen pour la Recherche Nucléaire.)

That is, for our purposes, we must look towards the infrastructure of the institution itself. The extensive scientific research done by CERN required a lot of information to be shared. While there were some existing information-sharing systems, such as the up-and-coming email, or printed document sharing, these methods were cumbersome. Meanwhile, a British computer scientist, named Tim Berners-Lee, had an idea.

The internet, which had grown in popularity up to this point, provided a unique platform for information exchange. Computers could now communicate with one another. The TCP/IP specification allowed for data to be transferred between computers through a network, in a reliable and scalable manner. Burners-Lee, faced with the problem of burdensome information exchange, saw a unique opportunity in utilizing existing internet technologies.

“Creating the web was really an act of desperation, because the situation without it was very difficult when I was working at CERN later. Most of the technology involved in the web, like the hypertext, like the Internet, multifont text objects, had all been designed already. I just had to put them together. It was a step of generalising, going to a higher level of abstraction, thinking about all the documentation systems out there as being possibly part of a larger imaginary documentation system.”
- Tim Burners-Lee

Thus ensued the development of Hypertext Transfer Protocol, Uniform Resource Locators (URLs), and everybody’s favorite programming language, HTML. These fancy new technologies, developed by Tim, allowed for the new platform of development that we now call the web. Things never slowed down.

Web browsers now became a necessary tool to access the new online world. Styling these webpages was important too, and so Cascading Style Sheets (CSS) were introduced in 1994. A year later, in 1995, Brendan Eich developed the language that we now call JavaScript, during his time at Netscape. Thus, the fundamental building blocks of the World Wide Web were in place. All in pursuit of information exchange.

At this time, the web developer was the nerd, tinkerer, or obsessive who wanted to share information. The 90s were a time of the eclectic “Web 1.0”, where every topic simply had a website associated with it. Each website was unique and special, with character and strangeness. The monotony of the modern web was nowhere to be found in this land of chaos.

(If you want to explore the old web, check out Wiby, the old web search engine.)


The Present: Dependency and Abstraction

Throughout the web’s short history, technology after technology have entered the scene, each with a unique promise. The innovative landscape is ripe with commodities, libraries, and frameworks to aid developers in their work. Many problems have come up, but so have many more solutions. Web developers have a lot of choices.

Languages like PHP, Ruby, C#, and Golang have all risen to act as backbones for web infrastructure, each with unique value propositions. PHP is used by an estimated 79% of websites, and sits at the core of the Laravel framework, which is a delight to work with. Ruby is used by the Ruby on Rails framework, which provides a plentiful array of out-of-the-box utilities for building web applications.

If you don’t like either of those, maybe you want ASP.NET, an enterprise-grade and robust framework for building web applications with C#. Microsoft’s got your back. Not good enough? Golang, built by the likes of Ken Thomson, Rob Pike, and Robert Griesemer, offers a concise but powerful compiled language, with performance and concurrency in focus.

JavaScript, however, remains king. The scripting language has become the most popular language by far in use by developers of all kinds. In 2024, 65% of developers had used JavaScript. The language, which started as a way to add simple functionality to websites, has become a popular choice for all forms of codebase through tools like Node.js. The JavaScript ecosystem is massive, with at least 3.1 million libraries available to developers who use the language.

However, while the diversity and variety of the web development landscape is impressive, no doubt, it comes with trouble. Abstractions can become leaky, and projects, unstable. The modern web, to some degree, feels like a giant soup of complexity, with many accidents waiting to happen. The reliance of web developers on the abundance of frameworks and libraries has sparked concern from more experienced members, of whether new infrastructure is on solid ground.

It seems that the modern development landscape consists of an almost overwhelming number of solutions to the same basic problem: information exchange. Projects like React, Next.js, Angular, and other frameworks, allow for development of massive applications that scale to billions of users. These projects, however, require adopting additional complexity any time that you opt to use one.

Perhaps this is a worthwhile tradeoff, but at the very least it seems that the modern web development scene is struggling to find its balance. Radical simplicity and extreme complexity exist in a battle over the affection of developers, and I think it will be interesting to see how that plays out.


The Future: Making a Better Wheel

HTMX, is a library that aims to provide the necessary functionality for modern web development needs, with extremely minimal overhead. I’d call it a micro-framework. The library’s popularity comes from a healthy combination of memes, technical benefits, and a wider cultural trend within development circles towards minimalism. HTMX isn’t the only project that aims for minimalism, and there seems to be a wider trend towards simple expansion of web fundamentals.

There’s a problem in web development. Every tool that we use to build web applications eventually boils down to some way of getting HTML, CSS, and JavaScript onto the screen of an end-user. Frameworks come and go, which provide their own set of tools that allow developers to quickly and effectively build bundles of HTML, CSS, and JavaScript for their clients.

This goal has largely culminated in some amalgamation of those technologies, into a single file. JSX allows JavaScript and HTML to live in the same place, and work together to construct elements on the page. It’s essentially a blend of the two languages. Tailwind, another popular framework for styling, lets you write your styles directly into your JSX, and so you have HTML, CSS, and JavaScript all in the same file, building one component of a wider application.

But isn’t that how it was to start? HTML, CSS, and JavaScript actually can all be written in a single HTML file. Then, when someone loads that file, all three languages are interpreted by the browser for the same resource, to construct a website. But not quite. This simple approach does have its limitations.

First, immersion is ruined by needing to reload the entire window every time that you navigate to a new page. Additionally, a complex frontend application requires things like persistent state management, rendering complex component trees, dynamic updates, etc. Simple web stack needs extension. It isn’t immediately suitable for a modern web application. But perhaps it can be.

I mentioned the minimalism trend earlier. There is a wider feeling of fatigue towards overhead and complexity in web development. However, the solution to complexity isn’t to throw everything away and start from scratch. Countless lessons have been learned, and advancements made in the wider web development community over the past three decades. So, a real solution would solve the complexity epidemic, while still appreciating and implementing the many lessons that we’ve learned over time.

So, perhaps the future of web development is more minimal. Back to basics. Getting down the fundamentals. Some people may say that we’re going in circles. However, to me it seems that we are in the process of reinventing the wheel, but a little bit better this time.


Author’s Note

It’s absolutely fascinating to think about the future of the web, and frankly, I’m excited. The web is young, it’s only like 35 years old, so it has a lot of learning and growing to do. I’m not sure exactly what that will look like, but I do think it will be a positive direction. I think we need to remember that fundamentally we’re just doing information exchange. Either way, I’ll be here to cover it.

As always, thank you so much for reading, and I’ll see you next time! Goodbye.


Recommended Reading

If you’re looking for your next read, check out Bethany Edgoose, who writes the endlessly fascinating xtended publication. I’ve found her writing to be thought-provoking and fun to read.

Interested in the ongoing research into decoding and interpreting whale language?

xtended
Understanding Whale
You may already know that I’m reasonably obsessed with whales…
Read more

Or for more about who (or what) gets to be a person.

xtended
Trees are People
It’s been over a month since I wrote anything for substack - in large part because I have been preparing and then teaching a winter university intensive for architecture students in Melbourne, Australia. No, I am not an architect. But I do run my company with one, and togethe…
Read more

Credits

Thumbnail -

Bilal Azhar from:

Music -

Track - Feeling Good by Pufino, Source - https://freetouse.com/music, Free Music No Copyright (Safe)