August 26, 2013

Why GNU/Linux distros are still not rivals for Windows and OSX on desktops

Some time ago I wrote a post about my job where also said that GNU/Linux distros are still not rivals for MS Windows and Apple MacOS X on desktops. One thing should be mentioned here: this is true if we speak only about usability and not "ideology". It is time to answer for my words. So, let's speak about this.

At the beginning I had plans to write one document, but later I understood that this document will be very big and I will write it very long time (having regard my current load). So I decided to write a several posts on this theme. This is the first post from the series. In this post I will concentrate on shortcomings of current GNU/Linux distros, in the second post I will try to write what should be done, to create a really usable GNU/Linux distro which can be a rival for proprietary systems.

1. “Usability" vs "user friendly"

First of all let's agree what do we understand under the "usability" word. This is very important to understand, because everything which I will say later will be based on this definition.

If we will look at Wikipedia we will see the next definition: "Usability is the ease of use and learnability of a human-made object". The central point in this phrase "ease of use". Unfortunately, many people do not really understand what does it mean. They are thinking that "ease of use" phrase is an analog of a phrase "user friendly". And of course any user thinks that the "user" in "user friendly" phrase is he. And there is the root of the problem. In fact these phrases are not equal.

Let me explain this. Some time ago, when we were working on Mandriva 2011 we have lost many our users because of simple thing: in beta version of the our OS we removed an item - "Create text file" from the context menu of Dolphin file manager. I do not want to discuss about necessity of this item here (we will return to this fact later) just take into account, that millions of users of MacOS X even do not know that it can be a problem. Do you really think that an item "Create text file" in file manager's context menu is part of "usability" having regard the fact above? No, this is just matter of habit.

This is a difference between "user friendly" and "usability": "user friendly" it is always "personal" characteristic (how operating system is satisfies to the your requirements) when "usability" is a common word which means how easy people can use an operating system. Please look at this difference. If you will look at it carefully you will see an obvious corollary: having regard the fact that we have several billions of users it is practically impossible to create an "user friendly" operating system for all of them (maximum that you can do here - to make an OS for some group of people, for example - for system administrators), but we can create an "usable" operating system (operating system which all of them could use).

Moreover, "usability" encloses not only UI of operating system but hardware support, applications, etc. So, this is a complex definition.

2. The most beautiful opportunity and the biggest problem of Free Software

Now that we are know what difference between "usability" and "user friendly" in case operating systems, let's speak about free software. The most cool thing in free software is freedom. Freedom of choice. Do you want to use Emacs? No? OK you can use Vim. If you do not want to use Emacs and Vim you can use Geany, for instance. But even if you do not want to use all of them, you can use any other text editor at your choice. This is normal situation for any operating systems. But only free software allows you to do one thing that is not allowed for proprietary software: you can use your version of Emacs, Vim, Geany, etc. You can do a fork or can patch the code of software which you want to use, rebuild a package and use it, without any claims from third-side. It is beautiful. Isn't?

Apparently, yes. Unfortunately this is only the obverse the medal. The reverse of the medal is segmentation of a market. The more popularity of a product - the more risk of segmentation. To avoid this, developers of many products are trying to take into account all wishes of their users. Some teams do this  intelligently, some teams not. A good example of a team of the first type - GNOME Team, a good example of a team of the second type - KDE Team.

As a result of this politic of KDE Team I can cite one very significant example: some time ago (in 2010) we had experiment in Russian schools - we tried to migrate all schools in one very big Russian town (more than million of people) to a distro based on Plasma Desktop (KDE). The project had to be abandoned because students and teachers were confused by its various settings.

Btw, that is why simplification of Plasma Desktop was the first thing which we did in Mandriva 2011.

3. Flexibility, flexibility, flexibility...

There is one difference between MS Windows and Mac OS X and (practically) all GNU/Linux distros - first two are trying to be "usable" but GNU/Linux distros are trying to be "user friendly". Yes, they trying to be "flexible". 

Just look at Fedora, for instance. What will you see? Many desktop environments and window managers: Cinnamon, GNOME, KDE, Mate, etc and many more stuff. Most of them are incompatible to each other, so to install an application I should be sure that this application will be compatible with my DE. Otherwise it can be very hard (or practically impossible) to unify this application with DE. For example, just try to unify Empathy and KMail or Nautilus and Nepomuk. We have many applications, but most of them live their own live, thus, sometimes is very hard to find a really qualitative application.

But even if you will find it is not a guarantee that you will be able to use it. Following the "user friendly" ideology many GNU applications have become very flexible. And this is has become a real problem for users and developers. For example, look at Chromium Browser - it does not use native GTK+/KDE window decorations. Do you know why? The answer from developers:

"That's because there are many different window decorators in Linux and it's impossible to implement tabs-in-window-title working everywhere, so we are using our own decorations."

Another example: try to use hotkeys in Eclipse in any GNU/Linux distro with, for example, Russian keyboard encoding - you won't be able to do this without touching the code. This is never happens in Windows or Mac OS X.

4. Flexibility everywhere

Another problem of flexibility is low quality of localization for many free applications. It does not matter for English speakers (or for people, who can use en_US localization for their desktops), but for many other people it is still a very big problem. To create some good localization for your application you should have a strong team of native speakers for a language on which you want to localize your application, because only this can guarantee more or less normal localization. Apparently, only very popular applications/teams can have this privilege, other are trying to work with practically everyone, who trying to help them. Unfortunately, very often these are people (students as a rule) who even do not know basic localization rules.

The worst part of this is that many applications have only partially localized interface. For example, 30% or 50%. From the quality side, partially localized interface - it is even worse than if you had no this localization at all. Unfortunately this is not a common practice in free software - to have a strong quality rules for localization teams. I know only the one team who does that - Mozilla.

Finally we still have many problems with hardware and accessibility of laptops/desktops with pre-installed GNU/Linix distros. It is practically impossible to find a good laptop without pre-installed operating system from Microsoft or Apple. So you have to pay a “Microsoft tax”. And even you will pay it, it is not guarantee that your GNU/Linux distro will work on your hardware. That is because of lack of users base. Only Ubuntu can boast of more or less good users base (~12-15 millions of users), any other distro even can’t dream about this. For example, OpenSuse has ~400 thousand of users

5. Community

But even if you will have a big community it will not guarantee that you will have a profit from it. Money? Yes, money. Here are should no be illusions: every developer and every commercial company should have enough money to do their work and later. This is a very big problem for companies/developers who are trying to work by free software model - in fact we have practically insolvent community (please don’t forget our theme - we speak only about desktops/laptops). Most people in this community are just "freebie lovers”. You will understand this if you will recall the example which is cited before. Can you show me at least 1 user who abandoned MS Windows or Apple Mac OS X because of an item in menu? It is practically impossible even to imagine, but in GNU/Linux world it is reality. Why? Because of freebie. If you do not like some distro and do not want to use it you can use another, another, another, another and so more than 300 times. So to attract attention of users, developers, as I already said, are trying to be “flexible”. This is really strange: to attract attention of users, you should do something that will satisfy them, but if you will be too flexible this can kill you.

6. The way we should go

There are many things to do. I will write about this in a next post. Stay tuned. :)

4 коммент. :

You've never installed Windows from a Retail disk have you?. It's completely bare, unusable; until you add Applications. OEM's add Applications to a PC bought in the store, that's the difference. If you buy a Linux PC from somebody like System76 you get Applications the same as Windows. And by Default, Linux has more Applications on a base install than Windows.

On Usability, I always recommend Xubuntu to new users. It has the Software Center so they buy or get for free, various applications and games. That OS is 100% usable and can be personalized for every newbie I have ever switched. I don't recommend Gnome or KDE for new users, the UI is too confusing. XFCE has been the most successful in my practice.

As far as Windows is concerned, I find it to be unfriendly not just to new people, but advanced users as well. Recent incarnations of Windows is complete unfriendly and not customizable at all. And as always, you are stuck with what Microsoft wants you to have. You have no choice with Windows.

And hands down, Linux beats Windows in friendliness. I've seen users become so frustrated with drivers and getting things to work properly in Windows. Whereas in Linux they simply plug it in and it works, same as a Mac. And they can customize the UI easily, unlike windows.

The thing is, you have to find the right distro for the person you are installing it for. You can't throw something at them and then leave, in some cases. But for the most part I have found you can give a new person Xubuntu and point out where everything is and they are good to go. Throw in a few bookmarks to places like gamingonlinux and askubuntu and they are set. The Software Center and Steam takes care of the rest. Before I leave a person, I always install the proprietary graphics drivers and I set up Xubuntu to be similar to the default classic Windows environment.

An OS should be invisible to the user. That's what XFCE does, Windows 8 puts the OS on display and gets in your way of being productive. And why in the world would any sane person use Windows in 2013 after knowing the NSA has a built-in Trojan is beyond me. Heck you might as well let in all the Malware and Viruses. I don't recommend Windows to anybody, Windows has turned into the US Governments pet Spying project. That's why it doesn't matter if Ballmer resigned, it doesn't change anything. In light of the NSA debacle, I would never recommend a Business to use Windows after the recent events of the NSA stealing data from Companies. You are risking your Companies work and the trust of the Customers by using Windows.

I disagree, but opinions are like ***holes... Windows 8+ completely sucks. Let's put it out there. Mac OS X is undergoing a major face change and it doesn't look all that good. Both OS's are almost becoming irrelevant in the new age of iPhones and iPads (and Android equivalents). In a world where you used to pay $100 for crappy apps that did little, but now are commoditized to the point you can download a free OSS version, Linux does a great job. Yes, many apps are available on other platforms, but Linux has much more and makes it simple. I run Linux and Windows 7. I prefer Linux. So what if it didn't exactly conquer the, now mostly irrelevant, market? Who cares? If you just ignore Linux based on that thought, you're missing out on some great stuff.

> You've never installed Windows from a Retail disk have you?. It's completely bare, unusable; until you add Applications

Not quite. Let's see what software is built-in directly in Windows 8, for instance [1]. Not bad for "completely bare and unusable" operating system. Windows 8 has Software Center too. Users, who use older versions of MS Windows can use something like

So I partially agree with you, but anyway, it is not a real problem - the real problem is that users can not use GNU/Linux even after installation of many applications.


Linux will appeal mostly to hobbyists and power users. Like people who jailbreak their IOS devices or root and install ROMS on Android phones and tablets. People want to use what their computers came with. Its why so many Windows users still have XP. I had a friend who wanted a budget computer when his old Windows machine broke.

I went on-line and bought him a Dell and installed Zorin Linux. Oops... the wireless didn't work. Even with the suggested wireless drivers in the Ubuntu software center, no go. I finally figured it out but it took well over a hour and I use Linux. This laptop came with Vista which worked fine.
Most distros other then Ubuntu and a few more are maintained by unpaid volunteers. Bug fixes can be slow compared to OSX. lets not discuss MSFT here. If someone asks me about Linux unless I know they are patient and willing to use Google I suggest Apple.

Post a Comment