Since 2016, the Norwegian Developers Conference has held a parallel conference in Sydney, Australia. Last month, one of his presentations was a whirlwind tour of the history of the web and its development tools, providing a detailed and thoughtful perspective on what has led to our modern web development landscape.
Along the way, the audience was treated to a demonstration of the world’s first web server, compiled from its original 1989 source code, and other web development tools from the past three decades to explain how we got here. the.
But at the end of the conference, the audience also heard educated speculation about where it all might ultimately go.
In short, the conference offered its audience a glimpse of how we were – and what we could become.
Birth of the browser
But the title of his speech promised to tell web developers “Why Web Technology Is Like This.”
Before running the world’s first web browser, Sanderson began by compiling the code for the world’s first web server – the 700 lines of C code that powered Tim Berners-Lee’s TCPServer.c in 1989. He created a binary 22 kilobytes named httpd which, instead of port 80, listens on port 2784. “Apparently those are the last four digits of Berners-Lee’s parents’ phone number,” Sanderson said.
Diagnostics such as console traces to view HTML file source code in various formats were also included. “So we kind of have the first browser dev tools in there, right from the start,” Sanderson said.
It’s not the only early software with built-in developer tools. Pei Wei’s 1991 ViolaWWW browser for Unix only even had style sheets. “Now it’s not CSS, obviously – which hadn’t been invented yet. But it’s something like that that he invented and put in there,” Sanderson said.
These are not just historical curiosities, but examples of Sanderson’s larger argument: that “we can change the course of the web.”
“The people making these decisions, in some cases, are big companies, but a lot of the decisions along the way have been made by individual engineers,” he said.
Develop development tools
Yet, as recently as 2006, “the closest thing to any browser development tool is viewing the source in Notepad,” he said.
Improvements came with Joe Hewitt’s 2007 Firebug browser plugin – complete with a console, HTML view, CSS, script debugger and network plotters. “That design has largely stayed with us throughout,” Sanderson said. “It was even pretty much copied by Google as soon as they released their Chrome browser.”
“A whole bunch of people came up with pretty much the same idea at the same time” – the idea of introducing disciplined development patterns (like Model-View-Controller or other patterns) into web development.
“None of these things were done in coordination with each other,” Sanderson said. “It was just an idea that was ready for the world. It had to come out, and a whole bunch of people did it at the same time.
It’s interesting how he summed up our modern era of web development as “a period of very rapid growth in complexity for web developers”. He even released a slide with the logos for TypeScript, webpack… and Kubernetes.
Sanderson said he included Kubernetes (2014) because “it just gives you an idea of what web developers were supposed to know by now. It’s not just about frontend development and backend development, styling and building systems, etc. It’s also now cloud orchestration, it’s becoming a very, very sophisticated era.
“And it’s starting to get to the point where people are going to have to push that back a bit.”
Facing the future
At the end of his speech, Sanderson pulled out a slide titled “the present and the future,” giving him a chance to pontificate. Looking ahead, Sanderson predicted “a pushback against sophistication and how many things web developers are supposed to know. Maybe we’re reaching some kind of end point.
“And some of the technologies that are emerging could start to help us reduce that a bit.”
Sanderson applauded browsers that can handle more content with less pre-preparation on the part of web developers, specifically citing native CSS nesting, which “allows us to get a lot of the benefits that you have with things like LESS and Sass just by cooking more and more. features inside the browser. And he also saw proposals for type erasure: “a way to run languages like TypeScript directly in a browser without having to compile them, just by teaching the browser to ignore type annotations and other things that ‘he does not understand”.
But our world is evolving differently. Sanderson noted a new movement toward delivering content to the edge of the cloud – “delivering your web applications not just on a few servers in certain locations around the world, but in thousands or tens of thousands of locations around the world” . The advantage? “You get those single-digit millisecond response times for your users, and you can hardly ever go down because you’d have to bring down the entire global infrastructure to bring down your website in that moment.”
Sanderson mentioned the lower latency made possible by the HTTP/3 protocol and the WebTransport API. “You don’t really need to bundle content anymore. Serving a large number of small files is just as efficient as serving a single large file.
At the end of the talk, Sanderson pointed out that individual engineers can make decisions that influence the future of web development. “You are those engineers. You’re here at this conference, you can chat with each other and come up with some of these ideas about where we’re going to go. And I’m very excited to see it and hope to be a part of what you’re creating.