Will Operating Systems Finally Become Irrelevant?

Web apps never arrived as a true replacement for native apps, despite many efforts to push web during the 2010s. Today, more and more companies are emphasizing their web applications over native apps, while advanced feature-rich web-apps (PWAs) that better tie into its underlying system – regardless of the OS – are slowly rolling out to users. 

You might say the stateless thin client came too early. Sun Microsystems developed its thin client initially as NetWorkTerminal in the late 90s, and as Sun Ray in the aughts. The innovative company had some moderate successes with it. The Sun Ray was a small module that acted as a systems-hub: a place to plug in peripherals. It had virtually no operating system, almost everything was running on the network: the Sun Ray downloaded applications, files, and environments on the go as needed. 

Return of the thin client

Even though Sun Ray got a foothold in some areas, automotive for instance, the ambitious idea fizzled as a mainstream concept, even before Oracle bought Sun Microsystems and renamed the device Oracle Sun Ray. The bandwidth wasn’t there. The environments weren’t there. Networked storage was still nascent. Applications were ill-suited for a system where they ran off-device and the device was merely a front-end. So perhaps, the idea of a stateless thin client was just too much ahead of its time.

Roughly ten years later, times are very different. Cloud makes it easy to see the merit in the thin client idea: applications run on the network, so one can use simple resources on-device. No longer are heavy-duty processors required to crunch data on the device, most of the leg work is off-loaded to the cloud. Secondary memory is also available off-device, so no need for large discs anymore. Even primary memory, random access memory, isn’t that relevant of a requirement anymore when processing is done off-device. 

Platform agnostic never materialized

One might argue that the smartphone is at the midway point between the thin client concept (no state at all) and desktop computing (greater hardware resources, and stateful operating). But in a smartphone, there is still an operating system to contend with. And more importantly, an environment to plug applications in. Developers still need to decide on what platform they write their applications: Windows, Android, iOS, or something else? 

Sure, a developer can sink his or her teeth in many projects to cross-develop applications. Most of these started out of sheer desperation in the late 2000s when mobile platform fragmentation became so prevalent that it was hard to know which basket to throw your eggs in, Symbian, BlackBerry, Android, Bada, MeGoo, something else? No wonder that most app developers stuck safely with iOS, at the time not only a decent-sized player, but Apple was also able to better monetize the application platform for developers (and itself). The problem with cross-developing is that developers either end up recompiling to a different platform with code that’s passable, but not great, or end up emulating environments, which could charitably – very charitably – be described as ‘near-native’. Nothing beats an application that’s natively written for a specific platform.

Rise and fall of Chrome Apps

Web applications have been around for some time now, but they have never been able to replace the rich features of an app that is fully plugged in to all the resources a device has to offer. Slowly, that is beginning to change. Google made an attempt with its Chrome Apps, but those never provided the same UX as a native application. Even within its own environment, Chrome OS, Google was never able to make web apps seem like a proper replacement for a desktop program. The company virtually conceded that point when it brought Android into its Chrome OS environment. This made the devices tremendously more useful as a laptop replacement, but it also clearly signifies that web applications have a way to go before they are as good as, say, a Windows program.

This month, Google is discontinuing mainstream support for Chrome Apps. Enterprise support will end by December. The functionalities these offline web-based apps provided are largely superseded by Android apps and its browser-based Chrome Extensions. Indeed, Google admitted a few years ago that only one percent of users on Windows, Mac, and Linux had installed these apps. Users of Chrome OS probably knew these apps best, being pinned in the taskbar. Going forward, Chrome OS uses browser extensions, as these provide the offline functionality users have come to expect from Chrome Apps. Users see no difference in the way their devices work without Chrome Apps, which only serves to underscore the superfluous nature of these apps.

Along came the Progressive Web App

Google is attempting to spearhead new efforts with its Progressive Web App (PWA) framework. PWAs use service workers, JavaScript-elements that work independently of the accessed website, which means content and functionality remain available without a direct connection to the site. These apps tie into many more system resources – for example, they are able to access the camera for native-like capabilities – but are still limited and don’t have access to all connectivity options, like Bluetooth.

PWAs run in their own windows, instead of within the browser. To a user, it should look, feel, and function like a native app. The main advantage, of course, is that this new flavor of the web app is platform-agnostic. It shouldn’t matter which operating system runs the app and developers no longer need to concern themselves with the target of their code. The downside is that it is still early days, and support isn’t widely available yet. On non-Google platforms, PWAs work more like classic web apps, defeating the point of PWAs. Now that Chromium dominates the browser market, lack of support in other engines shouldn’t be too big of an issue going forward. Google really believes in PWAs and is now enabling installed PWAs to run at startup, just like a regular app.

OS is losing relevance

These developments make the underlying operating system irrelevant. Microsoft understood the way the wind was blowing, as it geared-down effort on developing its vaunted operating system Windows, and instead threw everything they had at cloud and mobility. Then new CEO Satya Nadella explained this strategy in 2014 when he succeeded Steve Ballmer, which many saw as a move to shift Microsoft’s focus from its failed tactic of mobilizing Windows to something more of a holistic strategy, including embracing open source to woo developers and make offerings accessible and compatible, to prepare for the future of computing. 

In recent years, Microsoft has been de-emphasizing Windows. Some observers, like Windows-expert Woody Leonhard, would even go so far as saying abandoning Windows, as the operating system has often been found by the wayside. Patches that require patches and epically failed feature upgrades, like the disastrous version in 2018 that deleted user data, seem to indicate that Leonhard may be right. 

Web apps are (still) the future

The future can only be on the web. The only alternative is a monolithic approach where one platform rules all, like the Windows of yesteryear or Android of today. Cross-platform programming never materialized in the way developers hoped, emulation makes too many concessions to run programs as smoothly as users will, platform fragmentation makes for a confusing and frustrating tech landscape – all valid reasons why a web application that works like a native app is the holy grail of developers. That future is still on its way, but despite efforts from companies like Google and Microsoft, it hasn’t arrived yet.

You may also like...