Not logged in
Log in now
Create an account
Subscribe to LWN
LWN.net Weekly Edition for May 16, 2013
A look at the PyPy 2.0 release
PostgreSQL 9.3 beta: Federated databases and more
LWN.net Weekly Edition for May 9, 2013
(Nearly) full tickless operation in 3.10
Cinnamon 1.4 released
Posted Mar 20, 2012 7:41 UTC (Tue) by Cato (subscriber, #7643)
Posted Mar 20, 2012 9:47 UTC (Tue) by khim (subscriber, #9252)
imagine if Windows did this to Visual Basic devvlopers between XP, Vista and 7
You lost me here. This is exactly what happened! And Windows 8 will bring yet another similar change.
Sure, Microsoft is less cavalier: you can actually run your old environment and it's supported (well, for the time being: it'll be supported on Windows 7 but AFAICS will finally be retired with Windows 8), but this is marketing difference (where GNOME/KDE have blown up big way), not technical difference (where they are doing Ok).
Posted Mar 20, 2012 12:58 UTC (Tue) by danieldk (guest, #27876)
- Tell to developers that Java is the future, then say that Java plus Cocoa binding will be a supported target, then drop the thing altogether.
- Promise developers that there will be a 64-bit version of the Carbon libraries, then drop 64-bit Carbon.
- Tell everyone that Obj-C 2.0 garbage collection (with cycle detection) is the way forward, then introduce automatic reference counting.
- Switch from gcc -> llvm_gcc -> clang as the primary compiler in a year or so. The Homebrew bugtracker is *again* full of bug reports of software that does not compile.
- Start requiring sandboxing of applications (which is not bad in itself), but with so few possible entitlements that some developers that switched to the app store as their distribution medium will have to reconsider.
Posted Mar 20, 2012 13:52 UTC (Tue) by Cato (subscriber, #7643)
It may be a good idea to enable an app store model for Linux to help get a share of the 'just make it work' market, but if Linux loses its key attributes (at least from the kernel level) of flexibility and backward compatibility, I don't think it will do well on the desktop.
That's why Ubuntu (and other Linux distros) should zig where Apple zags: http://bytebaker.com/2011/10/19/ubuntu-should-zig-to-appl...
Posted Mar 20, 2012 14:28 UTC (Tue) by anselm (subscriber, #2796)
Most Linux distributions have had what essentially amounts to an »app store« years before Apple came up with the idea. All that is often missing is a snazzier web frontend – all the technical underpinnings are there and working.
Posted Mar 20, 2012 15:08 UTC (Tue) by Cato (subscriber, #7643)
Ingo Molnar put it best: https://plus.google.com/109922199462633401279/posts/HgdeF... - also the Ycombinator Hacker News discussion is quite good.
Posted Mar 20, 2012 14:41 UTC (Tue) by khim (subscriber, #9252)
if Linux loses its key attributes (at least from the kernel level) of flexibility and backward compatibility, I don't think it will do well on the desktop.
How can you lose something you never had in first place? Linux desktop compatibility is not bad. It's not awful. It's practically non-existent as I've explained many times.
Kernel? Sure. Pretty good compatibility. GLibC? Slightly worse but still pretty good. Xlib? Acceptable, too. GNOME/KDE/etc? Compatibility is for sissies, we'll break everything regularly - people will just rewrite/recompile everything, right?
And yes, this one hurdle was more then enough to lose battle for desktop. Compatibility is strict requirement for a successful OS. It needs other things, too, but without compatibility there can never be a success story because every time you break compatibility you lose significant amount of users (you lose them when you break compatibility years later, too, but by that time people naturally drift to new things thus absolute number of “lost” users is small). Do it enough times and you'll go to irrelevancy.
Posted Mar 20, 2012 15:09 UTC (Tue) by Cato (subscriber, #7643)
Posted Mar 20, 2012 20:05 UTC (Tue) by Company (guest, #57006)
What is true is that nobody has wanted this compatibility so nobody has provided it. Because, as it turns out, it's easier to forward-port the applications that we have than to provide backwards compatibility. Because we have the sources. And the platforms you cite don't.
Posted Mar 20, 2012 20:40 UTC (Tue) by khim (subscriber, #9252)
It's funny you should say that. Because that's not at all true.
No? Why no?
You would know that if you tried to run XMMS today. Or an ages old flash player binary. Or Acrobat reader.
This is strange because I most definitely run a flash player and Acrobat reader under GNOME3. XMMS is GTK+1 app, not GTK+2 app thus it's probably harder to run. Sure, not all is peachy, but if you install few libraries all programs can be made to work.
This is not problem if technical capability, it's question of attitude.
What is true is that nobody has wanted this compatibility so nobody has provided it.
Sorry, but no. Developers have not bothered to provide compatibility because it requires hard work and is not "fun". Users just voted with their feet. Thankfully today UNIX-lovers have nice choice so problem is not as acute as it was few years ago. I'm still keeping my trusty ThinkPad with Linux because I like trackpoint and don't like keyboard without physical Insert/Delete keys but will probably defect one of these days.
Because, as it turns out, it's easier to forward-port the applications that we have than to provide backwards compatibility. Because we have the sources. And the platforms you cite don't.
We don't have sources as well. We don't even have binaries. We have handful of programs we wrote themselves and we like to pretend that all these toys which are available to people on other platforms are useless junk. Well, may be. Some people are truly happy with twenty years old tools and for them Linux will be nice choice (well - for a few more years till Linux-compatible desktop hardware will disappear), but for the rest… Linux desktop is dying. It's only question of when we'll admit it. Hopefully it'll happen before actual funeral.
I can not say it better then Ingo, but my POV is exactly the same.
Posted Mar 20, 2012 21:30 UTC (Tue) by Company (guest, #57006)
And it's the same thing with Ingo's argument. Sure, if you want to build a platform that is about making money, Ingo's plans are awesome. You make sure everybody has a corner where he can make money in and doesn't need to talk to each other. And then everybody makes money.
But none of the Linux desktop distros make money (some want to, most don't even want to). For them it's a collaborative effort to create whatever (I'm not really sure what for most of them, but they enjoy themselves). So they are wildly successful and what they want to do. They just don't make for a great mass-market desktop.
Fwiw, the only Linux distro that I know is making money is RHEL. And as Ingo points out, RHEL does exactly the right thing.
TL;DR: The first thing you'd need to solve is the distro. This has nothing to do with the desktop.
Posted Mar 20, 2012 22:09 UTC (Tue) by khim (subscriber, #9252)
The first thing you'd need to solve is the distro. This has nothing to do with the desktop.
It has everything to do with desktop because other flavors of Linux (Android, Server, even niche things like OpenWRT) don't have this problem: they offer quite stable and usable foundation - and have lots and lots of users. But desktop is only “wildly successful” at losing users.
The sad truth is that desktop Linux people pretend they are playing different game: they explain how they break UI in “latest and greatest” experiments (KDE4/GnomeShell/Unity) to help “Joe Average” when it fact they produce something totally unsuitable for said “Joe Average”.
The whole thing looks like a deranged luxury car: people attach nice surround systems, pretty TVs and nice seats, but nobody bothers to check and make sure said car actually has wheels attached and can move on the road. Linux kernel developers understand that perfectly. Linux desktop developers… not so much.
You make sure everybody has a corner where he can make money in and doesn't need to talk to each other. And then everybody makes money.
This not just about money. For example I know that if I want to play with video I need Windows because there I can find bazillion choices - most of them are free (thus it's certainly about fun, not about money), yet they are not available for Linux because in Linux it'll be about politics, not about fun.
As Ingo said:
This is what I meant when I said "the death cries of a dying platform". It is silence.
As things are going now I'll not be surprised to see in 5-10 years time that you can only practically run your beloved Linux desktop in a virtual box under MacOS or Android system. At which point it'll join “success” of platforms like ReactOS and Haiku. Is it what the KDE4/GNOME3/Unity/etc developers are set to achieve?
If the answer is yes then it's probably time to try that Macbook once more…
Posted Mar 21, 2012 3:06 UTC (Wed) by Company (guest, #57006)
Or we can go and play the fun vs money game some more. Where you can point at successful Windows Open Source apps and claim they do it right (you should pick better examples than AviSynth though) and I will point out where they completely fail (but my grandma fails at writing AviSynth scripts, she can use Premiere just fine!)
But you won't convince me that "the desktop" is at fault here. It is and will forever be a distro-level problem. Distros provide the ABI and API to the developers, not Gnome or KDE. Both Gnome and KDE keep this compatibility just fine. And they could easily do better if the distros using them deemed it the tiniest bit important. But they don't.
Posted Mar 21, 2012 7:32 UTC (Wed) by khim (subscriber, #9252)
But you won't convince me that "the desktop" is at fault here.
Will not even try.
It is and will forever be a distro-level problem.
This is and will forever be a Linux desktop problem (till Linux desktop is alive, that is). Because Linux desktop only exist as a bunch of distros as far as “Joe Average” is concerned. I don't care if GNOME developers have dropped the ball or Debian/Fedora/etc developers have dropped the ball. In fact I don't even care if GNOME developers are real of figment of the imagination. As far as “Joe Average” is concerned Linux desktop is bunch of distributions and GNOME as separate entity does not exist.
Note that all the “bad” examples you've shown are regarding broken backward-compatibility as something problematic (if not outright catastrophic) and then discuss mitigation strategies. Linux desktop rarely deigns the topic important enough to even mention. Can you point something similar to your links above but for Debian or Ubuntu? Backward-compatibility does not even deserve separate web page on distro sites (the most you can find is “upgrade notes” which is most definitely not the same).
Both Gnome and KDE keep this compatibility just fine. And they could easily do better if the distros using them deemed it the tiniest bit important. But they don't.
Well, that's the problem I'm talking about: GNOME developers explain how it's responsibility of distro developers to make everything compatible (the logic is: when different versions of GNOME put different things under the same name in the same place it's because distros can fix the sources) and distros don't care about backward compatibility at all (they only care about upgradeability which is not the same).
The end result: Linux desktop is dying. If this will continue then both distributions and GNOME/KDE/whatever will join XFree86 in irrelevancy: yes, they will be around in some form, but few people will care and even fewer people will use them.
Posted Mar 21, 2012 9:40 UTC (Wed) by dgm (subscriber, #49227)
Nope. As far as Mr. Average is concerned Linux is just like Windows, colors on the screen. Most (say 75%) of the people I interact will recognize the word "Linux" (25% will not). Maybe 50% would recognize "Ubuntu" as an alias for Linux. Only a handful know what Fedora, Debian or Redhat are.
So no, for average Joe, Linux is not a distro. It's the pixels on _my_ screen, and the reason I do not run pirated copies of Photoshop, Office 2010 and Call Of Duty on my laptop like the rest of my friends (don't even try to explain to them that I could if I wanted).
The problem with the Linux desktop is that it has _nothing_ that Joe may need or want that justifies the pains of changing the defaults. Even today, trying a live USB image requires curiosity and good predisposition. Desktop Linux still lacks a killer app.
Posted Mar 21, 2012 9:51 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
Except that there's no Photoshop, or Mass Effect, or CoD.
And that's the main problem of Linux, not some unusual interface defaults. Users can get used to strange UIs, but they can't get used to not having their favorite applications.
Posted Mar 21, 2012 13:20 UTC (Wed) by khim (subscriber, #9252)
And that's the main problem of Linux, not some unusual interface defaults.
Yup. The problem here is not even the fact that Linux has tiny market share (albeit it's the probtoo). The most problematic fact is that Linux is still stuck in old UNIX do-it-yourself paradigm. For the people who are accustomed to compile software from the source Linux is awesome and distributions are pretty usable. And Linux have managed to conquer this niche. When was the last time you've seen Sun or SGI workstations in actual use?
The problem is with the other 99% of users: people who don't know or don't care about compilation from source. The recent trend looks crazy: KDE/GNOME/etc developers pretend to care for this exact segment with streamlined UI, social integration, etc while distributions continue to care only about users who can compile everything themselves. The end result is perfect for the intersection of these two groups - but the size of said intersection is 0.1% at best! If KDE/GNOME/etc care about these users then they need to either convince distributors to care about third-party developers or invent some clever way to sidestep distributors.
Users can get used to strange UIs, but they can't get used to not having their favorite applications.
This is not 100% true. If it were 100% true then switch from Windows to MacOS and switch from Symbian to Android will be unexplainable - yet they are happening. Users can pick different “favorite applications” - but only if there are wide enough selection. Games are especially fashion-affected: even few weeks of delay are reason for discussion on forums. Few months required to be added to the repo (few years in case of Debian or Ubuntu LTS)… this is just not acceptable.
Posted Mar 21, 2012 10:48 UTC (Wed) by khim (subscriber, #9252)
The problem with the Linux desktop is that it has _nothing_ that Joe may need or want that justifies the pains of changing the defaults. Even today, trying a live USB image requires curiosity and good predisposition.
Sorry, but this sorry tale was disproved few years ago quite convincingly. For about a year most netbooks were sold with Linux preinstalled. People rejected them en masse and either returned them or installed [pirated] Windows XP. Linux failed on desktop not because of wide conspiracy among manufacturers, but because it sucks - at least it sucks as an OS for Joe Average.
As far as Mr. Average is concerned Linux is just like Windows, colors on the screen.
Sadly it's not “just like Windows”. It's much, much poorer. Sure, the OS itself is surprisingly rich - where Windows includes toy text editor and toy image editor Linux includes quite adequate spreadsheet, vector editor and more. But at some point Mr. or Ms. Average wants to do something beyond even that rich selection… and finds out there no applications for Linux. Well, there are handful (Google Earth, Wolfram Mathematica, etc), but they are quite specialized and most of them don't even work because system does not include required libraries.
Desktop Linux still lacks a killer app.
Times of a single killer apps are long in the past. If you want to name anything a “killer app” today then it'll be Google's Play Store or Apple's AppStore. Mr. Average today expects to see selection of few hundreds thousands of apps (including games). S/he can live with any of them missing (people have switched from Symbian and Windows Phone to Android even if most applications were never ported), but when it finds total disaster which Linux desktop presents… it's easy to see why people are balking.
If you'll replace “kernel” with “desktop” and “user-space” with “third-party applications” in the following quote then you'll have succinct explanation of what is wrong with Linux desktop:
Dammit, I'm continually surprised by the *idiots* out there that don't understand that binary compatibility is one of the absolute top priorities. The *only* reason for an OS kernel existing in the first place is to serve user-space. The kernel has no relevance on its own. Breaking existing binaries - and then not acknowledging how horribly bad that was - is just about the *worst* offense any kernel developer can do.Because that shows that they don't understand what the whole *point* of the kernel was after all. We're not masturbating around with some research project. We never were. Even when Linux was young, the whole and only point was to make a *usable* system. It's why it's not some crazy drug-induced microkernel or other random crazy thing.
The rot is deep. We are not distributing high-end software packages here, just a measly SDK which includes a compiler, debugger, handful of simple test utilities… yet even ABI used for this small set of features is still not stable: just recently we were bitten when most distributions stopped offering /lib/libcrypto.so.0.9.8 !!! Come one: this is not core feature, it's essential feature (that's why it's in /lib, not in /usr/lib)†. And now it's not just removed from default install, it's not just moved from /lib to /lib/x86_64-linux-gnu, it's not even included in main repo today! It's in “not officially supported software” repo!
†) Yes, I know: / vs /usr split goes away soon. Still today it exists and separates features which are optional from ones which should always be there for the system to even boot.
Posted Mar 21, 2012 12:43 UTC (Wed) by anselm (subscriber, #2796)
Sorry, but this sorry tale was disproved few years ago quite convincingly. For about a year most netbooks were sold with Linux preinstalled. People rejected them en masse and either returned them or installed [pirated] Windows XP.
That may have had less to do with the fact that Linux in general sucks and more with the fact that the machines in question usually came with weird and unusual Linux distributions that not even hardened Linux fans had ever heard of let alone willingly used, so it was difficult to obtain updates on an ongoing basis or additional software. If the manufacturers had bothered to use a reasonable main-stream Linux distribution that would have made a significant difference.
I have an original Asus Eee PC 701, the machine that basically defined the »netbook« genre. When these first came out they literally sold like hotcakes. Also they're way too small to support XP. The default OS was Xandros Linux (a Debian derivative), which incidentally runs quite well as delivered – its main problem, as mentioned above, was haphazard support and a limited range of applications, both of which might easily have been avoided if the machine had come with Debian instead of Xandros to begin with. Even so, the Eee PC 701 is a nice and useful computer within its limits. Personally, I know a bunch of people who had one and have never heard of one being returned because people were dissatisfied with the OS – most people eventually graduated to netbooks with better specs once those became available, or presumably iPads and such. I still use mine, mainly as a glorified MP3 player for dance classes, because it works just fine and I haven't seen the need to replace it.
Posted Mar 21, 2012 10:38 UTC (Wed) by ovitters (subscriber, #27950)
Seems somewhat weird to say that the newer versions of gnome-panel, metacity and gnome-applets, which all received new versions, should somehow not conflict with previous versions. They've always conflicted!
Work was done to ensure these modules work with gtk+3.0. Bugfixes have been applied, etc.
If you want one version of a module not to conflict with another, either do the work, or have someone do it. But don't complain that anyone "dropped the ball".
I'm running gtk+2.0 applications perfectly fine in GNOME 3. I dislike gtk+1.0 themed applications, but they'll work as well.
Posted Mar 22, 2012 11:49 UTC (Thu) by paulj (subscriber, #341)
Not for long. Once there's decent software rendering for OpenGL, the fallback mode will also use GNOME Shell. I believe there are plans to switch to this in Fedora 17.
Posted Mar 20, 2012 13:49 UTC (Tue) by Cato (subscriber, #7643)
On Visual Basic, I meant that the new desktop / OS version doesn't force a new development model at least from WinXP to Win7. Most apps run without problems.
I'm with Linus on backward compatibility (in his case re the kernel API) - breaking backwards compatibility is really bad, and generally Microsoft has done quite well with the Windows API. You can run really very old apps, dating back to early XP days, on Windows 7 with a good chance they will just work.
With GNOME3, I can't even run my old applets, whereas a Windows tray application (though probably harder to develop) will just work.
Posted Mar 20, 2012 14:11 UTC (Tue) by ovitters (subscriber, #27950)
Posted Mar 20, 2012 14:18 UTC (Tue) by Cyberax (✭ supporter ✭, #52523)
Are you joking? I have some applications from 94 written for Win95 beta working fine in Windows 8 beta.
Posted Mar 21, 2012 0:52 UTC (Wed) by vonbrand (subscriber, #4458)
In my experience, most of Win95/98 apps never worked even on WinXP.
Posted Mar 20, 2012 14:48 UTC (Tue) by khim (subscriber, #9252)
On Visual Basic, I meant that the new desktop / OS version doesn't force a new development model at least from WinXP to Win7.
Yes, it does. You can not use Win7 features from Visual Basic. Your only recourse is to switch to different, incompatible version which shares little more then name with it's predecessor.
Most apps run without problems.
This is separate issue. Microsoft is obsessed with backward compatibility (and rightfully so), but it introduces new, incompatible, technologies pretty often. And exactly between Windows XP and Windows 7 Visual Basic was retired and replaced with different, incompatible, best.
With GNOME3, I can't even run my old applets, whereas a Windows tray application (though probably harder to develop) will just work.
Apples and oranges, sorry. Show me desktop applets running in Windows 7 - and then you'll have a case.
Posted Mar 20, 2012 15:15 UTC (Tue) by Cato (subscriber, #7643)
Posted Mar 20, 2012 15:56 UTC (Tue) by khim (subscriber, #9252)
My point is that an old Visual Basic app running in the Windows tray doesn't need to do anything special to *run* under Win7.
Sure - but this is no different in GNOME: you can run GTK2 applications under GNOME3 just fine.
We are talking about backward compatibility here, not access to new features such as taskbar pinning etc.
This all depends on level of integration. Lightly-integrated programs (VB for Windows, GTK2 for Linux) work just fine with GNOME3. Tightly-integrated applets are broken in both GNOME2 to GNOME3 transition and in Windows XP to Windows 7 (as I've pointed above).
Of course there are huge practical difference: very few users used Microsoft's HTML applets but a lot of users used GNOME2 applets.
Posted Mar 20, 2012 18:13 UTC (Tue) by ovitters (subscriber, #27950)
Posted Mar 21, 2012 10:09 UTC (Wed) by slashdot (guest, #22014)
Only GNOME 3 decided to break compatibility for no reason.
It's also the only desktop that requires 3D acceleration, making it unusable in most virtual machines and other environments that don't want to run a messy OpenGL stack just so that GNOME can masturbate better.
Posted Mar 21, 2012 10:26 UTC (Wed) by ovitters (subscriber, #27950)
Now, you specifically say Windows 7. In Windows 8, there are 2 modes. The Metro one, where I think no taskbar exists and entire programs have to be rewritten. Aside from that, there is another mode working like Windows 7.
Seems overly similar to GNOME 3 and fallback mode to me. Except that in GNOME 3, your GNOME 2 applications actually will still work. As your XFCE ones, KDE, and more.
Now you also seem focussed on masturbation. Really, TMI, ok?
Posted Mar 21, 2012 11:36 UTC (Wed) by slashdot (guest, #22014)
Also, Windows 8 got several articles (rightfully) claiming that some of the changes suck, so it's not clear whether they'll actually release it in the state it is in the Customer Preview.
And if they do release it in that state, it's not clear whether people will buy it, and whether those who do so will simply install 3rd party software that restores the Start Menu, and allows to run Metro apps in a window.
Remember that even Windows Vista, which didn't remove anything and was a strict improvement except for some performance aspects, had trouble being accepted.
Posted Mar 21, 2012 12:59 UTC (Wed) by slashdot (guest, #22014)
For example, Tom's Hardware "GNOME 3: Why It Failed":
Easy for new Linux-users, people coming from Windows or Mac? Considering that GNOME Shell is one of the most alien GUIs we've ever seen, none of that is likely.
New users are typically converted by a friend or family member who gets them set up and interested.
By gutting GNOME of every power user-oriented feature [...] The power user demographic isn't going to recommend and support GNOME 3-based systems if they've already jumped ship.
What makes all of this worse is the way GNOME dismisses the complaints, chalking it up to the fact that people don't like change and that its users will acclimate. Fair enough. Except they won't get used to it.
If GNOME doesn't wake up soon, the GNOME Shell may prove cataclysmic for the entire project.
Regardless of the potential, if you “upgrade” to GNOME 3 you will almost certainly lose any semblance of work flow.
Normal folks should definitely skip this one. Don't even bother with the rental.
So, yeah, just give up.
Drop the GNOME 3 and GNOME Shell names ASAP, which are damaged beyond repair, and quickly move to release a GNOME 4 that fully works like GNOME 2 by default and with full support, and allows to opt-in to any new features in a modular fashion.
Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds