Slashdot Mirror


How Apple Killed the Linux Desktop

An anonymous reader writes "Klint Finley discusses Miguel de Icaza's thoughts on how OS X killed Linux on the desktop: 'de Icaza says the desktop wars were already lost to OS X by the time the latest shakeups started happening. And he thinks the real reason Linux lost is that developers started defecting to OS X because the developers behind the toolkits used to build graphical Linux applications didn’t do a good enough job ensuring backward compatibility between different versions of their APIs. "For many years, we broke people’s code," he says. "OS X did a much better job of ensuring backward compatibility."' This, he says, led developers to use OS X as a desktop for server programming. It didn't help that development was 'shifting to the web,' with the need for native applications on the decline."

30 of 933 comments (clear)

  1. It's too bad by gravyface · · Score: 5, Insightful

    Because nothing beats Linux for package management. Miss not having a repo of open source at my disposal; the App Store will never touch it.

    --
    body massage!
    1. Re:It's too bad by OzPeter · · Score: 5, Informative

      Because nothing beats Linux for package management. Miss not having a repo of open source at my disposal; the App Store will never touch it.

      You mean you miss something like MacPorts?

      --
      I am Slashdot. Are you Slashdot as well?
    2. Re:It's too bad by gagol · · Score: 5, Insightful

      ^ This

      Running on Linux fulltime for 3 years and counting... I find it funny how in so many people's measure the non-commercial linux offering with commercial metrics. Linux fills my niche pretty well, employees at Google would agree with me too. The desktop is a viable alternative, I say it suceeded where it counts, to computer literate people like me and many many other slashdotters.

      Market domination is not the only way to succeed.

      --
      Tomorrow is another day...
    3. Re:It's too bad by jacknifetoaswan · · Score: 5, Interesting

      Agreed. I've been begging my IT department to let me run Linux on my laptop, and run our corporate Windows image in a desktop VM, but they won't let me. When I had more direct admin rights, I was running a dual boot system on my laptop, and was using the Linux side for about 80% of my work. The only time I'd head over to the Windows side was when I needed to get into Sharepoint or something like that.

    4. Re:It's too bad by Bill_the_Engineer · · Score: 5, Informative

      It's also 3rd-party and at the mercy of Apple and requires a bunch of prerequisites.

      At the mercy of Apple? It's amazing how much anti-Apple bullshit gets modded as "insightful".

      Let's not forget Homebrew. Homebrew does a nice job of packaging programs that coexist with the versions of prerequisite programs that are included in the OS X system files.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    5. Re:It's too bad by Alan+Shutko · · Score: 5, Insightful

      FWIW, I ran Linux full-time from 1994 through 2008. What finally did it for me was power management and the hassle it took to get laptops to work well under Linux. Linux worked well if you picked up a 1-2 year old laptop, because by then you could find support for most of the hardware, but you were in for a world of hurt if you wanted anything new.

      Anecdotally, I know a bunch of people who switched to Mac for the same reason. Get a MacBook, and you had a laptop that could suspend and resume reliably... And you had your shell underneath.

    6. Re:It's too bad by Zero__Kelvin · · Score: 5, Insightful

      "Agreed. I've been begging my IT department to let me run Linux on my laptop, and run our corporate Windows image in a desktop VM, but they won't let me."

      You just pointed out the only real problem with Linux in a desktop environment: Incompetent IT Departments.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    7. Re:It's too bad by Bill_the_Engineer · · Score: 5, Insightful

      The most important question to ask is "Does it work for me?". If you answered yes, then why should you care what someone else use?

      I use Linux on the server and OS X on the desktop. I like both.

      I don't know why the Linux fanbois are getting all riled up.

      1) We are talking about Miguel de Icaza's opinion.

      2) Truth is much worse. Linux had its own desktops fucked up by their respective projects. Just look at all the bitching and moaning on Slashdot when someone brings up Unity (the default on Ubuntu), Gnome 3, or even KDE 4. (I think KDE is the least offensive).

      Personally I think the reason this topic raises the noise level on Slashdot is the posers that like to boaster their "credentials" by making derogatory remarks about something they don't understand.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    8. Re:It's too bad by Shompol · · Score: 5, Insightful

      Because all closed code is at the mercy of whatever company owns it. Its support can be dropped at a whim of the management, thus "at the mercy" is an accurate description. In fact, all closed software meets the end of life sooner or later, and then all the users who rely on it are SOL. This is not to say that free software is immortal, but at least we are guaranteed that it will be around as long as someone capable of maintaining needs it.

    9. Re:It's too bad by Anonymous Coward · · Score: 5, Funny

      Indeed, it has been known for millennia that you can be thrown out of the walled garden of paradise if you interact with an Apple in a non-approved way.

    10. Re:It's too bad by jedidiah · · Score: 5, Insightful

      apt-get is more like the official app store.

      It comes with the system. It handles pretty much anything. It can even accommodate 3rd parties.

      So in that respect there's really nothing comparable on a Mac. Just stuff that kind of sort of partially covers what apt-get does.

      Being not-quite-comprehensive kind of defeats the entire point.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    11. Re:It's too bad by gravyface · · Score: 5, Insightful
      This isn't anti-Apple bullshit, it's the truth: from the MacPorts FAQ:

      Will my MacPorts install continue to work after installing a new major OS release or migrating to a new machine with a different CPU architecture? In general the answer is no. See Migration for how to get things working again.

      Ubuntu:

      do-release-upgrade

      ...

      apt-get install $package

      There's a 99% chance that will Just Work (tm). The other 1%, well, likely something's not right to begin with (wrong apt sources, etc.) or it's an edge case.

      Look, I love my Macbook, but I choose to run VirtualBox with Windows 7 and Ubuntu because I feel that while it does a great job of some things, it's poor at best at other things in comparison to other OSs. One of those things is having a core, reliable package management system: when it's time to release some new code and/or configuration changes for a client, I don't want to get burnt by a 3rd-party package system not working as expected.

      --
      body massage!
    12. Re:It's too bad by swillden · · Score: 5, Informative

      Linux doesn't do well as a Desktop OS.

      Dang. I've been doing it wrong for 13 years. Thanks for letting me know.

      1. Support 3rd party hardware. Apple and Microsoft are willing to let companies make drivers for their hardware and put their own license on them

      2005 called and wants its argument back. It's not absolutely perfect, but Linux hardware support is generally excellent these days. Outside of niche devices virtually everything works great. WiFi was a particularly thorny problem for a few years, being both widely problematic and obviously very important due to the situation with a few widely-used chipsets, but that seems to have ceased being an issue.

      2. Consistent UI. People get stuck, they try to find instructions the instructions need to be consistent with their system.

      Meh. People who aren't knowledgeable enough to figure things out on their own use Ubuntu, and there is plenty of information out there for Ubuntu.

      3. The little features matter too. Time to put your system to sleep and wake up. Does that keyboard light work, How quickly can you connect to a wireless network. Does your screen leave artifacts floating around, consistent Copy and Paste.

      Umm, everything you just said works great for me, and has for many years, on many machines. And not just on the high-end ThinkPads I've always used; I've installed Ubuntu for people on low-end Acers and e-Machines, and everything just works, at least in the last 3-4 years.

      Either you've had some exceptionally bad luck or your experience is out of date.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    13. Re:It's too bad by Anonymous Coward · · Score: 5, Informative

      . I eventually did an in-place reinstall of Snow Leopard. XCode never worked right again; I'm getting a new laptop soon and you can bet MacPorts / Fink will be on my short list of software to avoid.

      Well, you fucked up, didn't you? Rest assured, it wasn't MacPorts that hurt your install, it was you. MacPorts installs all it's ports in the /opt directory... and touches nothing else. You can't just reinstall the OS over top of XCode and expect things to still work... you blew away XCode frameworks when you did that. XCode comes with an excellent and comprehensive uninstall script, you should have used that first, and then tried reinstalling XCode. Reinstalling the OS just proves to everyone you had no idea what you were doing. If you do reinstall, a clean install is always preferred, and, it goes without saying, a reinstall of XCode is par for the course.

  2. Apple didn't kill it, Microsoft did. by iCEBaLM · · Score: 5, Insightful

    Windows 7 was the nail in the coffin, if Windows 7 wasn't as good as it is, and another Vista stinker was pooped out of Redmond then Linux possibly may have had a chance.

    1. Re:Apple didn't kill it, Microsoft did. by Anonymous Coward · · Score: 5, Funny

      Don't speak too soon, Windows 8 is a-comin'.

    2. Re:Apple didn't kill it, Microsoft did. by jedidiah · · Score: 5, Insightful

      Linux made the world safe for Unix again. What seemed like an inevitable take over of the server room by Microsoft was blunted. Commercial Unixen continue to thrive and Linux also thrives in the same capacity.

      If you need serious work done, there is a serious alternative. We don't have the nightmare scenario of the amatuers from Microsoft being in control of everything.

      All around, Microsoft is a lot less menacing than it used to be.

      --
      A Pirate and a Puritan look the same on a balance sheet.
  3. De Icasa, by BanHammor · · Score: 5, Insightful

    I can't manage to notice that Ubuntu or Mageia or Fedora stopped shipping because bam, Linux Desktop is killed by MacOS X. Can you tell us why exactly is Linux dead? (And why would we trust Icasa anyway? It's not like he actually did anything of note or made the right choices in the last 4 years or so.)

  4. Linux marketshare going down? Or OS X going up? by captainpanic · · Score: 5, Insightful

    So, the way I see it, there are 3 competing families of OSs. That is Windows, Linux and Apple. With Linux traditionally installed on about 1% of desktops, I would think that Windows is the big loser here. If OS X is nowadays installed on 6 -7% of desktops (see: TFA), then it's Windows that lost marketshare.

    Sure, it could have been Linux to steal that marketshare. Linux might still benefit from it though... once the market realizes that you can switch without turning your PC into a smoking pile of rubble, they also might try Linux. I still think that Ubuntu is a very decent option.

    1. Re:Linux marketshare going down? Or OS X going up? by garcia · · Score: 5, Insightful

      Windows is losing marketshare, not Linux. Go to a college campus or local coffee shop and look around at those using their computers to do work. Count how many PCs you see and how many Macs you see. I was honestly shocked to see Macs beating PCs every time at many different study locations I was using.

      Those people using laptops are probably not going to be using Linux to do their work and are either going to choose Mac or Windows. While I continue to use Linux on the server and have solely for the last 10 years (I used it on the desktop prior to 2002), I chose Mac over Windows for my laptop and I know many others who went that direction as well.

      In another thread someone said if Win7 wasn't as good as it is, Linux may have had a chance. I disagree. In fact, using Win7 on my work desktop and hating the quirks it has was what really helped push me to the Mac.

    2. Re:Linux marketshare going down? Or OS X going up? by Anonymous Coward · · Score: 5, Insightful

      There's a reason that Mac laptops are popular with developers. In a business setting, one may need commercial software like Microsoft Office or Adobe Photoshop. it can't be done on Linux unless one thinks foolishly a user would depend on WINE for this. A Mac is a great platform for web development with Java, PHP, Python, Ruby, etc.

      Macs give you a UNIX OS with commercial and open source apps. Macs also just work. There's no screwing with changing settings so you can actually see your display because the new kernel decided that ACPI video should have the backlight turned off on your POS Toshiba laptop. The sound card works. Crazy stuff like hardware just works on a Mac. Linux could be great and it could get real marketshare if people could only learn to work together. There's so much competition and reinventing ideas in the Linux community. By the time a sound system or video drivers are polished, a new API is out to replace it. It's often not even the kernel that's the problem. There is a benefit to the Linux model, but also a cost. Compatibility isn't all bad. That's why I use BSD and Mac OS X.

      There are some really good, mature Linux developers, but there's also some immature folks working on key projects like Gnome, Ubuntu, etc. that think they can change everything overnight and everyone will follow. It doesn't work like that.

  5. Actually Miguel... by Onymous+Hero · · Score: 5, Insightful

    Gnome3 has killed the Linux Desktop. Thanks.

    1. Re:Actually Miguel... by AliasMarlowe · · Score: 5, Insightful

      Gnome3 has killed the Linux Desktop. Thanks.

      Gnome 3 and Unity collaborated on it (did some MS/Apple plant steer them into uselessness?). A pox on both of them, anyway.
      All of our home PCs have migrated to Xubuntu, because xfce gives an actual working desktop. And with compiz, it's snazzier than OSX or Win7.

      --
      Those who can make you believe absurdities can make you commit atrocities. - Voltaire
  6. Infighting, not developers killed Linux by CharlyFoxtrot · · Score: 5, Insightful

    Like many other geeks I think I looked at Linux desktops back in the Gnome 1 days and thought "Hey, this thing will be really nice in a couple of years when it's finished." Fast forward a coupe of years, a lot of infighting and a rewrite later and I was still thinking that or would have I hadn't lost all faith that these guys could ever produce anything to rival commercial GUI's. So now I'm a mac user and I get all that UNIX-y goodness and none of the open source drama queen bullshit.

    --
    If all else fails, immortality can always be assured by spectacular error.
  7. Yes, it did help. by neoshroom · · Score: 5, Insightful

    It didn't help that development was 'shifting to the web,' with the need for native applications on the decline.

    Yes, it did help. Web applications definately make switching easier (to Mac or to Linux). He's wrong about the web emphasis hurting Linux.

    I'm also not sold on the idea that it was backward compatibility that was the problem either. Of all the options, Microsoft has the OS with the best backward compatibility.

    First, Mac's consistently break things with each new version, unlike de Icaza states. However, what is brilliant about Apple is every time before they introduce a new feature or break an old feature they have a huge marketing push for it. That marketing push makes the users become interested in that new feature. The developers, who want more users and who may also themselves be excited about the feature, then implement it. This is why we see apps bragging about their Retina graphics on the App Store before Retina machines are even widespread or their notifications or, back in the day, their dashboard widgets. Mountain Lion broke lots. Lion broke lots, but the Mac developers always fix this fast because they are very aware of new software versions due to marketing efforts. Linux has nobody marketing each new feature and edition and focusing both the users and developers in this way.

    Secondly, Linux is too difficult for non-computer-literate users to use. It doesn't have to be and indeed strides have been made, but until you will literally never have to use the terminal and you can put a Windows software disk into your Linux CD-ROM drive (while those still exist) and have it install and automatically use Wine with the correct settings and work on the first try without tweaks, it is too hard for grandma.

    That said, Ubuntu with Cairo-Dock is a dream to run compared to any version of Windows out there and I have no idea why people don't use it more. I love it. It's not my main OS though. That would be OS X. I'm one of those people using OS X as a desktop for programming that de Icaza talks about, but I can tell you it wasn't backward-compatibility that made me choose it.

    --
    Big apple, new Yorik, undig it, something's unrotting in Edenmark.
  8. Not Microsoft or Apple, DesktopLinux killed itself by petes_PoV · · Score: 5, Insightful

    For the average user, not the technical wizz-kid: the average user, Linux was never an option. Id didn't come on their store-bought PC. If didn't "just work" (ever!) and it didn't support most of the peripherals or USB devices that they had or wanted. Blaming Linux's failure to penetrate the average household on anything but it's own lack of marketing, polish, self-discipline, ease of use, support, brand (i.e. not having a million different distros: all the same, but different) or integration is simply an exercise in self-deception.

    OS-X is what Linux could have been if it hadn't fragmented, if it had been properly packaged and supported, if the developers had put some emphasis on ease-of-use instead of "cool features" and obscure options and if it had worked with all the printers, cameras, phones, webcams and scanners that the average user just wants to plug in and have work - immediately and fully.

    If Linux teaches us anything, it's that users will pick integration, polish and design over "free" any day of the week.

    --
    politicians are like babies' nappies: they should both be changed regularly and for the same reasons
  9. Evil Corporate Scum by kenh · · Score: 5, Insightful

    So if I'm reading this right, the way Apple "killed" Linux on the desktop is by offering a quality product, with backward compatability, on solid hardware with just enough *nix plumbing to make most casual shell hackers happy?

    Those bastards!

    Don't they know that, given enough time, the Linux folks could have offered a similar desktop experience if they wanted to but it was more important to create dozens of competing distributions with slight incompatibilities and sublte differences between them for no earthly reason other than the whims of the distribution packagers.

    --
    Ken
  10. KDE vs. Gnome by kurisuto · · Score: 5, Insightful

    In the 1990s, I wanted to get into developing GUI apps for Linux. The single biggest reason why I gave up on it was that the Linux GUI effort fractured into KDE and Gnome camps.

    At the time, I figured that one of the two would win out over the other. There was no telling which might win, and I was reluctant to back what might be the losing horse. This was a serious demotivator. Of course, 15 years later, we've ended up with the worst of both worlds: many Linux installations take up the disk space for both, and we've got two unharmonized APIs continuing to fight for a following.

    With MacOS, there is no question what API you should use. Apple offers a very clear path. For that reason, I feel more confident developing for that platform.

  11. Re:Not Microsoft or Apple, DesktopLinux killed its by leftover · · Score: 5, Insightful

    OS-X is what Linux could have been if it hadn't fragmented, if it had been properly packaged and supported, if the developers had put some emphasis on ease-of-use instead of "cool features" and obscure options and if it had worked with all the printers, cameras, phones, webcams and scanners that the average user just wants to plug in and have work - immediately and fully.

    If Linux teaches us anything, it's that users will pick integration, polish and design over "free" any day of the week.

    This is the most concise statement of the problem I have seen to date. Slashdotters deride the Apple way: 1 choice, hardware and software and it just works. Also the Microsoft way: 1 choice in software, many in hardware and it mostly just works. Then there is the Linux desktop way: many software options all about 80% complete, any hardware as long as you can write your own drivers and kernel modules. The total amount of effort represented by all the Linux options is more than enough to have completed several options fully equivalent to OSX if that effort had been focused into several efforts instead of being fragmented into dozens. Why does the fragmentation occur? Because too much of the rewards for an OSS project (feel-good stuff like having fun, seeing your own name on a project) come from the first 10% of the work. Something needs to encourage people to complete the next 90%: the hard parts like actually making everything work right, accommodating all the variety in machines and peripherals. Then there is the next 1800% of the job: maintenance. These are the weak links in OSS.

    Projects that work, such as the kernel and Python, have a single person who maintains the vision. This person is able to enlist the help of others to implement the vision. Notice that both of these traits parallel commercial startups. Worker bees in commercial startups are rewarded with wages and stock. What are the rewards for worker bees in OSS projects?

    --
    Bent, folded, spindled, and mutilated.
  12. Re:COM, CORBA, Objective-C by lkcl · · Score: 5, Insightful

    So your complaint is that you don't know x11 messaging and dbus?

    ahh, that's a fatal mistake to mention d-bus where i can hear it being said :) i'll deal with this first, then answer your question directly, ok?

    back in 2005 i did a comparison of the d-bus specification and the DCE/RPC specification. the similarity was... unbelievable. i mean, truly, truly unbelievable. the people who wrote the d-bus specification could *literally* have taken the DCE/RPC specification, substituted different words and then published it as the d-bus specification. let me reiterate that, for emphasis, in a different way. *every* concept that is in d-bus is in DCE/RPC.

    however, what d-bus does *not* have is the higher-level APIs. d-bus is so immature when you compare it to DCE/RPC (and then to DCOM which is built on top of DCE/RPC) that it is a child's toy by comparison. the main thing that d-bus is missing - the main benefit which you get from DCE/RPC and DCOM - is the IDL compiler.

    d-bus expects you to hand-marshal all the data! you get a whole bunch of macros, and you're expected to make your own messages out of them! that's just so fucking shit! you'd actually be better off ripping out d-bus from every single application that has that piece of shit in it, and replacing it with 1500 lines of c code, implementing a unix domain socket, and a bunch of #ifdef macros e.g the SIVAL and SSVAL ones from samba's smb.h header file!

    why is that?

    because d-bus gives you the *expectation* that it's solving a problem, when in fact it's doing nothing of the sort. at least 1500 lines of c code and a few macros leaves you under no illusions that you still have a hell of a lot of work to do. .... which finally provides some context which allows me to answer your question. d-bus DOES NOT provide a means to make it easy to do backwards-compatible interfaces. it doesn't even make it easy to make *one* interface, so of *course* developers go and change the API and throw out all backwards-compatibility.

    what i'm saying is: you've entirely missed the point of what miguel is getting at, and what i am also emphasising. perhaps this is due to a lack of concrete examples. so let's make one, ok?

    what do you imagine would happen if you took some component - say... a gnome "clock" widget that plugs into the taskbar - and by that i mean you took the *binary* not the source code - from Gnome 1.0 (whenever it was written - when was it - 15 years ago, now?) and tried to use it in Gnome 3.0?

    what would happen? it would utterly, utterly fail, wouldn't it?

    now, what miguel's pointing out is that even if you took code from *six months ago*, you have the same problem! and that the consequences of this, over the 15+ years in which linux desktop software has been developing - have burdened both the developers, the users and the gnu/linux distros - with constant problems that they're just getting fed up with.

    contrast this with the fact - the FACT - that if you grabbed a random 20-year-old Microsoft OLE (COM) / Active-X (COM) DLL from anywhere off the internet (assuming you can find it), and you tried dropping that Active-X component into I.E. 10 or into the absolute latest-and-greatest version of microsoft office, guess what will happen? IT WILL FUCKING WELL WORK. ... does that drive the point home? do you understand now that saying "you don't know how x11 messaging or d-bus work" is a) failing to appreciate that i know a fuck of a lot about inter-process communication b) entirely missing the point.

    x11 messaging only works because it hasn't really changed significantly. even if you use x11 messaging for general-purpose communications, you *still* have to create backwards-compatible APIs, and i don't imagine that x11 messaging offers any significant assistance in doing that (otherwise i would have heard about it, a looong time ago).

    backwards-compatibl