In this article, I’ll be covering the state of the World Wide Web when it started and how it has evolved over the last few decades.
The World Wide Web
The terms “World Wide Web” and “Internet” are often used interchangeably, but they are not the same thing.
The internet is a worldwide network of interconnected computers. Among other purposes, it acts as an infrastructure to allow people around the world to access the World Wide Web.
The World Wide Web is a collection of technologies that facilitate referencing digital media on the internet, accessing said media and presenting it to the user.
Static Websites
The first website was deployed in 1990. It was written in an early precursor to HTML.
The earliest websites consisted of only static pages. In other words, when the user requested a resource from a website, its server would read this resource from its file system and send it to the user as-is.
Early Web Applications
In 1994, the PHP scripting language was created. PHP code would run on web servers, inspecting each request and generating a response dynamically. This opened the door to many new possibilities.
One key feature of PHP is the ability to break a web page down into many smaller components. If someone wanted their website to have the same header and footer on every page, PHP would allow them to achieve this by storing one copy of the header and footer in their own files, and then importing them into all the other pages on the website. It would then be possible to edit those components for every page on the site by changing just one file.
Another key feature of PHP is the ability to connect to databases. This would allow a website’s content to be stored, accessed and updated in a much more efficient, organised manner. It would also enable some websites to give users their own accounts, bringing about the rise of social media.
JavaScript and Ajax
JavaScript, a simple programming language for use in web browsers, came about in 1995, allowing websites to offer basic interactive functionality within the browser. This might have included things like simple animations and client-side form validation.
A few years later, Ajax was introduced, allowing a web page’s JavaScript code to communicate with the website’s server without requiring the browser to reload an entire new page for every request. This opened the door for many other possibilities.
For an example of Ajax at work, consider the feed on your favourite social network. When you scroll down until you’re near the bottom of the page, it probably loads more posts automatically. It uses Ajax to do this in the background, and it simply adds the posts it has loaded to the bottom of the already-loaded page.
Progressive Web Apps
Websites and web apps have come a long way since the World Wide Web was created. Initially, a web page was essentially just a document that you could access over the internet using a web browser. As more and more features were developed, websites have become increasingly able to behave like complete programs.
Over the last 10 years or so, we have seen the rise of progressive web apps (PWAs). PWAs are yet another innovation that has reduced the gap between web apps and native programs.
PWAs can be “installed” by modern web browsers, so that they appear among native programs on your computer. They can instruct browsers to hide the tab bar and navigation controls. Most importantly, they are able to function without an internet connection.
Of course, PWAs can’t offer _complete_ functionality without an internet connection. For example, an instant messaging application won’t allow you to talk to your friend in real time without some sort of network connection. However, any functionality of a modern web app that doesn’t require a connection to another computer can be made to work offline.
For an example of offline functionality, consider a web-based office suite. It probably uses a web server as the primary means of storing documents, but in many cases, if you need to edit a document while disconnected from the internet, you’ll be able to make edits to a locally cached copy for the time being. These edits will then be pushed to the cloud next time you’re online.
A few years later, Ajax was introduced, allowing a web page’s JavaScript code to communicate with the website’s server without requiring the browser to reload an entire new page for every request. This opened the door for many other possibilities.
For an example of Ajax at work, consider the feed on your favourite social network. When you scroll down until you’re near the bottom of the page, it probably loads more posts automatically. It uses Ajax to do this in the background, and it simply adds the posts it has loaded to the bottom of the already-loaded page.
The Future
Even today, new features are being added to modern web browsers and, by extension, the World Wide Web. One relatively recent innovation is that of WebAssembly, a means of running programming languages other than JavaScript within the web browser. It achieves this by compiling those languages, not into machine code, but into an intermediary language to any client device’s machine code.
WebAssembly is still in its infancy, but it is already facilitating the development of vastly more complex web applications than what we’ve seen in the past. There are emulators – programs capable of running machine code written for specific CPUs – written in WebAssembly. Emulaltors are very complex programs; this is a big deal!
By the time WebAssembly truly becomes mainstream, who knows what will be next?
The World Wide Web is a rapidly evolving phenomenon. It’s always worth researching and tinkering with its underlying technologies; you’ll probably find something new every time.