Thursday, July 26, 2007

Why Linux has failed to become a viable desktop OS

Linux has been an OS since 1991. It has been adopted by many web hosting providers and is a heavily used server platform. So, why can't Linux be a desktop OS? Simply put, because it doesn't have the features of a modern day desktop OS.

First, let's define what a desktop OS truely is. To me, it has the following:
  1. A GUI application for everything
  2. No reliance on the command prompt(i.e. the user shouldn't have to touch it for anything, not installing an application, nor installing a driver)
  3. A complete and total reliance on binaries for distribution of software/drivers. Open source software is nice- but don't require users to compile software. Open source software should be distributed exclusively in binary form(except in the svn, for development purposes).
  4. Standards for development. Drivers should have to conform to a standard, not just be floating pieces of code in a kernel.

I'll start with something that's bugged me every time I've done a Linux install: Driver support. It's an ugly thing in Linux. A very ugly thing. Often, this involves recompiling the kernel. I remember on my desktop, when I installed ubuntu, I couldn't get the drivers for my Audigy 2 Platinum working completely(I believe I was trying to get the alternate RCA recording ports working). I spent days trying to figure this one problem out. I ended up reinstalling windows, and within 5 minutes of clicking "update driver" in the device manager, I got everything working.

Another example is VMWare. When I tried it, VMWare for Linux required me to recompile the kernel to get the necessary drivers installed. Why? On Windows and Mac, I can install and use VMware without so much as restarting my computer. This should show, more than anything, how far Linux is behind Windows and Mac in terms of usability.

Now, in order to look at solutions for Linux, we must consider an operating system with a very similar (and recent) problem: Mac OSX. Mac OSX is a POSIX compliant operating system, just like Linux is. I know the kernels aren't identical in many ways, but they do share some commonalities. When Apple developed Mac OSX, they wanted to have a driver development system which was both stable, documented, and was easy to develop for. They chose a kernel-safe variant of c++(eliminating exceptions, and a few other things, which are unsafe in a multi-threaded kernel). What's unique about IOKit is that it has layered drivers. For example, a network card might take the following set of layers: a pci bridge driver, a pci device driver, a controller driver, an ethernet driver, and a network stack. So, what's so great about this driver architecture? Well, for starters, the layering means that driver code gets reused(i.e. to write a driver for another pci card, say a sound card, we needn't re implement a PCI bridge driver). Another great thing about the architecture is that it relies on kexts, kernel extension. These are binary files which are loaded at runtime by the OS and provide additional driver support. Note that you do not need to alter the kernel in any way to modify a kext, the kext files are completely separate.

I'm not very familiar with the windows driver architecture, but I can speak from a user's standpoint, that I have never had a driver not work when I clicked update driver and found the .inf file in the device manager. It's this kind of inter-interoperability that Linux lacks. Linux needs a device manager where I can click update driver for any device, find the driver file, hit OK, and be done with it.

Recently, it has been proposed that Linux have user mode drivers(that would not involve recompiling the kernel). This is a step in the right direction, but it is lacking in two ways. The first being that there are still no standards laid out for drivers, and the second being that there is no support for devices needing a lot of speed(like video cards) due to its lack of DMA support. I'd like to see this effort succeed, but first I think the kernel developers need to develop something similar to Apple's IOKit standard with kernel extensions supporting basic things like DMA and layered drivers.

My next major gripe with Linux lies with command files. One of the biggest frustrations to be was the x.org configuration file. It is of monstrous size, and you have to edit it to change a simple thing like resolution or bit depth. Now, I know the next release of x.org is supposed to eliminate the configuration file and enable dynamic setting changes via a GUI, but my question is this: Why has this taken so long? Windows 95 had this feature, and so did Mac OS(for a long time, I don't know the initial release where they added it). Having dynamic resolution changes is a feature which any desktop client needs to have, and I'm perplexed as to why it took so long(It was first made available at MIT in 1984(the same year the Mac was released)). Configuration files need to be eliminated entirely. It's inexcusable to have a configuration file(expected to be edited by the user) in any part of a desktop app. It should all be done by GUI.

Moreover, x.org is only one small project with a configuration file. There are many others with similar problems. Linux developers need to realize that desktop users don't want to touch configuration files. All preferences should be set by GUI, just like Windows and Mac OSX.

Now, although I have these gripes, I do give Linux some credit. Apt-get is pretty amazing- you can get any app with a single command. Additionally, Linux is rock solid, which is why it's used in so many webhosting environments. Linux just needs to become a little desktop friendlier by looking at what makes Windows and Mac OS easier to do.

I want to address one issue additionally, the elitist attitude of "Linux wasn't meant to be Windows." This is true to some degree- Linux wasn't initially designed to be a desktop OS- but Linux needs to change to become similar to Windows- and Mac OSX- if it wants to gain marketshare, by adapting things like well documented kernel extensions, removing configuration files alltogether, and making GUI tools for everything.

One of the problems I see in Linux, a possible reason for why it has not been successful in the desktop market, is because developers have no reason to make their applications user friendly. Whereas Apple and Microsoft would loose significant sales if their applications weren't usable, Linux developers loose nothing. Developers develop applications for themselves, and as such may not see it important to eliminate configuration files or add in a full featured driver implementation similar to IOKit. To this, I say to the developers: Make your applications easier to use; it will result in more donations, and you can offer commercial support if your application becomes popular enough.

I hope Linux developers will take a good look at what is holding Linux back from being a desktop OS. It is possible to fix these problems- and make Linux a great desktop OS, even better than Windows or Mac- but only if developers make it their goal to do so.

32 comments:

Rayne Van-Dunem said...

(Cross-posted to Digg)

Of course the FOSS devs don't stand to lose anything substantial with a lack of users, at least, not as far as I can see. MS and the others stand to lose money based on their continued usage of the age-old medium-based model of software distribution. The FOSS people, on the other hand, only care about your ideas if you are a developer and have a patch to submit (y'know, the whole "Shut up and code" thing). They'll only consider your demands if you know your way around C/C++, and even then they might not accept your patch "for technical reasons", as in the recent scheduler issue.

That makes it all the more troubling, though. If GNU/Linux is mostly served raw for devs, then what about the users? Of what use or good are the users to Linux?
And why do the Linux advocates need users so badly if the #1 need for Desktop Linux movement is a greater diversity in applications? Don't those advocates, when they publish their need for more users, really mean that they're crying for more developers?

Unknown said...

Yet another in an endless series "Why Linux will never..." rant. He couldn't get his audio card working so he reinstalled Windows.

The reason Linux "hasn't caught on," if one ignores triple digit growth in desktop users year to year, is that Microsoft uses various ways to make life difficult for hardware manufacturers to sell computers without its product. Solve that, as we are beginning to do, and all these mysterious problems will resolve themselves.

The Dell decision to preload Linux is the first hole in the dike. Others will follow, and within a few years, who knows?

Jasper said...

Could you please give examples of applications that are difficult to use?

I use KDE running on Sabayon 3.4a and there is nothing I have encountered that is difficult to understand or use.

Frank said...

Yeah, I don't even know why I bother to read these ignorant rants. I'm like stupid or something. Each time I read this crap I get angry - for some reason I can't stop reading them though. Must be a psychological problem of mine.

Market share? You've got to be kidding, right? I've been using Linux exclusively on the desktop for years. Do you think I give a rats ass if 60% of the world uses it? Does the world even care if 10% of them use it. No one cares, give it a rest.

Use Windows or Mac if you want to. As a GNU/Linux user it won't affect the outcome of my day one way or the other.

Better yet, take up skiing or mountain climbing. I'd rather people do that than waste their time pontificating about the merits of Linux vs. this or that.

Geez.

Give me a break. Geez.

Igor said...

btw, you can't install VMware on Mac os... because there's no a VMware for Mac :D

I think that Linux is ready, the problem is that some guys(like you) like to be an expert in Linux as you are in Windows(Mac is actually harder than Linux sometimes),

The point is that Linux will be the best Desktop, because it have more future than MacOSX or Windows.

Everything in Linux(for the normal user) is easier from installation, browsing, adding(supported) apps, etc.

But, if you want to create a Virtual Machine in a unsupported(and also advanced) kernel... of course it will be harder, but who in the world(normal people again) need a VM?

Unknown said...

All of your reasons for why Linux is not a Desktop are all completely wrong.

ubuntu installs most all you need, yes some driver issues but if you can not find a driver using Windows it is equally hard to track one down.

The most important reason why Linux is not Windows is because it is Linux and not windows!

Where does one measure success? When you make multi-billions and 98% of users are FORCED to used Windows? Or when you have a far more stable and well designed OS with more free software then you can think about in one time.

The largest problem with Linux is software. Sounds funny but Linux does not have native PHOTOSHOP, 3dsMAX, Adobe anything... etc etc... and the list goes on and on.

Yes you can use WINE to run PhotoShop 7 but that simply does not cut it for the average user.

Also, you have to note that alot of people do not know what linux OS even looks like... since they are in the mainstream for YEARS and YEARS looknig at microsoft... even DELL does not have a DIRECT obvious LINK to buy Ubuntu on a Dell... I guess dell figures if someone wants Ubuntu on a Dell they know where to look. But not your average user. Plus I bet more 'users' would see the word 'Ubuntu' and not even know how to pronounce it... it takes brains which more average users do not have when it comes to Computers on almost all levels besides Click this and it does that...

So, the point that GNU/Linux has gotten as far as it has at this point is nothing short of AMAZING when you think about that it is all voluteer work... yes with funding like Mysql ( for example ) by cooperations...

Right now people want to see things change over night... it is not going to happen. Give Linux time and as things evolve we will see 'success' with Linux as a desktop based on user % and money blah blah.

Windows and Linux are like apples and oranges and you just can not compare them so please give up on flaming the OS's.

They are there for a reason .. and diversity is the reason.

peace- matt

Blullama said...

In defense of the article, I'd have to admit that arguments presented are quite valid. Why couldn't we just double click on a packaged installer and install a software program we want to use just as what is commonly done with Setup.exe in Windows. How about installing a driver in the same manner and having the device function right off the bat? Why should we have to edit config files to get our system working the way we want? Why does the GUI's seem so unfriendly and unfamiliar? How come programs aren't all using standardized API calls to the Desktop Enviroments to maintain consistency for functions as simple as prompting to save or load a file? If I were to put my Grandmother on Linux, it would confuse the hell out of her. I could click on "File" - "Open..." in Firefox and "File" - "Open..." in another program and I get prompted with a completely different "Open Dialog Box."

Linux just does not have that ease of use and consistency to it. Of course, based on other comments here, bringing up the subject just pisses people off and brings out the worse in them. You all know that linux has its shortcomings, yet you aggressively defend it as if you were possessed by it.

Now comes the real thorn... The power of Linux and the current GUIs just don't mix well in the mixer. Linux has tons of power, for sure, but that power is not found in any Window Manager/Desktop Environment available. I'm waiting to see what KDE 4 innovations might bring, but for now, Desktop Environment provide users with the short end of the stick. We have to use the console to make up for what is missing.

Current open source applications are great, but in order to beat the pants off of any Windows or Mac OS apps, they have to diligently work together and share Data and Element with one another, even if that requires a conversion of the data to a universal format or the merging of several related projects into one project and one application. Example: Upon trying to copy a graphic from Scribus to OpenOffice.org Writer, the end result was a bunch of lines of Markup Language. On the bright side, it's easy to highlight text in Firefox and drag it to OpenOffice.org Writer and see an immediate duplicate of the text appear in the document. We need more of that. We need the computer to work the way that we do. The entire system should be fluent on how we work and help us to be more efficient.

Gaming is another huge shortcoming that everyone has to admit? Windows has the market there when it comes to PC gaming. The potential is there, but the innovation of drivers, cooperation of developers and support of major game companies is not there.

Linux has come a long way, but it still has a long way left to go if it is to take over the desktop OS department. Thankfully it is moving at a steady pace

ghmitch said...

I have been using Linux desktop for home and business since 1999. For much of that period, I have been using Linux exclusively. I have grown to prefer it over either Windows or Mac. BUT, me career background as a Unix system admin enables me to thread the needle as needed. In my opinion, the author of this blog makes some excellent points. While today's Linux systems allow the user to do almost everything from the GUI, there are still those dark corners. Things like X and sound configuration that no one has seemed willing to tackle. And then there are the driver issues. I am confident that in spite of the fact that Linux developers lack the financial incentives that propel Windows and Mac developers, solutions ARE on the way. The user mode driver support is still in development and DMA support is on the way which will allow for support for video and other demanding applications. After years of the XFree project dragging their feet, most distros have moved to the X.org project which is taking a much more enlightened approach and making considerable progress although there is admittedly much more work to be done. A common, desktop neutral, execution environment/API is also, finally, taking shape. Much of this has to take a different path from the Mac approach simply because of the constraints of the GPL license which are not present in the case of the BSD license. But the author of this blog is making some REALLY GREAT and CONSTRUCTIVE points and I say this as one who sincerely values and respects the GPL.

Unknown said...

Dude... I have installed openSUSE 10.2, Ubuntu 7 and Fedora 7 in numerous desktops and most importantly laptops for myself (I have 3 PCs and one Laptops), my friends, relatives and business men from my Church.

I don't understand what you are talking about? Re-Compile to install vmware? Get a life...

You don't have to rely on command prompts to setup your GNU/Linux box for home use (unless you are targeting for development system and/or servers).

It's because of people like you those hardware vendors ignore opensource drivers or open source models.

btw... everything works in Mac because it runs on tailor made hardware. Try installing OS X in another hardware and see... U'll know what I am talkin about.

U love Windows/OSX, it's up to you to get doomed, but sorry buddy, not all are like u, okay with proprietary things.

stomfi said...

s

stomfi said...

The GUI
I use Linux mainly because of the GUI window allows me to:
CRTL-ALT-+ to a view port I can read on a virtual very large screen.
On GNOME, I:
Click to other work areas so that I can have other applications windows not hidden. (I always have one with Firefox, another with Thunderbird, another with the GIMP, and another for my IDE)

On FVWN, I:
Setup 16 work spaces with zero edge resistance and drag a graphic across all of them so that I can view each pixel without having to zoom. This is without a par for making defined edges and shadows. I also use xinerama with 4 screens. One to see where I am working on another screen, one to run sound recording and editing or a VirtualBox, and the other to run my GNOME desktop complete with Beryl eye candy.

Like DELL, I also use Ubuntu for its synaptic point and click software installation and management.

Talking to other Linux desktop users I find that they do similar things albeit with other applications, and have given up on Windows because the Windows desktop doesn't do any of this out of the box.

The CLI
The other big plus for most users is the CLI. Don't forget this was a set of tools made for users before the GUI workstation became affordable. (I did use a $50K Alto back in the mid 70s and a $9K Sun 3 back in the mid 80s).

Once learned, like any GUI application, the shell tool kit is your friend for doing all those odd jobs that a GUI application would be overkill in terms of resources if not expense on a Windows platform.

Because it was originally meant as an end user tool kit (Ordinary clerks at AT&T used it for word processing, information processing and data management) it is not hard to learn and has tools for finding out what tool can be used to process information in the ways you want. Most of my students are relatively proficient in 2 weeks and up to sophisticated speed in 3 months.

The Customization.
Multimedia.
If you are into multimedia, Linux offers the ability to install a "real time" kernel, and opt for a super low overhead window manager.
When doing desktop audio and video work these two factors make the difference between productivity or not.
Back in the 80s someone like IBM worked out that if the GUI response time was greater than just under 3 milliseconds, productivity would fall by 17%, mainly because the attention will wander.

Other Customization Things
As can be seen by the 300+ distributions, Linux and the desktop can be customized and focused for any activity, yet multiple diverse installations can be managed using the same tools and often by one person.

Games:
Many of the 1000+ Linux users I know have retained a Windows machine for games.

Rennes le Blog said...

What a well informed, well considered article. Those who call it a rant should look inside their own minds. This man is trying to help in the most effective way - with constructive criticism,

Norman

Unknown said...

Some of your comments are valid, some not. I'll try to do it point by point.

> A GUI application for everything

I think Linux do have GUI application to do essentially everything. From setting up the screen resolution to ripping CDs, all of them have GUI application doing it. If something didn't have it, somebody is working on it. So perhaps you are right at this point for a minority of applications, it won't be long before the GUI application you want to appear.

On the other hand, expect console application to still appear first. That is the easier way to program (and, indeed, easier to use for programmers!), so that is the first application to appear first, before GUI wrappers or rewrites appear. In other words, to new comers it will always appears that Linux has many console application with no GUI counterparts. It is a sign that Linux has growing number of applications. It is also a reflection that many users of Linux in general are not fear of the command prompt, so the developers are not feared to give applications that requires the command prompt. In contrast, it would be much less acceptable for Windows applications to be command line, since the majority of the users fear it.

> No reliance on the command prompt

This is essentially the same comment as above. If something still rely on the command prompt, it is changing. But new things add in which requires the command prompt, because it is easier to write and use for developers, and because many users are not afraid of it.

> A complete and total reliance on binaries for distribution of software/drivers

I think with all those .rpm and .deb available, we already have a complete binary distribution channel that does not need users to compile the files. On the other hand, I don't agree that we should "totally/completely rely on it". There are many Unix applications that do not adhere to Linux rules, and we don't want those applications to be unavailable to Linux just because it "does not rely on binary distribution".

> Standards for development (for drivers)

There actually is one (and only one). The standard is to get incorporated directly into the kernel, in a way that a kernel module can be built and distributed by the distributors like Redhat, Fedora and Debian, and in a way that when kernel interface changes, the kernel developers can take care of changing those as well. You see a lot of drivers being "floating pieces of code". It is not because there is a lack of standard, but instead it is because the manufacturers refuse to adhere to the standard. This is because of insufficient desktop penetration, rather than is causing lack of desktop penetration.

> I'll start with something that's bugged me every time I've done a Linux install: Driver support.

Users of any minority OS has one responsibility: to check the compatibility list before acquiring hardware. There are hardware that are universally supported (e.g., motherboards, USB storage or things which work like one), and you don't need to check. For others (e.g., scanners, video cards) you need to be careful. If you don't do this, count yourselves as lucky if your hardware can be made to work using a command line (which indicate the earliest stage of support). Fully supported hardware needs no such things, so be more careful next time!

Why users really must have this responsibility? Again, this is because Linux lacks desktop penetration. People are working hard to make sure that this will not cause lack of desktop penetration as a result, and the existence of the early stage of support is because of it. But until Linux is actually installed by a large crowd of people for the desktop (as Dell and other manufacturers starting to support Linux we might be seeing this happening!), the users will have this slight burden.

> Another example is VMWare. When I tried it, VMWare for Linux required me to recompile the kernel to get the necessary drivers installed.

VMWare is a very special case as for Linux application, because it needs special kernel support. In other words, it is requiring something that is not supported by Linux per se, and as a result requires to modify Linux kernel in order for it to be used. This is being changed, don't expect it to be still that way a year later when you look again.

> I have never had a driver not work when I clicked update driver and found the .inf file in the device manager

Count yourselves as lucky! I do have a lot of frustrations doing that last time I touch Windows. On the other hand, as stated above, there are some devices which support in Linux is spotty, and nobody can deny that. A fully supported hardware is one which do not need any setup at all, not even "click update driver" and "find the .inf file". Linux do not work like that, it would be a usability problem for users having to do just that.

> One of the biggest frustrations to be was the x.org configuration file.

For most people using Gnome or KDE as their desktop environment, and using Fedora or SuSE as their distribution, I don't see why they really need to touch the file at all, at least for a perfectly usable system with no special tweaks.

On the other hand, many applications do need text configuration files, again because it is both easier to write and use applications that uses such files from the developers' perspective. Usually, there are counterparts that do not use those, though, if you are among the users who afraid the text files.

> Why couldn't we just double click on a packaged installer and install a software program we want to use just as what is commonly done with Setup.exe in Windows.

You see the problems in installation of some Linux tools, and think of the "good old days" and think that is a better alternative. That's not. Setup.exe is something horrible interface for installing programs. The problem is that it lacks one important thing: a distribution network of freely available libraries and applications that everybody use. Without it, you always find complex dependencies in using incorrect versions of libraries, and find that sometimes installing one piece of software cause an unrelated piece of software to stop functioning. Those problems that are inherit in the Windows software distribution model shouldn't be forgotten. We have the best means of software delivery, and that is called yum and apt-get. In this area Linux is way ahead of Windows, not just because Linux has better installation application, but indeed because it has an unshakable free culture that such a distribution network can be built in the first place.

txHarleyMan said...

Re-compile the kernel for vmware? I installed vmware-server directly from the repos and it was up and running in minutes.

txHarleyMan said...

Re-compile the kernel for vmware? I installed vmware-server directly from the repos and it was up and running in minutes.

Rawler said...

I'm sorry, but you could simply have shortened down your blog-post to "Linux doesn't work like Windows, and I don't like it."

For every argument you mention, there are at least a couple of counter-arguments, for example;

Kernel-recompilation; Every decent driver/vmware/whatever should be packaged up as a module. If you can't install the package as a module without kernel-recompile, it's a sign of a problem with the package itself, not the kernel or Linux as a whole. The way Windows let's modules or drivers into the system, on the other hand, just serves as a statement overall on the security policies in Windows, where any spyware are allowed kernel-mode acces. Just look at some of the more popular root-kits if in doubt.

You talk about Linux as a bad user-experience, and yet all your arguments concerns administration and installation, not usage. The fact that you confuse administration with usage just further shows a very deep windows-habit on your side, which is fine as long as you know you have it and don't confuse "I'm used to A" with "B sucks.". In a very common desktop-situation, the Enterprise, administration is not cared about by the users, even prohibited. In many enterprises software are NOT installed by double-clicking setup.exe, but by going to a list with pre-tested and pre-approved software packages for use in the organisation (yes, I'm still talking windows setups), just like any Linux package management system works.

Regarding driver-support, most Desktop-oriented Linux distributions Plug-and-Play installs FAR more drivers than Windows (at least XP, can't say anything about Vista, but if most blogs are correct, compatibility have actually been worse in Vista). There are of course exceptions with examples of really lousy linux-drivers. Some of the more infamous is ATI, winmodems, some wireless NICs. But again, this is not a sign of a technical problem on Linux:s side, but a lack of interest from the vendors. (And a tribute to the paranoid, lock-all-assets model of business, where the consumer of a product are prohibited from knowing how to interface it, and what it actually does.)

Last, but not least, your description of the MacOSX driver model fully matches that of Linux. A Linux kernel and it's runtime modules is built _exactly_ like that. Had you actually bothered to look at the Linux kernel, you'd seen that yourself, from the modules, their names and their runtime dependencies.

PusRob said...

I think some readers already answered/confuted some of your problems/remarks, so I won't spend time doing that again. The reason I write, is to add something, which was not added before, or was not completely clear.
I am writing about drivers for hardware. I must remind you, that Windows has a much worse hardware support than GNU/Linux. Just think about a fresh Windows installation. It does not recognize most of your hardware. You must use driver CDs, download drivers from internet to get your hardware work. Never forget, that these drivers are shipped by harware manufacturers, and not by Microsoft. It is not GNU/Linux's fault that HW manufacturers doesn't include GNU/Linux drivers on CDs. If there were Lin drivers on CDs, than GNU/Linux never would had problems with drivers, and many programmers could use their free time to program something else, so GNU/Linux would develop much faster.
I don't say you don't have some good points in your post, but we already know that GNU/Linux does have some parts that need improvements, and nobody said that this OS is perfect.
Another thing: GNU/Linux is not interested in market share, because as you might already heard, it is free to use. Nobody will really see a huge benefit (especially money) if GNU/Linux will take over the Desktop OS market. Maybe some more people will donate, more bugs will be found faster, etc., but thats all.
And about user friendliness of an app. If an application is user friendly or not, it is a very relative thing. Just think about a secretary in an office, who needs to process a whole bunch of documents every day. Lets give her 2 applications: emacs for example and MS office. You give her 2 months to try/learn each of them. MS office provides functions that are accessible from menus/dialogs. It seems user friendly isn't it? Than there is emacs. It does not really rely on menus, but have a whole bunch of keyboard shortcuts, that do a lot of things. It does not seem user friendly, is it? BUT!: After 2 months of work with each program, the secretary probably will choose emacs, the user unfriendly app (from the first look). Why? Because the secretary can do the same work much much faster with already learnt keyboard shortcuts, than with menus. You do not have to put your hand on the mouse to access a menu, than click here-there, but only press on the keyboard (your hand are already there) some shortcut chains, and you did the same.
Now chose: which program is the user friendly for the secretary? Not that easy to chose now right? Hehe. So, thats all about user friendliness. This is the same for the command prompt/GUI user friendliness problem. If an interface or program is userfrienfly or not, it only depends on the user!!! Never forget this!

Unknown said...

You make this statement:
"First, let's define what a desktop OS truely is. To me,..."

First: 'TRULY' is how it is spelt.

Second: You talk of definition, then proceed to describe your perception rather than defining anything.

Rod said...

I think I agree with the comments, with the following exceptions.

First, you did not have a large enough discussion about application availability. True, you have OpenOffice.org and that works. But many organizations leverage Visual Basic and MS Access with VBA. In addition, "GNUCash" might be a replacement for Quicken, but it is not its equal and the average user does not want to bother. Speaking of not wanting to bother, the use of WINE or other emulators to run these apps is not appealing. So in summary, there are some users who need things that don't live on Linux and do not want to have to manage their systems.

Second, I do not agree with your comments about config files. I think that if CLEAR instructions were provided (exquisitely documented config files), then some users might make the leap. However, not all will be willing to do so, and for those folks, I agree: a GUI to manipulate the config files would help.

To the open source community: Keep working on it. I wish I could assist more, and I have a tech design background. But I am only a "coder wannabe", and lack the time to invest (unfortunately).

THANKS!

Unknown said...

These kind of debates can only go so far. Rather than throwing words, just try any modern desktop-oriented Linux for 6 months and then make up your mind. Until then, try to be open-minded about it. It's not Windows, and it's not Mac OS. It's different, but once you learn it, it's not hard at all to use.

And may I just point out that I have actually been instructed to use the command prompt on Windows. Gasp!!! People really make a bigger deal out of using the command line than should be. It really is an insult to suggest that users are so dumb that they can't understand how to type a command.

Anyway, just try Linux long enough to feel comfortable with it, and then let the world know what you think. Until then, you haven't given a fair chance.

Unknown said...

The blogger(s) always seems to omit the word "monopoly".

Linux problems aren't technical, it's political.

To over come the technical objections, things such as, GPLV3 and "Open Source Initiative approved on July 25 its first new license in quite some time: the Common Public Attribution License..." -- needed to be put in place.

You can't just win a war with a technical solution, but you also need political strategy.

Technically, it's a superior platform, hands down.

Charles said...

To Igor, (fourth commenter), there is indeed VMWare for the Mac, it is called VMWare Fusion and Version 1.0 RC1 can be downloaded from: http://www.vmware.com/beta/fusion/

Kim Siewers said...

The original post is unfortunately correct. I was hoping Linux was ready for prime time, but it's not yet. At least what I am using.
Simply adjusting my trackpad requires one to go and alter something called "xorg.config" and do other things I don't understand. Other OS, particularly Mac, are able to be learned as you go, while completely functional out of the box and easy to customize.
The appearance of the fonts in Linux is horrible. Fixing it sounds like a major undertaking.
So, I can't stand to look at what my computer shows me, and I can't control my crazy crack high touchpad cursor, so I am really NOT in control of my experience.
But, hope springs eternal. Linux Mint sees the need to make the user experience better.

uC said...

Actually Wrong answer. It's the API's for binary code which finally Linus is fixing.

I don't want to recompile each and every time the kernel changes. Naturally this leaves a really large burden for kernel developers with backwards compatibility. This is one of the prime things Vista is suffering from the small leap forward from XP.

The Gui and X.org thing is not very burdensome especially with Sax2 in SuSE it would be nice if I could set a dock vs. laptop setting or auto changes from the VESA detection of the monitor.

But it's the binary compatibility thing that drives the desktop. The rest is coming along quite nicely.

Kevl said...

I run linux on my Desktop where I produce a radio program and do many other "high value" tasks consistently. It's also on my Laptop, which interestingly enough WinXP takes over 5 hours to install (not including the format C: portion) and Kubuntu is up and running in under an hour with an impressive number of productivity apps. Not just a browser wordpad and a calculator...

I made the switch from Windows to Linux about a year and a half ago. Windows XP is not a viable Desktop OS when compared to what Linux defines as a Desktop OS.

Vista, I have about 20 minutes experience with Vista... that's enough.

Unknown said...

Why do you need only binaries? Why can't you provide both binaries and source code?

Unknown said...

This is mostly bull if you ask me. The writer states that Linux should be MS. But Linux is not MS, Linux is GNU/Linux, What he calls Linux is composed of thousand of applications created by hundreds or thousands of different developer working mostly independently with one goal to make their app run under the Linux kernel. you can not just say "Linux" should run be like windows. When i click on a .deb package on *Ubuntu under the file manager it always asks me if i like to install it graphically. If Linux lacks anything is in vendor driver and app support not usability. I for one DO NOT want Linux to like windows at all. If anything MS has been becoming like Linux by the windows release. Now the mac, well if a Linux company decides to code their own window manager and all other tools the users need then it will be like macs, except with better bug and security fixes. BTW Con's Staircase Patch is included into the next kernel release 2.6.23 look for the CFS patch. http://kerneltrap.org/node/14008

Unknown said...

This article and its subsequent comments highlight one of Linux's shortcomings : its supporters are like manic religious devotees who won't stand anything remotely negative to be said about its "hero".

I am a Windows user who is struggling hard to abandon Windows forever, and use Linux exclusively. I just hate the monopolised price tags that Windows want to charge us, the throttling DRM practices and anti-piracy measures which actually punish honest customers.

So let me be clear from the outset : I HATE WINDOWS and MICRO$OFT !!! For the same pricing and closed-proprietary reasons I do not wish to use Mac either. Nothing would please more than Linux to be wildly successful, and be the standard of computing the way MS Windows currently is.

However, this will never happen unless Linux supporters take a constructive approach and strive to do what is needed to make Linux the OS of choice for the general public. The "general public", mind you; NOT the small minority of expert Linux / Unix users.

Look at comments posted here by :
tuxster
The Evangelist
scubadir

Their responses embarass me as they resemble fundamentalist religious radicals who would condemn anyone for disagreeing with their views, without first CAREFULLY considering the merits of the criticisms. Rather than debating the points, they resort to name calling ("you are a dumbass", "get a life", "ignorant rants" etc). Linux deserves better defenders than these; you resort to name calling if you can't refute the other side's points logically.

So a BIG THANK YOU to
Matt
KingKookie
ghmitch
stomfi
Isaac
Rawler
PusRob
Rod
aks
uC

and others who take the trouble to DEBATE with facts. Only with supporters who are willing to IMPROVE can Linux advance.

Peter said...

This article shows M$$ is in a panic to stop linux before it is too late. Linux is a success. It is getting more developers everyday. The programs that these developers write determine who wins the os. M$$ has lost 10% in one year! That is a great success for linux. The trend in very favorable for Linux and hense this article to stop Linux now. It won't work. As long as Linux improves every year, as it has, then eventually M$$ will go the way of Word, Lotus, or Dr Dos. M$$ should be worried, the future looks bad because Linux is more successful every year.

Unknown said...

Hello,

I am not excusing Linux' low marketshare, but I read somewhere the growth in Linux on the desktop is higher than the Mac.

So you can't say it has failed.

You also omit the fact that the current situation is difficult for Linux because it is hard for the big OEMs to abandon Windows.

However, you have some good points as well:

* binary distribution: I agree it is a pain to both have working desktop and using new software. Linux definitely needs some sort of base, which should not be upgraded while all apps can be individually upgraded, like the *BSD's do it.

* Xorg.conf is a joke: completely agree. That config file is a mystery, and it takes too long to find out to set refresh rates. Very Win 3.1 like. This is a known fact, and Xorg are working on it.

Regarding usability: you are not correct, IMHO. If you used Linux just a couple of years ago and compare it today, you would notice the big change in usability. So this point is moot, there is a lot of focus on usability, especially in the Gnome and Ubuntu camp.

There is a lot of work left in Linux to iron out the rough edges, but a lot of people are working on it.

Unknown said...

May we stop to fight Linux/Windows, please, you want to use Windows .... ok, just leave us alone.
Stay with your close/black/bark system install what they want you to install and ... please ... let us play with xorg.conf.
The day when you'll be able to do what we do with xorg.conf, please come back, but only at that time, before ... let us live where you will be in 10 years.

arya-bhatta said...

1. GIVE LINUX UNITED NATIONS FUNDING FOR ELIMINATING DIGITAL DIVIDE [ BEING FREE AND OPEN SOURCE ].

2. HARDWARE VENDOR SHOULD ALSO RELEASE LINUX DRIVER [ MAY BE IN BINARY FORMAT.

3. NEVER APPLY PATENT LAWS IN CASE OF SOFTWARE.

LINUX WILL FLOURISH...