March 7, 2016

Elementary OS: A Distro that Dreams of Disrupting the Linux Desktop

elementaryOS-image-elementaryioPMElementary OS has been making waves for quite some time, and the distro has already created a loyal fan following that’s helping it become a self-sustaining product. I am not an elementary OS user; I am more of an Arch Linux or openSUSE guy, but I do run it in a VM, to keep an eye on what’s going on with this promising distribution.

Elementary OS is trying to disrupt the desktop Linux world in a couple of ways. It’s aim is to create a distribution that approaches the desktop from a design point of view instead of the crude “there-is-a-command-for-everything” approach that’s popular in the Linux world.

So far, the company has been successful in achieving this goal. The latest release of elementary OS, Freya, is one of the most polished and good-looking distributions I’ve seen. One reason behind such this design-centric focus is that the founder of the project comes from a design background.

From Windows to Linux

Daniel Foré, the founder of the project was originally a Windows XP user -- like many people. But, he was dissatisfied with it. “I was doing a lot of modifications on Windows XP, doing things like adding shadow to windows and stuff,” said Foré.

He dipped his toes into Linux with Korora Linux when it first came out in 2006, with the XGL live demo. All that shiny Compiz stuff got him excited about Linux. Foré said that initially he didn’t know how to dual boot, so he was using two hard drives and would boot from either of the two drives to go to Linux or Windows. Korora, however, introduced him to the open source development model. “I came to Linux with a potential of what things you can do with it. I started working on icons. I was using Inkscape on Windows so I was already familiar with open source software,” he said.

DanielForeAnd, once he began using Korora, he started doing all his development work on Linux. “I started learning about iconography and then started developing the elementary icon theme.”

Then, he went to Gentoo, and that's when he got deeper into the open source world. He began uploading his work to DeviantArt and GNOME-Look.org. “I started hacking around a bit with PyGTK on Gentoo, but I didn't get very far or make anything terribly useful. I wanted to build an updater app for Gentoo!” Foré said.

For the first couple of years, Foré stayed purely on the theming side. Then, he got involved with Gnome Do and Docky, and that’s when he started doing more interaction design. He got exposed to the idea of designing software and not just themes. He began getting interested in finding out what other applications he could apply this new learned skill to.

The Beginning of elementary OS

Foré came across a developer -- known by the name ammonkey -- who was working on Gloobus preview, which was a Gnome application based on Apple's Quicklook. ammonkey had maintained a fork of Nautilus to build this quick view function. “We started talking about it. We already have a Nautilus fork, what else can we do to it? And we came out with Nautilus elementary,” said Foré.

The project was mentioned by OMG! Ubuntu, which has a huge following in the Ubuntu world. That coverage gave them some much-needed exposure, and other developers started inquiring about how could they get involved. That’s when the project took off – they made a cool app and then they wanted to make a complete desktop environment that was full of such cool apps. That was the foundation of elementary OS: a clear and very tight focus on user experience, polished and easy-to-use, with fast yet simple applications.

The company could have chosen the path of other desktop environments where users could have used this new desktop environment on any distro of their choice. Instead, they chose to create their own distro.

“The primary motivation was from the user experience point of view. It is a lot easier for someone to download a single file, a complete operating system, instead of downloading different components and then trying to figure out how to build it. Still, today, we have this problem where people want to install Pantheon (the desktop environment of elementary OS) on Ubuntu and they run into all kinds of problems because it’s not configured correctly underneath; they have overlap of settings from Unity, Gnome, or other desktop environments. So, by providing them a full ISO, we can give them the experience that we developed all the way through, instead of having them try to fumble through it and try to make it work,” said Foré.

It’s not just the design principle that sets elementary OS apart from other distributions. Foré believes that what sets them apart are the applications. He said, “If you look at pretty much any other Linux distribution, you are going to get a bundle of popular Linux apps, but these apps are not built by similar teams. They are not using the same toolkit or same design language. So, you are going to get a package that's not very cohesive. With elementary OS, you get a desktop environment and a suite of applications that were all purpose built to work together. These applications are using the same design language, throughout. When you get used to how one thing works in one app, you won’t have to relearn that when you open another app, because the design language is same. So, it's a lot easier to jump into the system, get on groove, kind of go on autopilot, and it just works instead of constantly hunting where the functions are.”

Developing for elementary OS

Foré believes that the idea of “Linux” apps will go away, and application developers will target distributions as platforms. Instead of writing applications for Linux, which could run on all distributions -- from Arch Linux to Zorin OS -- they will write apps for a particular distribution.

Foré thinks this approach gives developers a deeper integration with the operating system. There are a few developers who don’t see much traction in the general Linux world and now they have started to develop their apps exclusively for elementary OS. The developers of Vocal and Birdie are two such examples. This approach makes life easier for the developer, because instead of working with the internals of KDE or Gnome or whatever, plus the operating system, they can target one platform. It helps users, because they know the end-to-end experience they will get is the experience that the app developer had in mind. And elementary OS is not the only one doing this. Canonical is also doing something similar -- albeit with a totally different approach -- with its Snappy apps.

There is a flip side here; the rest of the Linux world won’t be able to use such apps. At the same time, it may be challenging for the elementary OS team, with their comparatively smaller user-base to get developers of big apps like Gimp, LibreOffice, Chrome, etc. to write apps for elementary OS. So, elementary OS won’t get an “elementary-fied” version of these major apps, and the rest of the Linux world won’t be able to use elementary OS apps. But, given the diversity of Linux – there are hundreds of distributions out there – this is a risk elementary OS can afford. This risk also becomes their unique selling point and sets them apart from the crowd.

Despite this radical approach, the project seems to be doing well. Unlike other distributions that get money through a foundation or commercial vendor, elementary gets financial support from users. They have adopted a “pay-what-you-like’ model where users can pay a desired amount when they download the operating system. It has been working so well that they have two full-time developers and one part-time web developer.

Foré has considered other revenue generation models -- something similar to a subscription-based model where there are additional features or exclusive updates for paid users -- but has rejected this idea, stating that he would want all features to be available to all users. He is also exploring the possibility of the “pay-what-you-want” model for apps on elementary OS.

I asked about the possibility of generating revenue from hardware -- working with select hardware vendors and getting a share from the sales. In that way, elementary OS team could help in designing the hardware itself that gives users an Apple-like experience -- all the way from the hardware to software. Foré said that they have been talking to some vendors, but admitted that hardware is a really tough business. “Apple benefits from the economy of scale. They can maintain a thick margin on hardware. I have spoken to different hardware vendors including System76, and the margin on hardware is really thin so there is no possibility of generating revenue from hardware. However, there is a lot of interest from users who want to get hardware with elementary OS pre-installed on it. ”

Getting their own dedicated hardware would also allow elementary OS to bake in features that they can’t offer on “install it yourself” hardware. Foré said they are trying to find a good hardware partner or develop a hardware certification program so when you buy elementary OS hardware, you know everything will work out of the box, with additional features.

Conclusion

I see a new face, a new phase, of Linux in elementary OS. They are executing some radical ideas that may not sit very well with the Linux world, but we have reached a standstill in desktop Linux. We need someone to shake things up; we need someone to disrupt it. The approach may work, or it may not, but it’s something that desktop Linux needs. Ubuntu is trying it, Steam OS is trying it, and now elementary OS is joining the race. As long as it runs the Linux kernel, and it's open source, I am all for it!

Click Here!