The Last Linux on the Desktop Article — Hopefully

Lately, there has been a “Why linux isn’t ready for the desktop” article every 3 days. Most of the time, these articles originate from a lack of understanding or acceptance of the open source system. I’d like to try to address some of the common arguments against linux here, and try to help people understand why linux probably won’t be on your desktop for a while.

Keep in mind, I am a linux user (yes, on the desktop) so you will DEFINITELY see some bias here. I believe the points are still valid though, so think before you flame me.


DISCLAIMER: The views expressed below are largely the author’s opinion. You may disagree, and we look forward to any debate.


Linux isn’t as easy to use


Isn’t it? How many of you used linux as your first computer? I’m guessing very few. As we all know, “different” isn’t “harder”. I’ve been doing research on this topic, and I’ve taught brand new computer users on linux (GNOME) without any trouble. But this is not the point. The key thing to look at when criticizing open source is to remember that Open Source is still largely made up of volunteers. As much as they want to help you, you have no right to demand ANYTHING. For a very long time, people were still trying to get basic functionality in Linux. Now that that has been accomplished, people are finally able to devote their time to “ease of use”. Linux is improving. I am a relatively new linux user (a year and a half), and in the short period of time I’ve used linux, It’s improved leaps and bounds in usability. It’s fine if linux isn’t perfect for everyone yet, it’s getting better. These things don’t happen in a day, and whining every week is just insulting to the developers.


It’s ok to criticize, though. People’s comments really do help, but most of the articles simply say, “linux isn’t as easy as Windows”. If you have a specific feature that you think would help usability, submit a bug report to KDE or GNOME. You will be surprised at how quickly they may address your problem. Remember, “easy” is subjective, so help us all out by being specific.


I would go into more detail, but I am still conducting research. There are already lots of studies out there though, and many show that Linux is very easy for completely new computer users.


Linux isn’t as polished


What does “polished” mean? In my opinion, it means that the inner-workings of the OS are hidden from the user, and a user is presented with an environment they feel is consistent. This is against the philosophy of linux, or at least has been for a long time. Linux is about being open, and letting the user tinker with everything. Saying that Linux shouldn’t do that anymore is a hard thing to convince people of. Luckily though, this same spirit has allowed people to take linux, and make it whatever they want; in this case, “polished”. Taking away “features” is a lot easier than adding them, and once again, I have to say, “patience”. These things take time. No one in their right mind would say that Linux isn’t moving towards polish. If you want to help, write something and give it to KDE, GNOME, or your favorite desktop distribution.


Linux is fragmented


In my opinion, this couldn’t be further from the truth. Linux has one of the most tightly knit communities I have ever seen. There are a few sub-arguments that go with this “fragmentation”. One is the oft-heard “There are too many distributions!”. All I have to say is, Why? Why are there too many distributions? What is forcing you to use every single one? Nothing is. All distributions ARE united, so its not like there are 100 different operating systems. What unites linux distributions? For starters, they all use the Linux kernel. They all use the GNU tools. They all use XFree86. They all use glibc. You get the point. Maybe one or two distributions (embedded probably) don’t use these things, but if 95% of the distributions do, I wouldn’t complain. Linux distributions are united because they all use most of the same software. The only “custom” software is installation and package management. Installation is something few people will have to do, so it’s not that important for compatability, especially if the “desktop” goal is to get it pre-installed on machines. Package Management isn’t that important either, because all package management systems do basically the same thing. They manage packages. You just have to learn the new commands, and even then, “apt” is a prevailing system among distributions, so learning that is usually enough. Windows98 is different from WindowsXP. Things change, and if it’s only slightly (like between distributions), it’s not hard to adapt.


Some people say there should only be one or two distributions. This is illogical. Linux has a wide variety of uses, and its openness allows you to create specialized versions. Off the top of my head, I know we would need a firewall distribution, general purpose distribution, server distribution, embedded distribution, intermediate-level distribution,”from scratch” distro, etc, etc. It is ridiculous to say that I should use Fedora on a cell phone or Gentoo should be used by the complete beginner.


Also, it makes no sense to believe that everyone would like a certain distribution. People have different tastes, it’s that simple. I believe most people realize this. Many people do not like Windows, so why be like it and give people “one size fits all”? It clearly doesn’t fit all, and thats why many of you are switching, or looking to switch.


Now that there are “too many distributions”, people complain that it’s impossible to get a package for your distribution of choice. The only place this is a problem is in closed source applications. The beauty of open source is that all the developer has to do is release a source tarball, and let the package managers package it up for them. An online download system comes included now in almost every major distribution. Surfing to a website, and downloading by hand is becoming archaic. Is this different than Windows? Absolutely, but it is better. I use a smaller distribution (ArchLinux), and I have every piece of software I could want in the repositories. This exists, even though I have yet to see a website that distributes Pacman Packages.


Then there are people who do not see the point of both KDE and GNOME, and programs like that. They just say people should work together for the “greater good”. This is simply unrealistic. Not everyone can get along. If society worked like this, we’d all drive fords (thank you to someone who made this comment), and all eat Chocolate Ice Cream. Competition is good, even if it sacrifices compatability. Because it is much easier to take two feature rich programs and make them compatible (freedesktop.org) than to try to take a program and add lots of features while keeping it stable.


Linux moves too fast


This is probably the argument that has the most validity. Linux moves fast. It’s always changing, and always improving. The question is whether it is “too fast”. Personally, I find this speed a good thing. Patches are quick, and new features are always being added (for free). But someone might rather have a system that only changes once every 2-3 years (like Windows). People say this isn’t possible in linux, and developers won’t be able to create applications because the APIs are always changing. Luckily, there is already a perfect solution for this, Debian Stable. You only have to upgrade every few years, and it is well tested and as the name implies, stable. Now, for developers, this won’t be a solution, because you can only support a library that is two years old. This only plagues closed source developers though, because if the application was open source and really good, people would help you port it. This has been proven by the many forks of otherwise dead OSS projects.

Linux doesn’t support commercial software/idealogy


Now, you can’t repackage software with closed source applications. Is this a problem, yes. But once again, you have to remember why the GPL (which most linux software is released under) was created. It was created to help promote a completely free(dom) system. Closed Source software goes against this belief, so it naturally isn’t very compatible. This is an ideological stance, and no one has a right to say that the “open source idealogy” is wrong. People with different beliefs will just have to get along. There are different religions, and while they don’t agree with each other fundamentally, many manage to “mesh”. And just like the real world, sometimes two groups simply won’t be able to get along. When choosing linux, you must keep this in mind, and if you truly disagree, you shouldn’t be using GPL software.


Then comes people saying that Linux/Open Source would ruin business. Let’s assume for a minute that the entire world used nothing but open source applications. How would a business make money? Simple, through services. Another popular one will be customizing already available open source applications for a specific companies needs. Both of these are not “temporary” and would provide a source of income. This is once again, different. We have to remember that Linux is and will always be ideological, at least in part. The idea is to change society, not just fit in with it. I’m sure many of you are afraid of change, and that’s ok, we all are. But Open Source is helping to usher in a new economic scheme. This will obsolete the current system of “shareware” and proprietary software. Please remember that it is not societies job to support an economic model. Do not feel bad if it puts a few people out of work. People will have to adapt, but few can say society would be a worse place if software was free(dom). The Open Source movement parallels many things in society, including its increasing globalization. We are one world, and I for one want to support that. You may call me a zealot, but I try to think things out rationally, and my opinion may change in the future.


There are too many zealots


As I’ve been repeating, Linux is in part, ideological, and this can not be avoided. People care greatly about this operating system because we’ve all invested our time, money, and code into making Linux great. There is nothing wrong with having pride in something you do. This is an advantage though. People are proud of their work, and don’t want to see it fail, so they will try their hardest to make it the best possible. Companies like Microsoft could care less if they make the best product, as long as they make money. Eric Raymond has discussed this greatly, and you can read “The Cathedral and The Bazaar” for a more in depth look.


Are there people who believe linux is without flaws? Yes, but there are people like that for every operating system. The majority of people simply want to make linux better. As an end user, you have thousands of people DOING WORK FOR YOU, all out of the goodness of their hearts. Could you ask for more?


But alas, I’ll throw in some zealotry, and try to appeal to your moral nature. Ignore this paragraph if you don’t like getting preached to. There are people who will say something like “I only use what product works best, I don’t care about politics” for a reason to choose Microsoft over Linux on the desktop. This is what causes monopolies and other problems in the first place. In a society driven by money, EVERY purchase you make is inherently political. When you buy something from a company, you are saying “I Support what you are doing”. Microsoft is very well known for its unfair tactics and extreme amounts of FUD. Even if Windows is the superior platform, you can’t just ignore the problem and say that you don’t want to get political. Now is a wonderful time to stand up and really think about whether you want Microsoft controlling your computer. You may decide that you are comfortable with that, but there is no reason not to think about it.


Linux is slow


There is really no “argument” to this, it’s opinion. But I’d like to clear up one thing that is often thrown around. “X is slow”. X11 is a protocol, and can’t be slow. Only a specific implementation can be slow. If you feel XFree86 is slow, please provide some evidence, because I haven’t seen any proof of this. The problem is that many distributions like to turn everything on by default. I was playing with someone’s Mandrake installation earlier, and they had 3 different servers running on a desktop system. This was obviously making things drag.


In my experience, the default install of Windows is rather bloated as well, but you often hear people saying, “If you just turn off unneeded services, windows flies!”. Please take this attitude with linux as well, to be fair.


There Are No Drivers


Yes, there are. Linux supports more hardware than Windows, it’s that simple. The problem lies in supporting common “desktop” hardware. For a very long time, this was difficult because companies would create cheap hardware to save money. This cheap hardware wasn’t as compatible, and didn’t conform to standards. I’m reminded of the HP LaserJet1000 (not the 1012), WinModems, and WinCams. Luckily though, the tide is turning. Many companies have pledged to improve linux support, and I believe them. But if you expect a driver CD for linux, you aren’t seeing the big picture. Ideally, the drivers would be allowed in the standard kernel (and be open source), allowing you to get full hardware support “out of the box”. Linux already has out-of-box support for much more desktop hardware than Windows. If you want proof, it comes with your new hardware. Windows probably won’t support your brand new video card at a decent resolution, or it might not even recognize your sound card. Windows simply doesn’t ship with enough drivers, so you are forced to use a CD. I have a modern system, and all my hardware is supported with the standard linux kernel, no extra driver needed. And yes, this is a commercial system, so its not a “half baked” home built box. That said, I understand “it works for me” isn’t enough.


No Applications


Have the big name applications been ported? No, they haven’t. But, the idea is to create something better, something open source. Ideally, we want a replacement, not a port. With open source programs, you rarely have these porting issues, as some volunteer will port the app if it’s good enough. You don’t depend on a single company for new features/fixes. For normal desktop work, Linux is there. Web browsing, word processing, email, and PIM are already mature and stable. There are of course parts where linux drags behind, but it is improving every day. Saying that there are “no applications” is false. Located here is a great table of replacement apps. There are many other tables like this as well.


I know what you’re thinking. “But {insert expensive proprietary app} isn’t available!” Well then, Complain! Write to that company, and ask them to port the software. They won’t port it unless they know people care. Applications are something that will come in time. Linux is still “emerging”, and the process will be slow. First, the foundation has to be laid, and that is what the main focus should be on. As linux as a development platform matures, we will see the big names finally cower under the pressure. 😉


Conclusion


I want people to take one thing from this. That is to remember that linux is coded by regular human beings. They can only do so much, so quickly. Linux will come to the desktop, eventually. Please do not try to force it. Like the IBM commercial says, “Linux is open….The Future is open.” Linux can be whatever you want it to be. There is nothing stopping you from helping out with one of the Desktop Linux distributions or your favorite Desktop Environment/Utility. If you lack coding or technical skills, money is always appreciated(and for some, beer). 😉


Lastly, you might be saying, “I already knew this!”. These ideas are just a compilation of all the flame war’s I’ve read. Feel free to respond, just PLEASE not with another “linux isn’t ready for the desktop” article.

129 Comments

  1. 2004-01-27 5:22 am
  2. 2004-01-27 6:39 am
  3. 2004-01-27 6:48 am
  4. 2004-01-27 6:51 am
  5. 2004-01-27 7:23 am
  6. 2004-01-27 1:04 pm
  7. 2004-01-27 1:44 pm
  8. 2004-01-27 5:50 pm
  9. 2004-01-27 5:58 pm
  10. 2004-01-27 6:02 pm
  11. 2004-01-27 6:05 pm
  12. 2004-01-27 6:39 pm
  13. 2004-01-27 7:16 pm
  14. 2004-01-27 8:53 pm
  15. 2004-01-28 12:04 am
  16. 2004-01-28 12:51 am
  17. 2004-01-28 1:01 am
  18. 2004-01-28 1:18 am
  19. 2004-01-28 1:24 am
  20. 2004-01-28 2:47 am
  21. 2004-01-28 4:48 am
  22. 2004-01-28 5:52 am
  23. 2004-01-28 9:18 am
  24. 2004-01-28 8:39 pm
  25. 2004-01-28 11:09 pm
  26. 2004-01-29 12:48 am
  27. 2004-01-30 5:30 am
  28. 2004-01-30 5:42 am
  29. 2004-02-03 4:46 pm