Device Independence Becoming Real
For decades, compute devices and the tech industry as a whole were built on a few critical assumptions. Notably, that operating systems, platforms, applications, and even file formats were critical differentiators, which allowed companies to build products that offered unique value. Hardware products, software, and even services were all built in recognition of these differences and, in some instances, to bridge or overcome them.
Fast forward to today, and those distinctions are becoming increasingly meaningless. In fact, after hearing the forward-looking strategies of key players like Microsoft, Google, and Citrix at their respective developer and customer events of the past week, it’s clear the world of true device and platform independence is finally becoming real.
Sure, we’ve had hints at some of these developments before. After all, wasn’t browser-based computing and HTML5 supposed to rid the world of proprietary OS’s, applications and file types? All you needed was a browser running on virtually any device, and you were going to be able to run essentially any application you wanted, open any file you needed, and achieve whatever information-based goal you could imagine.
In reality, of course, that utopian vision didn’t work out. For one, certain types of applications just don’t work well in a browser, particularly because of limitations in user interface and interaction models. Plus, it turned out to be a lot harder to migrate existing applications into that new environment, forcing companies to either rebuild from scratch or abandon their efforts. The browser/HTML5 world was also significantly more dependent on network throughput and centralized computing horsepower than most realized. Yes, our networks were getting faster, and cloud-based data centers were getting more powerful, but they still couldn’t compare to loading data from a local storage device into onboard CPUs.
Since then, however, there have been a number of important developments not just in core technologies, but also in business models, software creation methodologies, application delivery mechanisms, and other elements that have shifted the computing landscape in a number of essential ways. Key among them is the rise of services that leverage a combination of both on-device and cloud-based computing resources to deliver something that individuals find worthy of value. Coincident with this is the growing acceptance to pay for software, services, and other information on an ongoing basis, as opposed to a single one-and-done purchase, as was typically the case with software in the past.
Admittedly, many of these services do still require an OS-dependent application at the moment, but with the reduction of meaningful choices down to a few, it’s much easier to create the tools necessary to make the services available to an extremely wide audience. Plus, ironically, we are finally starting to see some of the nirvana promised by the original HTML5 revolution. (As with many things in tech—timing is everything….) Thanks to new cloud-based application models, the use of containers to break applications into reasonably-sized parts, the growth in DevOps application development methodologies, the rise in API usage for creating and plugging new services into existing applications, and the significantly larger base of programmers accustomed to writing software with these new tools and methods, the promise of truly universal, device-independent services is here.
In addition, though it may not appear that way at first glance, the hardware does still matter—just in different ways than in the past. At a device level, arguably, individual devices are starting to matter less. In fact, in somewhat of a converse to Metcalfe’s Law of Networks, O’Donnell’s Law of Devices says that the value of each individual digital device that you own/use decreases with the number of devices that you own/use. Clearly, the number of devices that we each interact with is going up—in some cases at a dramatic rate—hence the decreased focus on specific devices. Collectively, however, the range of devices owned is even more important, with a wider range of interaction models being offered along with a broader means of access to key services and other types of information and communication. In fact, a corollary of the devices law could be that the value of the device collection is directly related to the range of physical form factors, screen sizes, interaction models, and connectivity options offered to an individual.
The other key area for hardware is the amount and type of computing resources available outside of personally owned devices. From the increasing power and range of silicon options in public and private data centers powering many of these services, to the increasing variety of compute options available at the network edge, the role of computing power is simply shifting to a more invisible, “ambient” type role. Ironically, as more and more devices are offered with increasing computing power (heck—even ARM-based microcontrollers powering IoT devices now have the horsepower to take on sophisticated workloads), that power is becoming less visible.
So, does this mean companies can’t offer differentiated value anymore? Hardly. The trick is to provide the means to interconnect different pieces of this ambient computing background (as Microsoft CEO Satya Nadella said at Build last week, the world is becoming a computer) or to perform some of the specific services that are still necessary to bridge different aspects of this computing world. This is exactly what each of the companies mentioned at the beginning of this article discussed at their respective events.
Microsoft, for their part, described a world where the intelligent edge was growing in importance and how they were creating the tools, platforms, and services necessary to tie this intelligent edge into existing computing infrastructures. What particularly struck me about Microsoft’s approach is that they essentially want to serve as a digital Switzerland and broker connections across a wide variety of what used to be competitive platforms and services. The message was a very far cry from the Microsoft of old that pushed hard to establish its platform as the one true choice. From enabling connections between their Cortana assistant and Amazon’s Alexa in a compelling, intriguing way, to fully integrating Android phones into the Windows 10 experience, the company was clearly focused on overcoming any kinds of gaps between devices.
At I/O, Google pushed a bit harder on some of the unique offerings and services on its platforms, but as a fundamentally cloud-focused company, they have been touting a device-independent view of the world for some time. Like Microsoft, Google also announced a number or AI-based services available on its Google Cloud that developers can tap into to create “smarter” application and services.
Last, but certainly not least, Citrix did a great job of laying out the vision and effort it has done to overcome the platform and application divides that have existed in the workplace for decades. Through their new Citrix Workspace app, they presented a real-world implementation of essentially any app, running on any device from any location. Though that concept is simple—and clearly fits within the device independence theme of this column—the actual work needed to do it is very difficult. Arguably, the company has been working on delivering on this vision for some time, but what was compelling about their latest offering was the elegance of the solution they demonstrated and the details they made sure were well covered.
A world that is less dependent on individual devices and more dependent on a collection of devices is very different than where we have been in the past. It is also, to be fair, not quite a reality just yet. However, it’s become increasingly clear that the limitations and frustrations associated with platform or application lock-in are going away, and we can look forward to a much more inclusive computing world.