Blog
Words about design, the industry, and everything in between.

A Designer on Operating Systems

Posted on

A Silicon Valley startup was founded in 2003 with an aim to develop an advanced operating system for digital cameras. Considering that the camera market wasn’t large-enough, they started work on a mobile OS, and were acquired by Google two years later. Currently, they have over a billion active monthly users, which has doubled from 538 million in mid-2013. Of course, I’m talking about Android, the magical Linux-based mobile OS that sells more than Apple’s and Microsoft’s mobile and desktop OSes, combined.

So how do you get from there to here? And where do you go after this?

There have been drastic changes to computing in the past couple of years with new technologies challenging existing ones. People are so close to their devices—rather emotionally—that magnitudinally, the WWDC every year is considered as important as Xerox with the Alto. As revolutionary as Xerox’s contributions were, there’s no declining that innovations in the past couple of years are changing people’s relationships with devices as much as Xerox did in the 70s.

Different OSes today offer a lot of diversity in terms of their features and implementation, and while looking for a primary operating system (yet again), I was confused. I decided on Elementary OS. It was an easy change since I was using Ubuntu previously with dual-boot Windows 8. Why? Because it’s fast, secure, and beautiful. The power of Linux, the features of Ubuntu, and the beauty inspired from OS X. It’s almost perfect.

Almost.

Even though eOS is one of the most beautiful and user-friendly OSes I’ve ever used, it’s not what I had in mind when I said “perfect.”

In the cover story of Digit v13i01, Paanini Navilekar introduced an idea I couldn’t get out of my head – that a perfect OS will be no OS. I mean, an invisible OS. Bear with me.

Imagine an internet of things where every device is nothing but a screen that could put any user interface up and display anything. No graphic cards and hard disks. Just a screen with Wifi. That would allow access to all of your files and media stored in the cloud. You sign into a device (any device, it doesn’t matter; it could be a microwave too), and it will automatically pull all of your data from the cloud. Hell, even the OS itself will be streamed to you via this network.

Think of this as accessing mail: When you buy a device and load up the URL in a browser, all you have to do is log in, and it’s the same experience on every device. Everything you need is there. It just works.

So, every device, regardless of the manufacturer, will contain the bare minimum in terms of software (the screen with Wi-Fi was figurative, obviously) and would contain only the firmware and drivers required to stream the interface from the cloud. All important processing or GPU operations will be carried out by the server itself, and only the output will be streamed back to you. In other words, your device’s hardware won’t be a limiting factor in its performance. You’ll be able to enjoy high-res games, HD movies, even transcode audio and video from your portable devices knowing that all the huffing and puffing will be managed remotely.

The interaction in this OS would be completely based on the kind of device. If you’re holding it in you hand, you could touch it. If you can’t see it, you can talk to it. And if you’re using a keyboard and mouse, you could just do what comes naturally to you. You don’t even have to open an app to get started. Consider this: Looking at nothing but a beautiful desktop wallpaper, and you just start typing. You type “ama” and you see a file by the name of “amazing_document” that you could open in a cloud-based word processor (much like Google Docs), and you see “amazon.com” and products that are hot right now. Right on your desktop. If you’re not in the mood of a keyboard, just start talking, naturally. “Open Amazon.” Boom. You’re there.

In an OS that is, at its core, a web browser, not only will leftover files not be an issue, but frequently access files, apps, and websites can be cached in memory for faster access. And a built-in system-wide version-control for every change a user makes will be easy to implement, just like history works in browsers. This means that the device will record even the most minute changes made to files and settings allowing the user to rollback to any previous configuration with ease. And of course, no more saving.

You might say that this already exists, but really, when was the last time you saw anyone use a Chromebook?

The very idea of an OS isn’t what it should be. When you say OS, you think iOS or Android or OS X or Ubuntu. I believe when you say OS, you should see your wallpaper, the people you love the most, and how easy it is to communicate with them. You should see that it’ll take you five seconds to do what you want to do, not how to figure out how to do that. You should see what you want to do, nothing else.

It should be simple. It should be better designed. At least, good design-ed. But what is good design in terms of crafting an operating system? Like Dieter Rams said, good design is

innovative

Features and ways to do things that are just, well, new. Innovation should be a centric part of the OS. Not just innovating in terms of the experience of the OS, but allowing people to innovate on top of that. It should be collaboratively developed, and should allow users to be able to do whatever it is that they want to. Truly innovate, that is.

makes a product useful

The OS shouldn’t be just usable, it should be useful. It should be able to convert simple problems into efficient solutions. The device without the OS is useless. For example, the Apple Remote has seven buttons. Just seven. And you can control nearly all the media on your computers—which includes thousands of songs, movies, and pictures—with just those, and a killer user interface. The device should always be elegant and easy-to-use. The OS makes it useful.

aesthetic

“The only problem with Microsoft is they just have no taste,” Jobs said one day talking about Windows. Of course, a lot has changed since then (I love the new design languages from Microsoft, Apple, and Google), but that’s not always the case. Using OSes often gives you an experience you weren’t looking for, with bad gradients and inconsistent implementation across third-party apps. The OS should be aesthetic. Only well-executed products can be beautiful, because the aesthetic quality of a product is integral to its usefulness.

makes a product understandable

The OS should be self-explanatory. Users shouldn’t have a hard time figuring out how to use features and get their work done. There shouldn’t even be a home button on the devices, since the OS will be just simple-enough to be understandable. And I don’t mean putting a black bar at the bottom with on-screen controls; no, I mean an implementation of ideas that doesn’t require that bar in the first place.

unobtrusive

One of the most major issues in current OSes is that they come in the way of uses and what they want to do. If I turn Windows on, I see the lock screen which I swipe to top and then log into my account. Then, I tap on Desktop and launch Chrome and type “gm” and press enter to go to Gmail. I want one below the screen that turns it on. I tap on Gmail and I see my mail. Is that too much to ask? Mobile implementation of these ideas are still pretty okay, but why can’t we have a consistent—and yet great—experience across all my device? Why don’t I receive Android notifications on Chrome? Why does my OS come in the way of productivity?

honest

The OS doesn’t try to look like it’s more innovative or powerful. Apps that look nothing like their screenshots and icon packs that are just, well, sad? It’ll be pure and honest; it’ll give the user what the user needs and nothing more. It’ll be honest about its shortcomings and give the user a chance to actually explore roots of problems and look for updates to fix them.

long-lasting

The very idea of cloud computing makes my point. When the web browser is your firmware and internet-streamed content is your OS, everything is automatically updated. Your OS will run nothing but the latest, most secure software, all the time. It’ll last as long as your device would.

thorough down to the last detail

Care and accuracy that show respect to the use will be a core part of the OS. Every design element and feature will be coded to the most fundamental detail, with its source code completely open so users could change things if they’d want. Consider the front-end of an OS designed completely in CSS (like parts of eOS), giving the user the flexibility to design what they would want to.

as little design as possible

Seriously, if I close my eyes and think of this OS, I only see my wallpaper. Because that’s all I’m supposed to see on its idle screen. It’s pure, simple, and doesn’t distract my mind from what it does best – think. No unnecessary features or design elements will be a part of the OS, and only what’s truly required shall be visible.

In a market where only a third of the world has access to the internet, the potential for a cloud-based OS that’ll allow just about anything to be done, is vast.

So I’m proposing Rain, an open-source cloud-based multi-device operating system that’ll just work.