The Web has evolved - have you?

Not the 90s

Looking back at just a few years ago, the web as a whole has transitioned dramatically. Thanks to improvements regarding DOM-manipulation, new ways of caching or the interaction of your code with the OS, we’re starting to live in a world of web apps, a grande successor to the old websites we’ve come to know. This short article celebrates the web’s latest evolution and tries to point out (some of) the hallmarks that made it possible!

A true universal language

Foundation for most of the changes is the programming language to define it all, Javascript. Fancy enough, it was originally designed as a server-only language, then got used more and more for client-side tasks in simple websites, just to become universally used on both frontend and backend. Javascript, or to be more precise, ECMA-Script, now powers a lot of the web you’re using every day. And lately, it just got company by Typescript, a language that enhances JS by a typing-system that transpiles Typescript to Javascript.

Rendering

If you’ve started coding for the frontend in the past few years, you probably didn’t ever create a single “vanilla” website in plain HTML + CSS. Due to the rapid development of frontend frameworks such as React, Angular or more recently Vue and Svelte, writing your website has more become writing an application - hence the progression to “web app”. Initially considered a sole client-side technique, the first generation of web apps were designed as Single Page Applications (SPA), but due to new players on the field such as Next.js, you can now create hybrid apps with both statically and dynamically page creation.

Progressive, it is

I’ve just quickly talked about the evolution from website to web app, but the latest changes go even further. Thanks to very ambitious pushes by Google, a new generation of so-called Progressive Web Apps has been defined. PWAs describe web apps with a whole bunch of supercharged capabilities, unheard of until just recently. For example, using a PWAs service worker allows you to practically define a proxy for your web application that gets loaded ad-hoc, is written in JS, can talk to your app in a secure way and also take complete control over caching. Thanks to the service worker, PWAs can even be available when your device is offline.

More features, please

But that’s not all. Due to the ongoing improvements of Browser-APIs your apps can use, things like native push notifications, geolocation or gyro access are no longer a realm among web devs but rather real options you can start implementing in your PWAs today. Things like native file access in the frontend have been pushed heavily by Google and today, Chrome supports these kinds of tasks. The best of all: this is only the beginning! Taking a look at the current development landscape for the web, we’re looking forward to a bright future where implementing a PWA might be all you need to support most devices and operating systems out there!

- Tom