Why can’t Linux beat Windows?

OK Geeks, I have a question for you.  Tell me where my reasoning is wrong.

  1. Linux is in many respects a superior operating system to Windows, and seems to work perfectly well for people who know what they’re doing as a desktop operating system.
  2. The runaway success of products like the ASUS Eee PC shows that Linux can be made sufficiently user friendly for ordinary mugs to use it – at least as an OS on their backup PC.
  3. There are a bunch of things it seems that Linux continues to do less well.  I haven’t used it – except to boot it from a CD and it seemed to work fine, but I didn’t do much on it – but I understand that there are quite a few details like picking up drivers and so on that can be painful on Linux.
  4. So my main question is why Google and/or a consortium of large firms in the industry (and perhaps elsewhere like Wal-Mart for instance, not to mention Asian governments and businesses) don’t band together to lead an open source initiative to produce a version of Linux that maximises userfriendliness. (Part of the problem is the fragmentation of standards – there are lots of Linux distros out there, so just agreeing on one they’d promote would be very helpful).  IBM spends something like a billion dollars annually on Linux coding, you’d think it wouldn’t take much of a share of this – especially with other firms and individuals chipping in – to get Linux to at least the state that Windows is at.  Windows Vista is a big ugly morass of programming, so now couldn’t be a better time.

So what am I missing?

Subscribe
Notify of
guest

40 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Peter J. Nicol
16 years ago

Look, your post is almost a troll, but I will bite anyway – not to mention that it has been done to death a million times elsewhere.

Linux is gaining on windows – and Ubuntu is as about as friendly as it gets.

Your question is pretty silly, really – the huge morass of windows applications aren’t going to run on Linux any time soon. At my work, our SOE is Windows 2000, which means, internet explorer 6. We just upgraded to Lotus Notes 7 which is still not the latest.

Linux growth is incremental, and I guess at this stage, still probably probably exponential.

Computers that do nothing but web browsing and wifi will become ubiquitous – the vast majority of my computer use is now that – maybe they need to play some music as well.

In the other world, the corporate world, windows will be the standard for at least the next 10-15 years – the switching costs are still too high, and the corporate will is not there.

Linux will gain increasing wins in this space, in certain markets. If you are a business with a limited working set of applications, or largely web-based, you can make a case to ship most of your staff over to linux. Think parcel delivery, travel bookings, retail, hospitality, service industries, even 3d graphics are moving to linux in a big way.

If you are into desktop publishing, or video editing, you are probably on a mac. CAD, design and business analysis, probably on PC.

Where I work, we have our office applications customised to work with our DMS system, a and a billion macro’s in Word and Excel – we are not moving away from that for the foreseeable future, and we have at least 2000 seats.

So, at the low end, where users what cheap devices to browse the web, send email, listen to music and play with their photos, linux will be hard to beat. At the corporate level, where you have a small amount of apps, or largely web based, you can make the case to go to linux, and many will.

At the large amount of corporates, with a lot of apps, and big use of office, and now sharepoint, it will be microsoft for the forseeable future.

conrad
conrad
16 years ago

After having endless problems with Vista, I’d love to get rid of Windows and change to Linux, which can’t possibly be worse. The problem I have — which I believe many companies have too, is that lots of things don’t work or are not available for Linux, and that includes stuff I wrote for the work I do, which would take me heaps of effort to change over (not even including the cost of having to learn to use new packages — just simple stuff like Word 2007 is painful enough). I believe this second problem is a killer for many businesses — many systems are not completely re-written for many years (sometimes decades). You can see this by the fact that there are still jobs for COBOL programmers out there and gazillions of jobs for C++ programmers, even though Java and C# came out many years ago (and the late 80s would have seen the last of the new systems written in COBOL).

I believe a second problem is compatibility between systems. Just because Linux might be better for developers doesn’t mean end users will happen to use it too. Given this, it is really the end users that need to change over first — if they don’t, the companies providing the software are never going to change first — but until Vista came-out, XP worked just fine for most end uses, so they had no reason to change. Even with Vista, most end users will only notice things going more slowly, and I doubt most people really care about that. Thus the price for end users changing over is still massive compared to just putting up with something that works a bit worse than XP or Linux (and that’s not even including those who were not forced into using Vista due to the way computers and operating systems are packaged for sale in many countries).

Mark
Mark
16 years ago

I am a former Unix developer (AT&T style), and a user and advocate of Linux since well before the 1.0 kernel. After anticipating the “Year of the Linux Desktop” pretty much every year since 1998, I no longer believe that Linux will ever make an appreciable dent in the desktop market, though I think it will continue to have limited success in the server-room.

One reason for this is that despite their best efforts, Canonical (and Red Hat before them) are forced, ironically, to cater to a much more diverse set of users than OSX. OSX focusses on end-users and developers; Windows focus is corporations and developers. Linux, due in part to it’s roots, tries to cater to developers, novice end-users, terminal geeks, X windows geeks, Unix geeks, corporations and the free software movement. Many of these groups are antagonistic to one another.

These antagonistic organisational drivers mean that Linux development will always be spread very thin, and it is unlikely to ever be remotely as successful as Microsoft, or even Apple. The free vs proprietary “debate”, the glacial pace that the GUI has advanced, and a lack of ability to enforce or oversee a “big picture” are all intrinsic features of the development and management methodologies employed by Linux companies, and will all contribute to limited success of the OS.

So to answer the question — my feeling is that Linux can’t beat Windows on the desktop, because Apple has already beaten Linux. I’m not convinced that Linux will continue to dominate in the server room, though the main competition would seem to be Sun, who have such a disjoint approach to their market that they are just as likely to self-destruct as they are to make progress (but they do have cool technology, like ZFS). With Ian Murdoch on board, Sun does have an outside chance, since they have much more money and experience than Red Hat, and Murdoch is the original developer of what is arguably the best distribution of Linux (Debian, on which Ubuntu is based).

Mark
Mark
16 years ago

I didn’t address the question of why a large business like Google or Wal-Mart won’t develop Linux, but I think that the answer (for Wal-Mart) is that it would entail a huge amount of money and risk, when they can continue to make money with no risk, selling Windows. Google actually are getting into the Linux OS game, with Android, but it looks like they are having some issues with this, and I expect that Android is going to look more like Windows Mobile than it is going to look like Apple’s iPhone, and to be honest I think it’s mostly geeks that dig Windows Mobile. The real business is in the consumer market, and regardless of what you think of Apple, their stuff is way more attractive than anything else I’ve seen on the market in a long time.

If Google continues to use the Linux business/development model then Android will probably not succeed. The model has too many flaws. What’s needed to develop this kind of stuff is a steady hand and a strong head. You can’t imagine building a huge structure like an aircraft or a Eureka tower with a bunch of architects recruited over the internet and largely working for free; and software is more complex than either of these artefacts. But it seems to me that’s essentially how Linux is developed.

JohnZ
JohnZ
16 years ago

I used Linux on the desktop for over 3 years before giving up. Here’s why it’s still not even close to Windows for the average user.

– Hardware support is still flaky. It’s getting better but when you’re forced to run beta versions of X11 just to get your display running it’s probably more trouble than it’s worth. This isn’t likely to get much better – writing drivers is expensive and smaller hardware manufacturers can’t justify the expense to attract only a few more users. Laptops are especially bad here – every Dell laptop I bought over the last few years had at least one major problem.

– iPod support isn’t great, my software would routinely lockup. Syncing non-popular phones was generally impossible.

– Software still sucks. Open Office Writer is passable as an alternative to Word. OO Calc is a joke. Call me when it supports more than 65,000 rows. There’s not decent email client – Evolution is a pale imitation of Outlook. Good luck getting it to sync calendar etc. Photoshop? MYOB? Tax software?

– It would be handy if Ubuntu could play a DVD out of the box – installing another package is a pain. Bonus points if the sound syncs with the video ;-)

– Getting a dual-head monitor set up is still a nightmare – just as it was 10 years ago.

– Not many games are available. This forces people to dual-boot, and why would you want to maintain two systems?

– A massive amount of training is already invested in Windows, retraining isn’t going to happen quickly.

– Piracy. Windows costs about $30 when bundled with a new computer, and other people can just pirate a copy. “Free as in Freedom” sounds pretty silly to non-programmers, and even for coders how many actually want to look at the linux source code? If Linux started to make serious inroads into Windows market share, MS would drop the price to $0 and make money selling software, dev kits etc.

– MacOS X – A Unix platform with a professionally designed GUI, solid application suite and good hardware support. If the average user gets fed up with Windows, they’ll buy a Mac.

– Most serious Linux users I know don’t care about “Linux vs Windows”. If anything, they’re happy to have Windows be the mainstream OS as it keeps the virus writers from targeting their own machines.

– Distributions are not going to “consolidate” because they’re designed for different people, for different tasks, with different philosophies.

There’s room for Linux for the general consumer at the bottom end of the food chain where the hardware manufacturer can ensure the software is compatible and there’s no expectation of a “general computing device”. But even then, would would go to the trouble to learn something new just to save $30?

Niall
16 years ago

From the little I’ve seen of Linux (the other half tried to install Red Hat here some time back) unless you’re MCSE qualified, or similar, you’re not going to have the savvy to deal with Linux. Let’s face it, when it works, Windows works very well. It’s idiot-proof in many respects.

Tysen Woodlock
16 years ago

Wal-Mart helped create (I think) a Linux distro called gOS for sale with an ultra-cheap PC of their’s. You can have a look at the latest iteration of gOS here and the Wikipedia entry for gOS here, which details Wal-Mart’s involvement.

The reason I don’t change to Linux or even use a dual boot set-up is because everything I want to do, I can do on XP and even when it comes to freeware apps, there’s a huge open source community creating freeware Windows apps.

I’ve written about my frustrating experiences with Linux on my blog.

For me, the limited rewards of Linux do not justify the effort of learning and installing it. I suspect that is even more so for less knowledgeable computer users.

Vee
Vee
16 years ago

I’m yet to read the replies but first can I recommend the July issue of APC magazine. That will go a little way to answering your question.

Second of all, companies, corporations prefer proprietary systems, and that is essentially why extremely large businesses wont get behind it.

I believe it is that simple.

JohnZ
JohnZ
16 years ago

It’s not that simple, Vee

Linux is a very popular server operating systems. Apache is the most popular webserver. Java is the most popular enterprise programming language. All are non-proprietary.

Corporations like whatever is well-supported and reliable. On the server side, that’s Linux.

Tel
Tel
16 years ago

Open Source (probably Linux) will win in the end because of price, quality, flexibility and enough of the critical decision makers understand the value of freedom.

However, to answer the question, there’s a lot of inertia in the industry and things can’t change overnight. Most of the JohnZ comments above really are just manifestations of inertia: hardware manufacturers are reluctant to support minority systems, people define “user friendly” as meaning “whatever I’m used to” and they resist learning anything new. Other of the JohnZ comments are just plain wrong. I had an Ubuntu dual head up and running in about 10 minutes, even when I had been a long time Fedora user and was only passingly familiar with the hardware. There’s nothing difficult about it. In my case I wanted the proprietary Nvidia drivers so I had to apt-get the package from the Internet (which is incredibly simple to do). I’ll admit that trying to do it without Internet access would be more difficult. I’ll also admit that I’ve never tried to play a DVD under either Fedora or Ubuntu, probably because using my normal DVD player just seemed easier (I mean, that’s why I bought a DVD player). Some DVD players do run Linux internally so go figure.

Businesses like Wal-Mart and Google don’t want to spend too much money pushing the “bleeding edge”, especially when they can comfortably make money in the current market. Asian governments tend to be long-term strategic thinkers and much more patient than your typical blogger. Linux is already better than Microsoft Windows in every way, but it’s a bit different, and takes a bit of getting used to. It’s not a precise drop-in replacement and never will be because the current Linux community are trying to get the system they want, not trying to clone a system that they don’t much like.

JohnZ
JohnZ
16 years ago

Tel – I would call 10 minutes easy, particularly if you were already linux savvy.

My experience of dual-head on a bog-standard Intel video card was as follows:

Spend one day trying various Xorg configs with no luck. When misconfigured, Xorg fails to start and doesn’t boot into a fail-safe mode so you have to know how to take and restore a a backup.

After trawling many forums for another day, I end up at the actual bug report in the intel driver issue tracker. The guy maintaining the driver is working free of charge. He very kindly has posted a patch which I apply to the source and recompile. If I didn’t know how to do that, I would have had to wait 9 months for the next release. Simply to have dual-head on a standard Intel chip on a standard Dell laptop.

Once the driver issue was sorted, Xorg refused to do wide-screen ratios on the second monitor, normal aspect ratios worked fine. Even once I had a different monitor, moving to a different location with a different external monitor setup requires me to manually switch xorg config files and restart.

Compare this to the windows situation: Plug it in and magically it works. In less than 30 seconds. I have a different setup at home and work. As soon as the monitor is plugged in it recognises which configuration to use.

My experience was not unusual – many of the programmers at work run Linux and spent literally a day each getting their dual-head working. These are trained professionals, what hope does the average user have?

The problem is not inertia, it is that having many desktop operating systems is inefficient in a world with hardware as fragmented as x86. Drivers are just too expensive to write and support is too expensive to provide if you’re targeting many software as well as hardware platforms.

I like Linux and swear by it as a Server OS, but at the very least I’ll need an adequate Outlook clone before I consider reinstalling it on my machine. I’d probably also need someone on hand to provide support, I just can’t justify spending a day getting something as basic dual-head working.

JohnZ
JohnZ
16 years ago

Whoops, “I wouldn’t call 10 minutes easy, particularly if you were already linux savvy.”

derrida derider
derrida derider
16 years ago

Na, the big barrier is office apps. If I was one of those spend-a-billion-dollars-on-Linux firms I’d be spending it on rejigging OO completely. Step one is to make it leaner and simpler (maybe split off a separate “OO Lite” version), to help that “undermine from the bottom” strategy Jacques mentioned. Step two is almost the reverse – build a really good application development environment behind it. VBA, a rich object model and a good IDE is Office’s big selling point for corporations and advanced users.

Drivers are still a problem, though less so than they used to be. That’s just a matter of scale – if Linux gets enough market share it’ll fix itself. And Mark and JohnZ should try a recent release of Ubuntu or Mint – ease of setup is where Linux has made the biggest improvements in recent years, while with Vista MS has gone backwards.

Mark
Mark
16 years ago

Hi Jacques,

Linux is developed in hierarchy Linus sits at the pinnacle and whatever his source tree contains is Linux for all meaningful purposes

Unfortunately Linus has nothing at all to do with linux-the-operating-system. Most of what we call “Linux” is actually a distribution of GNU tools, along with the Linux kernel. You can pull Linux-the-kernel out of a Linux distribution and run, for example, Hurd or even BSD; and almost nobody would actually notice.

Linus has no control over what Red Hat or Canonical or Suse/Novell or Linspire — or Apache or MySQL even X.org – does. Because nobody is in charge, X.org has dragged it’s heels for years trying to get a reliable, modern compositing windowing system out the door; while MySQL produced what any experienced database developer would consider a half-assed database system (no transactions?!); by default, even the Linux kernel renumbers ethernet and SCSI interfaces on restart, causing servers to fail when rebooted — and the respective communities literally took years to fix these basic issues.

The open source “stack” is a mess of different and competing egos, nobody is in charge and nobody really talks to each other. Linux distributions are the Unix wars all over again; but this time the wars are being fought without very large companies spending lots of money; it’s doomed, I tells ya!

Unix lost a massive lead to a completely inferior, Windows because of a horrible fractured mess of competing interests that nobody was able to take control of, and it’s happening again. It’s madness, but it is also seems intrinsic to the business model. Linux today has Red Hat, Canonical, Novel and a bunch of other operating systems; “in my day” we had DG/UX, HP/UX, Solaris, DRS/NS, AIX, A/UX, and a bunch of others (Sequent, Pyramid, and a heap I just can’t remember any more). It’s really distressing to watch, but it’s the nature of the “open” game, however you call it (it used to be “Open Systems Interconnect” and POSIX; now it’s Open Source, but at heart it’s the same).

Apple have a very different story, and I think they are very interesting to watch.

Thank you for listening to my rant :)

Cheers,
Mark

Tel
Tel
16 years ago

Compare this to the windows situation: Plug it in and magically it works. In less than 30 seconds.

I’ve only done a little bit of Microsoft support in my life but I’ve seen so many times where it did NOT “just work” that I grow old just thinking about it. Someone once suggested that Bill Gates should have to share his fortune with all the people who spent hours pulling hair over why his software doesn’t do what they expect it to, strangely the world doesn’t seem to work that way :-)

I’ve seen various versions of Microsoft office software refuse to load up each other’s documents because you are supposed to upgrade all machines all at once. I’ve seen a company run an overnight MS-Outlook upgrade (right across the company) which resulted in all the email archive files being incompatible (and unreadable) for all employees. Indeed, the original Microsoft backup system regularly produced incompatible archives across upgrades. I’ve seen webcams that would happily take snapshots in one application but steadfastly refuse to work in MSN-chat. I’ve seen WPA wireless drivers that worked for a year without a hitch but when the access point was replaced with another model (from the SAME manufacturer, absolutely SAME settings) one particular Win-XP machine just would not talk anymore (but the other machines were OK). I’ve seen a printer driver that worked great until someone tried to print across the network, in which case it would actually load across the network, go through a full setup, identify the printer, install itself and then say “Oh, but you don’t have a printer plugged in” (that was an HP printer b.t.w. a reasonably reputable company, running genuine HP drivers right off the CDROM). I’ve had “value add” PC manufacturers insist on putting their own branded control panel into the system as a replacement for the Microsoft controls which is actually incompatible with the Microsoft controls for certain setups. That’s just the start of it. Then there are the mysterious slow-downs that happen (particularly in networked machines) for all sorts of obscure reasons, some that actually can be fixed by a true MS-wizard (which I’m not, and never intend to be).

In every case, my support response is basically the same, “There’s nothing I can do to fix it, this software is just broken, you can live with the limitations or try a different device”. This is an honest response. You can complain to Microsoft and they will ignore you, or complain to the likes of HP and they will also ignore you. Without any internal visibility, the drivers are opaque and documentation for the “advanced” settings is pretty much zero (try scanning forums, hope someone else found a fix, that’s about all you can do).

I’m glad your display works well. I’d kind of like to start a project where all the cases of Microsoft software that didn’t “just work” got carefully documented, to forever put to rest this meme of well integrated reliable software that is completely unrealistic.

JohnZ
JohnZ
16 years ago

Tel, no one claims Windows is perfect (I administered a network of windows boxes many years ago so I also have a few stories to tell). My claim is simply that it works far more often out of the box than Linux does, and when it doesn’t work it’s easy and cheap to find people who’ll fix it.
Windows XP as of SP2 is pretty damn good – networking is generally smooth, the hardware support is excellent and it’s rare to have to spend more than a few minutes looking at an issue.

When my entire office moved to dual-head we had a decisive test – half of us used Windows and the other half Linux. Not a single Windows user had to do anything other than plug it in, despite a myriad of hardware configurations. Every Linux user spent at least half an hour figuring out how to write an Xorg config and several had major problems with drivers. The lost productivity would have FAR exceeded any savings we made on licenses, though that wasn’t the reason for using Linux.

DD – I stopped using Ubuntu about 10 months ago after several years so I’ve tried the recent versions. I switched to windows because my new Dell Latitude laptop wasn’t supported by the newest version of Ubuntu. The only choice was to try the install version of X11 at which point I decided I’d had enough of configuring my computer and wanted to spend more time using it.

The latest Ubuntu is pretty good, but getting that final 10% right is going to be very, very difficult. Polishing applications is tedious work which few people are willing to do for free. This is a major flaw in Free Software.

JM
JM
16 years ago

JohnZ

I have to agree with Tel, Windows is nowhere near as simple and smooth as you think – in most cases in a corporate environment the IT department test, benchmark, configure the thing to run with whatever SOE equipment and software they have and only then roll it out. The effort required to do a company wide upgrade is something that has to be seen to be believed. Corporate IT is not in the habit of providing similar assistance to linux users, and from your description it sounds like each of your developers repeated the same task as each other – configuring X. That is the sort of wastefull duplication of effort that is avoided in the normal corporate supported rollout. Therefore I draw no particular conclusion from that example – it’s not a fair comparison.

I suspect that your impressions of Linux are based largely on your dual-head example. But more broadly speaking the driver issue hasn’t been one for a few years now.

You chose an anecdote to make your point, can I give you one of mine? About 4 years ago I purchased a HP inkjet/scanner with USB – tailor made for an installation disaster with linux (especially since I was using Red Hat, a corporate server OS not a desktop version like Ubuntu)

I plugged the thing in, it printed a test page. That was it. There is actually more to do on Windows (start up the Printer Wizard, click Add, click, click again – you know the drill). The scanner also came right up.

If that’s not plug-n-play I don’t know what is.

Most of the rest of your objections I also find questionable, but I’ll pick on one “call me when [OO Calc] supports more than 65,000 rows”

John, call me when Excel supports more than 65,000 row because that’s its maximum also. I think you’re fishing pretty hard for a bunch of nitpicks, some of which – like this one – are just wrong.

You remind me of some guy on Slashdot a few years ago who asserted that Linux wasn’t ready for prime time because it didn’t run his $10,000 Electronic Engineering Design package for FPGA’s (complex programmable chips) as if that were a normal desktop application required on every desk in a corporation, and not just a specialized package run by a few engineers.

The whole “no hardware, no applications” meme needs to be buried because it is no longer true. Over the last few years it’s turned into a frantic game of moving goalposts that would be more accurately described as “but linux isn’t windows, how will I cope?” – the mother-duck syndrome in other words. Ubuntu (in particular) would be just fine if supported by corporate IT in a planned rollout and not snuck in on developers personal laptops like it usually is.

One more anecdote. A few years ago my kids came to visit me when I was working overseas and I set up a Red Hat box for them (that was the one with the printer). They stayed for a month and only noticed they weren’t using Windows when my son wanted to play one of his PC games. Apart from that they were fine with their DVD’s, their music, and their drawing (using Gimp rather than Photoshop which they were used to)

One interesting thing about this experience was that the number of support requests I got from them when using Linux was similar to the number that I get from them now that they have Mac’s – zero. A distribution like Ubuntu requires only a little more support than OSX (which I concede is definitely the sweetest thing out there), and a lot less than a windows box.

The only reason why Linux adoption is slow is intertia (and also that Macs are a viable alternative) That will be gradually overcome as corporations face their next rollout (ie.. with Vista) and then have to confront not just normal configuration costs, but also retraining – have you seen the mess that is Office 2008 with the “ribbon”?

The remaining barrier to corporate adoption – which affects both Linux and OSX – is Exchange/Outlook. Completely proprietory, closed, undocumented and incompatible even with itself from release to release. It is MS’s last monopoly, and a very expensive one.

This could change rapidly now that Apple have a.) licenced Exchange API’s to install in the iPhone and OSX, and b.) offered open alternatives to break MS’s monopoly once Apple products are in the door.

Bill Cushing
Bill Cushing
16 years ago

Nicholas

Why do you say you need a ‘spell-checker’? What on earth would you do with one? Surely you went to school before they stopped teaching English? Useless, and unnecessary.

I would agree, though, that a dictionary and a thesaurus may be worthwhile features of a word processor.

Mark
Mark
16 years ago

Jacques,

I respectfully disagree with your analysis of NT being “pretty much state of the art” when it came out; it was largely based on VMS, which had been around for donkey’s. My own experience with it was in the mid 90’s, when I moved from Linux to NT 3.51 on my desktop — and moved back very promptly to Linux, because I had to reboot to add a virtual IP address to an interface (something I did a lot of in the 90’s).

I think that the Novell admins at the time also felt this way. We all understood that NT was an immature operating system missing many important features, and it ultimately owed it’s success to non-technical factors. In my opinion, NT succeeded in large part because it was a single coherent system; Microsoft’s increasing marketing power was also significant, especially against a poorly performing Novell. Unix was easily a better server OS than NT at the time (and IMO still is) but, like Linux, was fragmented between the HP, DG, Sun, SGI and other big players at the time.

On the other hand, Windows doesnt ship with thousands of contributed programs integrated into the overall package. Microsoft dont offer centralised, integreated repositories of software. There are places where it balances out.

I disagree, both with the idea that MS doesn’t offer “centralised, integrated repositories of software”, and also with the implied notion that such a repository is actually an advantage of Linux.

In the first, while MS does not offer a centralised repository of software in the same technical sense that most Linux distributions do, any local Dick Smith, HT or Software City certainly does offer a centralised repository. In most cases they are far easier to search than “rpmfind” or “packages.debian.org”, and there is actually a better selection.

To illustrate my second point, to download and install software for either Windows or OSX you simply:

* google (familiar) or search your favourite online store;
* click to download (familiar);
* (double-) click to install (or for OSX, drag to install).

To download and install software for Linux from the GUI, you

* umm… is it Red Hat or SUSE or Debian or Slackware or Gentoo?
* is it an old version of Red Hat or a more recent version?
* is it GNOME or KDE or text based?
* If it’s Debian, have you configured your /etc/apt/sources.list properly?
* Have you updated the repository cache? dselect AND apt caches?
* Did you know that installing “vim” will require the installation of another 17 packages? Really? Because, it’s like, important, right? PROCEED Y/N?

I don’t want to give the wrong impression, since I love unix, it has been my development environment of choice for almost 20 years. But Linux is clearly repeating the same mistakes as Unix did.

Unix is awesome, but a great desktop is essential, and both of those reasons are why I bought a Mac.

James
James
16 years ago

Linux, due in part to its roots, tries to cater to developers, novice end-users, terminal geeks, X windows geeks, Unix geeks, corporations and the free software movement. Many of these groups are antagonistic to one another.

And this is the core of the issue – “Linux” is a catch-all, the term means something different to everyone. A Field Guide to Free Software Supporters is a good overview of the various positions. So does getting people to use free software on non-free (Windows/OS X) help Linux beat Windows? I’d argue yes, as it makes it easier for people to move later on.

The other thing is the Microsoft monopoly has meant people expect there to be one platform uber alles which will beat all the other platforms out of the market. Which is ridiculous. Different software is appropriate for different markets. Linux is fortunate in that it can be adapted to many markets, but this doesn’t mean everyone will want to use it for everything. The growth of OS X is also good from this perspective – programmers will have to stop assuming everyone runs Windows.

To get back to the original question, Linux won’t beat Windows on the desktop, but that doesn’t matter because the desktop is not a growth area. Mobile internet devices are where it’s at, and Linux is definitely mainstream there. The desktop is a hard market to crack because of the network effects of the Windows monopoly, for business it’s the random ISV app that is essential for them only runs on Windows, for the home it’s gaming. I run a Linux desktop at home and gaming is acceptable thanks to Wine, but I’m a geek and fully understand why all my friends run Windows XP – it’s the platform for games. For all other everyday needs free software is pretty good. Note that Photoshop, MYOB, SPSS etc. aren’t everyday software, they come under “random ISV app that’s essential” since some people can’t live without them, others don’t care. Tax software – eTax isn’t available on OS X either.

Drivers: JohnZ said “every Dell laptop I bought over the last few years had at least one major problem.” These days Dell is pushing for hardware with good Linux driver support, or you could buy from ZaReason who advertise working suspend/resume on some models. Intel pushes their drivers into X pretty quickly, however the lag to when they end up in distributions is still a problem. Small companies can get the Linux Driver Project to write drivers for them.

The open source stack is a mess of different and competing egos, nobody is in charge and nobody really talks to each other. Linux distributions are the Unix wars all over again; but this time the wars are being fought without very large companies spending lots of money; its doomed, I tells ya!

One of Sun’s selling points for Solaris is that it is one stack managed by one company, so things do work together, or at least you have one place where you can go and pay money to get things fixed (since they participate in a lot of upstream free software communities these days).

Exchange support is being worked on by the OpenChange project, which will be integrated into Evolution eventually. Windows costs about $100 bundled, not $30.

James A
James A
16 years ago

You’ll note I didn’t mention OpenOffice.org in my post above. Why? Because it’s one of Sun’s worse open source community efforts, so bad a lot of community work goes into a fork, ooo-build. Maintaining a fork wastes a lot of energy, but Sun just isn’t interested in having some problems fixed. Sun is OK at working in open source communities where it’s not in control, but bad where it has donated most of the code. It’s also highly fragmented internally, so while it claims to be an open source company these days, you have to evaluate this claim for each project it’s involved in individually.

Tel
Tel
16 years ago

The ribbon is a sad story of how familiarity defeated design. Its a brilliant design backed up by scads of research, testing and hard data, but its unfamiliar to people whove gotten used to the quirky, ad-hoc arrangements of functionality in every version of Office up to 2003.

You know what was a good design? Backed by about five thousand years of research and in-field testing? Written Language. Damn awesome invention. You have these things called words, and each word is assigned to a particular meaning and people learn the words. A typical human can remember several hundred thousand words and generally achieve instant recall when they want to say something. A modern computer can search through tens of millions of words (even mapping against synonyms and partial matches) faster than you can blink.

Think about the most successful application of recent years — the google search system. What is it? It’s a command line interface. You type words in a box and it goes and gets a response to those words. After all this time experimenting with menus and GUI and point and click, we are no reinventing what we already had. By all means have a go at redesigning the google API to work on purely point-and-click (don’t bother building it, just go through the theoretical experiment with a few sketches on paper) see what a complex mess comes out as the result.

Agreed on MySQL, though theres some degree of transaction support in 5.1 and up.

Pick the right tool for the job. PostgreSQL has supported transactions since forever, plus ultra complex index options and user definable functions and all that heavyweight stuff — for jobs where you need it. MySQL was designed to be lightweight, fast, easy to use and simple. For many applications that’s a perfect match. If you really want heavy, then buy Oracle (and might as well buy the whole Linux from them too so you get bottom to top support), or even but IBM’s old DB2 which also runs on Linux.

If you want to load up several million rows then scan them linearly to produce summary information (NB: index is useless here) then MySQL will win every time because scanning bulk rows is the thing that it does really really well.

John, call me when Excel supports more than 65,000 row because thats its maximum also. I think youre fishing pretty hard for a bunch of nitpicks, some of which – like this one – are just wrong.

None of them support 65000 rows, none of them support 50000 or even 20000. Sure, you can load 65000 rows into the sheet, but try doing calculations, try anything even remotely complex and the thing just grinds to a halt. Memory usage blows out to over 1G and believe me, you better enjoy getting cups of tea, because that’s all you are going to be doing. Now do the same calculation in MySQL and it will say, “What? Only 65000 rows? Are you kidding me?” Even grunging perl over a massive text file will grind through rows faster than any spreadsheet you care to name.

Spreadsheets are great for the presentation of results data to management, with a bit of a cheesy graph in one corner, big headings around the place, and maybe a handful of tweakable options to try some simple scenario analysis. You can do neat stuff in maybe a dozen screens worth of spreadsheet but that’s about where it ends, for big jobs, use an appropriate tool.

gilmae
16 years ago

I remember the first interview I had in the IT industry the interviewer told me that programmers were pointless, everything worth doing could be done in Excel. I’m only half sure he was winding me up to see how I handled it.

Earlier someone said that wasn’t even remotely close to usable for the average user. I disagree. My experience is that for the average user the difference between Linux and Windows is UI and even then just the look-and-feel component. For anyone doing email, web and small documents it is more or less the same as Windows.

The only real problem these people are likely to run into are printers and I fully acknowledge that when you come home with a winprinter, the kind where the manufacturer has outsourced a bunch of the processing to the OS, and you try and plug that into a linux box, you are in for a world of misery.

But generally I find it is the unusual users who run into problems, people trying to do more esoteric stuff like dual-head or voice command. People like me who, no matter what they want to do, can find something that will give them just enough rope to hang themselves. In the windows world you’d either pay out a bunch of money for a completed solution or – in many cases – there would be no rope at all.

People who are willing to experiment with another OS are not average people.

David Rubie
David Rubie
16 years ago

Theres some interesting points of view in this thread from an end user perspective, but from what I’ve seen over the last 15 years or so, Linux isn’t going to remove Windows from the desktop until the software development tools catch up. Linux dominance in the LAMP sector is a tiny, tiny fraction of professional software development despite the massive numbers of little websites that use it.

Visual Studio (Microsofts development environment) is their last killer application. Ever since Visual Basic 6 killed every other proprietary and free GUI based programming environment, Microsoft have had a lock on the desktop. For starters, the 3rd party applications in vertical markets are massive and pretty much all Microsoft. It looked like they would all shift to the web 10 years ago, but it never happened. Even inside big companies, there are probably billions of dollars of applications written in some variant of a Microsoft language (from excel macros to full blown C++ and C# applications and everything in between).

None of that stuff runs on Linux easily (advances in Wine notwithstanding).

Before I get jumped on, I know how much of a crock VB6 was, but everything else was much worse for a workaday programmer who isn’t interested too much in uber-technical stuff. Visual Studio 2008 is a really nifty tool and fixes much of the broken-ness of the earlier MS languages, and is probably set to extend that Microsoft desktop dominance for another 5-10 years. Why? Linq 2 sql. It’s a departmental programmers wet dream, and once they start working with it, they’ll quit the job before switching tools.

gilmae
16 years ago

Sure, Visual Studio doesn’t run well on Linux, but a sizable chunk of linux-based programmers would sneer and open emacs, vim. Or gedit while dreaming of textmate.

I’m also not so sure about how much of a killer app LINQ is going to be. It’s pretty much just an Active Record implementation, no? It’s not as if they couldn’t use (the ruby implementation) ActiveRecord or the implementation that drives Django; and I bet there’s a Java implementation somewhere as well.

David Rubie
David Rubie
16 years ago

Gilmae,

I think a lot of people over-estimate the nerdliness of most corporate programmers. The vast majority of them are business domain specialists who program to specific problems, not uber-nerds who have paroxysms of delight over the “correctness” of their chosen tool or delight in wars over which text editor is the best. They need something that’s easy to learn and everybody else knows, so they don’t have to solve 100% of their problems by themselves and other programmers who know the tools are easy to find. They are not “great” technical programmers, but they don’t have to be.

The LINQ stuff is better than Active Record, not because it’s technically better, but because Microsoft wrote it and integrated it properly into the development environment. Any lowly business domain programmer will be weeping buckets of joyful tears as they don’t have to write yet another class that assigns the contents of their objects to a database table with a tools they know will be around forever and available everywhere. They literally drag and drop their tables from the database onto the design surface and the tools do the rest.

In one sense, yeah, LINQ is just another O-R mapping tool, they’ve been around for ages. The killer difference is that Microsoft is giving it away, you don’t have to buy it, so it becomes universal amongst that class of programmer whose entire raison d’etre is mapping endless amounts of business classes to database tables. That’s a massive win, it’s such a boring job and now it’s basically automated so they can devote more time to the logic of the application.

For some classes of problem (say networking issues, video streaming, web page serving), Linux is absolutely a better choice. For boring business applications where the database is the computer, MS dev environments kick everything else all over the shop including Java.

gilmae
16 years ago

My day job is churning out boring business applications in a MS shop. In this I am – at best – a journeyman. I do this stuff to pay the bills while I do the interesting stuff in my own time, the stuff where I get precious about the right solution.

So with that background in place, I agree with everything you just said. Particularly the bit about weeping with joy. Over the years I’ve gone a long way to implementing LINQ myself because if it was getting to wrist cutting time whenever I had to write another class to dump and retrieve data.

I agree right up until the last sentence. The IDE is all right even if it is memory hungry, but the rest of the dev stack sucks arse. Particularly MS SQL server. I’d probably kill…well, maybe commit grievous bodily harm to get Oracle into my dev stack.

David Rubie
David Rubie
16 years ago

gilmae wrote:

Particularly MS SQL server. Id probably killwell, maybe commit grievous bodily harm to get Oracle into my dev stack.

OK – SQL server is the red headed step child of database servers, I can agree with that :)

It’s still better than MySQL though, which is primordial ooze in comparison.

Mark
Mark
16 years ago

Hi Jacques,

I think you miss my point, because you tell me the “Ubuntu experience” but the question was originally about “Linux”. Ubuntu is just one flavour of linux. So you’ve sort of skipped at least 3 steps until you get to “the easy bit”, and even then your answer is contentious (see below). This is one of the big reasons why mass Linux adoption is so hard — the great thing about Linux is that there’s so many to chose from! (and they are all different).

I was thinking on the way to work this morning about how hard it is to get software into a standard Linux repository. Since I write commercial software (the shame!) there is no hope that my software could ever end up in a large Linux repository. Ironically, this means that the repositories themselves are not free — they are actually gated communities, strongly biased against commercial use. I respect their right to operate this way, but it’s not ideal for end-users. An opposite example is the soon-to-open iTunes App store, which does in fact provide a repository (and a commercial mechanism).

Replying to your other comments:

I do realise that Leopard is a UNIX; that was actually my point. If it doesn’t already do so, Apple is going to dominate the market for desktop Unix, at the expense of Linux. This is going to hurt Linux’s position vis a vis Windows. In my opinion, the question is no longer can Linux win, but can Apple, which is sort of the point of all of my postings.

Regarding finding OSX in stores, I think you miss my point again. I’m not trying to be harsh, but you said that Windows doesn’t have a central repository, and I said that it does, and that they are called “shops” and “online stores”. Although it’s not obvious, they are actually more powerful and less closed than Debian or Red Hat repositories.

But Windows is fiddly. Which version of Windows? Do you have MSI 2.0 2.1 3.1 installed? .NET 1.0? I require .NET 3.5.2! DirectX 7, 8, 9 or 10? Have you registered the software? Whats the key? Too many attempts. Install, Deny or Allow? Uh oh, DLL conflict detected in pre-.NET code. Guess youre SOL.

This is a dangerous comment to make when comparing Windows and Linux. I have been in RPM hell, and APT has become much less friendly since Etch. Now I’ve also heard about DLL hell, of course, but I’ve also spent far too many days compiling stuff on Linux or trusting backports from people I hardly know, because I can’t find a compatible RPM or DEB. So I’d say that at best, these two systems are a tie.

But I think we are actually in broad agreement. I’d love a release of Debian with an OpenSolaris kernel – I am hanging out to be able to use ZFS for my phat replicated NFS servers. I agree that OpenSolaris (the OS) is probably horrible, but I wouldn’t agree that RPM, YUM or APT are perfect packaging systems; and I think Murdoch’s entrance into Sun is a very good thing for Sun (not so much for Linux).

At the moment OSX is my operating system of choice, and I find it difficult to imagine a time when that won’t be true. It’s easy to use, it’s Unix, I can install gawk (via Portage), it looks pretty and it works amazingly well on my new MacBook Air, which is the best laptop I’ve ever owned (way better, subjectively, than my supposedly more powerful MBP). Apple are kicking a huge number of goals at the moment, IMO they are already beating Linux and I think they’ll eventually supplant MS on the desktop; but it’s a 10 year job.

All of the preceding technical discussions about (eg) MySQL v. Postgresql, dev tools, etc really miss the point I was making, which is that Linux is a mess of egos and that this mess is a replication of the old days, when Windows beat the crap out of Unix. Nothing has changed — except that (arguably) Windows has gotten better and Linux has gone nowhere — and so there is no reason to think that Linux will beat Windows.

Cheers
Mark

gilmae
16 years ago

First class member? Okay, I clearly do have a misunderstanding about LINQ, I thought it was classes and attributes that abstracted away the writing and execution of sql for CRUD operations.

Nicki LaGrange
Nicki LaGrange
16 years ago

As to why would Wal-Mart or the like get involved – Tesco in the UK (the supermarket chain) is already selling own-brand apps: http://www.tescosoftware.com

So maybe something like a Tesco/Linux OS isn’t that far fetched.

David Rubie
David Rubie
16 years ago

Jacques Chester wrote:

LINQ is an honest-to-god innovation from Microsoft, if youre prepared to ignore the fact that you could do it in Lisp to broadly the same effect.

Or dozens of 4GL languages from the ancient past where you invoked a pre-processor to parse your embedded sql-like-language. It’s not a new technique, but it is very nicely done. Which means it will get used a lot, I think.

gilmae
16 years ago

Just out of curiosity, have either of you actually used it? And if so, can it accept SQL text to do complicated queries with rampant joining, or does it handle that sort of thing fairly well by itself?

David Rubie
David Rubie
16 years ago

gilmae wrote:

And if so, can it accept SQL text to do complicated queries with rampant joining, or does it handle that sort of thing fairly well by itself?

I’m using it on a small project at the moment. It allows for arbitrary SQL or even substitution of stored procedures for SQL statements if needs be at the object level, while hiding that stuff at the pointy end.

I’m pretty sure it does generate SQL down at the connection level but it’s hidden from you unless you feel the need to tinker. I would anticipate that the SQL server only stuff will disappear very quickly as other database vendors ramp up the amount of meta data their drivers supply.

As long as your database is fairly standard, and you are happy to be co-opted by the MS techniques for concurrency management based around timestamps, it’s about as good as O-R mappers come. You have to design your database more-or-less upfront though and be prepared to stick to the tried and true techniques of foreign keys and sensible indexing to make it perform and give it enough meta data to draw inference about the object relationships. It’s happy to do “lazy instantiation” for objects you might not need straight away, a lovely feature that the writers of these things often forget to do.

The bad? You still can’t display arbitrary properties from objects a couple of foreign keys deep on a grid without implementing your own custom property, but arguably you shouldn’t be doing that anyway. Like most of these things, the object relationship to collections is clunky, but I’ve never seen it handled very well anywhere. You’re also still stuck with the age old object versioning problem and better be prepared to smack your developers up if they don’t write change scripts when deploying new versions of the software. I’ll bet they all forget that step.

i.e. overall I think it’s good (good enough at least), and having written a few of the stupid things over the years am heartily relieved by it’s presence for all the boring sh*t I hate doing.