vs. Linux GUI
Robb Beal reveals this in his interview of John Siracusa [via daringfireball.net]:
Linux on the desktop needs a group of smart, dedicated people in positions of power who care about making a GUI that everyone can use and enjoy. Basically, they need the modern-day equivalent of the original Mac team. But that's not enough. On top of that, they also need an ego-maniacal dictator who will rule with an iron fist, crushing all opposition in the pursuit of The One True Linux GUI. This person has to have the power to change anything about Linux: the directory structure, the executable format, kernel features, the driver model, anything and everything. This team needs the total commitment and support of the entire Linux development community. Then, after a few years of initial work followed by several years of refinement, they might be in the ballpark of Mac OS X (assuming they don't make too many terrible mistakes).
Of course, none of the above is likely to happen in the world of Linux. But you just can't get to something like Mac OS X without a big effort by a lot of people pursing a single, coherent goal, and--most importantly--a willingness to change anything. No sacred cows.
Right now, the Linux community values "diversity" too highly to ever get a single, consistent GUI, let alone a good one. At the same time, it holds on doggedly to its (often ancient) Unix-rooted traditions and conventions. Finally, it's hard to get a really large group of Linux developers to do much of anything beyond a single "project." A GUI is not a "project." It's the whole OS from the user's perspective, and it must be from the creators' perspective too or it will fail.
Basically, I think Linux as an institution is allergic to a good, consistent GUI. Their priorities are reversed. They want to build a GUI on top of an OS. If they want to compete on the desktop, they should be building an OS to power their GUI. Of course, they don't have a GUI, which is problem number one.
They need to think of what they want the user experience to be, and then design a system that provides that experience. Period. This is so basic that even Apple forgets it from time to time. If you don't know where you want to go, you're never going to get there.
I think some semblance of "a Linux GUI" will arrive in bits and pieces over many years, but it will be almost impossible for it to compete with Windows, let alone Mac OS X, in terms of consistency, polish, and purity of purpose. Price, on the other hand... ;)
As for building the next Adobe or Macromedia, I don't think that's a very interesting goal. Both of those companies exist at the pleasure of Microsoft. If their businesses were broad enough for MS to want them, then MS would take them eventually. The only valid "grand plan" for dreamers just out of school in this day and age is to do something that makes MS irrelevant. That's pretty hard to do, but it's the only way to be anything other than a smart little rodent hiding among the rocks today's software market.
s response hits the nail on the head as far as I am concerned regarding one reason why Linux will never succeed as a desktop OS.
Comments
Comment by Erik Straker on .
Wow, you must be taking some really powerful drugs. I haven't read anything quite so delusional in a long time.
Comment by Owen on .
Thank you for your thoughtful and poignant rebuttal of the claims concerning Linux's poor UI evolution.
Yes, my drugs are quite powerful.
Comment by fuzzix on .
...And I'll reiterate what I've been saying... Don't want it, don't need it :)
A unifying vision vould destroy what makes Linux popular with the people it's popular with. GNU/Linux is a kernel and a set of tools for system maintenance - that's it. Beyond that what people choose to do with it is their own choice. To make the desktop the focus could only be done at the expense of the other great features - the "Unix-ness" of the OS.
Let's take a look from another angle. The MacOS desktop is a unified, uni-directional project. It's (allegedly) intuitive and easy to use. Why then is it languishing around the same place in the OS stats as Linux at 2-3%? Shouldn't the easiest to use, most coherent desktop be the most popular?
Let's take the other player, MS Windows. Is that a unified, intuitive desktop? Not in my experience. Freeware hell means every app uses vastly different design philosophies, toolkits and layouts. Each generation of windows has a different look that apps do not inherit from the host OS. It's a security nightmare - most Windows desktops suffer from some security breach. The reason for its dominance is simply that DOS deal MS did with IBM in the early 80s, not any sort of vision for a better desktop. Take a look at the mess that's happening with Longhorn - no longer an OS but a "wave of technologies". They need something to show and soon. Doesn't say much for a coherent package or unifying vision.
Perhaps the unified desktop isn't nearly as important as being in the right place at the right time.
Comment by Owen on .
I can't say that I agree with most of your comment, but I respect it.
The problem I see with most Linux proponents is that they're all very intelligent, down to the metal type of coders. This isn't usually something one might consider "Bad" but as a result, they usually miss the big picture.
Most Linux folks haven't the slightest clue how to propel Linux onto the desktops of Fortune 500 corporations and average joe home users. Actually, that's not worded correctly. Every Linux enthusiast has an idea, but none of these ideas are the same or packaged coherently.
The mere idea that to use the same app on Suse as Mandrake you would need compiled binaries or to compile binaries will scare the crap out of any common business or home user.
The idea that consistent desktop UI across applications and different desktops is a good thing doesn't sit well with folks that tire of the same boring desktop GUI. You guys are hackers. That's great - customize your desktops. But you need to leave the perpetuation of Linux on the desktop to people who know what business users and home users will accept. Those people aren't you.
Comment by fuzzix on .
You're assuming having Linux on the desktops of Fortune 500 companies is a goal of the community - for the most part it's not. Having access to quality, free software and general purpose computers is the main goal. Everything else is peripheral - although, far be it for me to speak for the Linux community. I just use the stuff :)
That said, you have a point about Most Linux folks not knowing what comprises an intuitive desktop for inexperienced users which would be attractive to big business, but some do. The likes of SuSE and Red Hat put together very coherent and consistent desktop Linux systems - I don't think there's even need to open a text editor these days. Sure, there are enthusiast distros such as Gentoo but the corporate desktop isn't the target for these.
I don't see why compiled binaries are so frightening. They are exactly the same thing as a Windows or Macintosh compiled binary, they just have a different name. I would argue that they are often made easier to install via frontends such as YaST in SuSE or urpmi in Mandrake. These systems can generally be found easily under something like "Install Software Packages". They take care of locating, downloading and installing the software and all dependencies. I can't think of an equivalent on other popular desktops, although I assume OSX has something similar due to its heritage.
It's also true that people like me have no clue what the business customer wants, however I'd be willing to try to find out and put together a solution if the opportunity arose. Currently I maintain several machines for friends and family. Some are Linux, some are Windows. I try to create a consistent look and feel across toolkits on the Linux installs, but to get applications acting consistently is nigh on impossible. That's why there are still a few Windows boxes in there. That's fine - I know it's not for everybody, but those who like it love it.
It's a huge situation to attempt to resolve and I can't see it happening without adversely affecting the current plusses of Linux. The consistent desktop requires both the environment and the applications to come from the same stable - there are Gnome/GTK and KDE/Qt alternatives for most applications. Is it time to not think of the Linux desktop but the KDE desktop? The Gnome desktop? Linux is, after all, just a base for the applications of your choice... Or is it time to try to bring the existing projects together as a coherent whole such as proposed by the freedesktop.org project?
I'm not sure which, but I do know one thing - we're in for some interesting times! :)
Comment by fuzzix on .
I can't simply recommend Linux to people - I have to install, configure and spend some time explaining what's different through explaining what's similar. I have to be on hand when something goes wrong (fairly rare, to be honest). An install of any recent Linux distro generally causes me less hassle than a Windows install simply due to the fact that everything I need is on a couple of CDs and is installed automatically. It's an amazing system and the most ubiquitous OS doesn't do it. I love it but the problem is this sort of elegance in a system means nothing to a user.
So, what does mean something? Well, that varies from case to case. Is there a general list we can put together? Well, an easy to use desktop to begin with. Web, email, IM and word processing. A solid environment that doesn't cause to many technical headaches. I see no reason why Linux can't do this, but then I've been sitting in this chair since DOS 3.2 :)
I'm afraid I'll be amongst the ranks standing against The One True Linux GUI. I really like the quote-unquote diversity and would probably stop using Linux if it were to fade out. The diversity, the wide range of projects is part of its attraction, so perhaps it's simply not destined for the desktop. Maybe it has no place in the average user's home. My experience tells me otherwise, but then not everyone has a dedicated geek who'll call round to the house when something goes wrong.
You see the problem with the idea of the One True Linux GUI is right there in the name. It tells you there's more than one. It's not a company, or a single entity but a technical community. It's an incredible challenge to mobilise a community towards a single vision and you'll have some serious trouble on your hands when they don't want to go. There's no CEO of Linux who can promise pay incentives if his employees take the OS in a certain direction. I feel the closest it's ever going to get is through projects like freedesktop.org and Project Utopia.
Comment by fuzzix on .
This article raises some interesting points, but no new ones. The cultures are simply different - the Linux community is composed of quite a diverse set of tastes and has many people with the ability to make their vision for a perfect desktop a reality. I wouldn't have it any other way - I use several desktop environments including KDE, fluxbox and XFCE4.
If you're looking at a Linux desktop for the user then looking at the entire set of contributed packages for Linux isn't helpful, but focussing on a single distro is. Take Mandrake as an example - automatically detects and configures all hardware possible, sets up a highly polished and easy to use KDE desktop by default and features a full set of configuration tools for easy admin. SuSE offers a similar experience along with many others.
You may also find that a lot of Linux people are unconcerned about Linux on the desktop. It's a goal for some GUI developers, but others want to create a slick, fast environment for your average hacker. See any of the *box projects.
My own concerns/prejudices about desktops come down to "anything but Windows". Windows boxes are the source of my spam and junk traffic. They cause network congestion and can often be observed bouncing off my NAT. That's an intolerable situation. I will never go back to Win2K - far too much maintenance. I will also probably never buy PPC hardware with MacOS simply because the price is wrong. My next machine will be an Athlon64 with a kernel compiled by myself. I fully expect it to match, if not outstrip, the G5 in terms of pure floating point operations. This is simply due to the fact that all the benchmarks I've seen have been application specific (Photoshop compiled for 32-bit x86 hardware running on A64 is a dishonest gauge at best)
Regarding the requirement of a figurehead who'll reign in the mess with an iron fist, I pray it never happens. While it might enamour the average user (who likes to expend as little effort as possible on their computer), it'll alienate the culture - the hackers who made it happen (who like to expend as much energy as they have on their computer). A lack of desktop choice is one factor which drove me away from my previous platform - I got sick of the fugly :)
Linux is a Unix-a-like, and a pretty decent one at that. If you were to change "the directory structure, the executable format, kernel features, the driver model, anything and everything" I think it would drift from POSIX compliance and no longer be a free Unix. It'd have Unix type features, but would deviate from expected Unix behaviour so much as to make it unnatractive to the intended audience, the hackers who write software for Unix! Unix applications don't output anything when they are successful - this might be unnerving for someone coming from the OK dialog world of Windows, but damned if I'm going to use a Unix that keeps saying "OK" every time I perform the simplest of tasks! It may be expected behaviour for the user, but it's a nuisance to the hacker.
Talking about how "polished" the desktop is - how do you define that? Alpha transparency or environment transparency? If the former, the change in XFree's license which led to a mass switch to XOrg will see a lot of development in the area of graphical effects and performance which will be implemented by the specific environments. If the latter then I couldn't disagree more. Taking KDE as an example, I find it an intuitive and simple to use environment with plenty of customisability. Many other desktops accomplish the same things. When you get your head around a new set of mouse movements and keyboard shortcuts it becomes as using whatever you were previously - it's as if you were always using it - the GUI becomes transparent.
"They want to build a GUI on top of an OS." And you're not wrong. That's what OSX is too. You know which OS was written to drive the GUI? That'd be Microsoft Windows - sure, it's successful but is it the ideal model? Linux developers are unconcerned with the user experience. They wish to create a solid, stable, secure base for applications of all sorts be they server, workstation, desktop, research - any task you can set it to. This is the same reasoning behind the code behind OSX from the BSD project. Essentially the same idea as Linux but under a different license - a free Unix. To make an OS focussed on the GUI would destroy the benefits of portability and wide utility - it'd no longer be a general purpose OS.
Apologies for the rambling nature of this comment, I'll wrap it up... Linux on the desktop is not a goal, it's a side effect. With the graphical subsystem now based on work from the XOrg project, who are far more open to new code and functions, the pace will only accelerate. Specific user concerns can be addressed with a distro choice rather than a look at the available software as a whole. The Linux desktop is a lot more advanced than the more ubiquitous alternatives in many areas, but it is different and you'll have a little learning (or even unlearning!) to do. This is true of any environment - I know Mac, Linux, Windows, VMS, OS/390 and even DOS users - none of them knew how to use their machine straight off - we all have to make a little effort.
Comment by Owen on .
I think that's what the author of the above article is getting at, though- That the target of the community is not to make Linux ubiquitous or replace Windows in the workplace and home.; that such a target would be impossible to acheive with the current general lack of unified direction in the Linux community.
Certain distros do provide a very polished package, yet there is no absolute consistency between Linuxes. I'm not sure that each package should look identical, but average users should be able to configure their systems without learning the specific nuances of each package's installation interfaces. A user at a Mandrake seat would have difficulty installing software at a Suse system just because they don't use the same system, or a system with a similar interface style, or even launch their installation interfaces from the same place.
People who don't think compling apps is frightening haven't been novice users in a while. Installing applications can be a daunting task for novice users. For instance, there is no way that my neighbors could compile from source when they're asking me what software they should use to open Word Documents. (Um, Word, maybe?) It's not stupidity, it's just that most people simply want it to go, not have to learn about make files, packages, blah blah blah.
I'll be happy when I can recommend Linux as a desktop solution to novice friends and neighbors, but that day has not arrived. When I say "never" in my original post, I really mean, "not until a wide variety of very difficult decisions for the Linux community are made." I imagine that these decisions will take take a step in a direction away from the original "feel" of free Linuxes, which is why the decision will be difficult.
Comment by Owen on .
Everyone I know who uses Debian really likes it. The problem is that Kylix won't work there. Sure, it's just that one example application, but it does validate the idea that you can't get all software for every distribution.
On the other hand, I use Knoppix all the time, but only when I need a system to run that wasn't running before. (Knoppix uses a Debian core.)
A lot of the knowledge you need to get through those sticky installation situations (like with the Intel optimized compiler and java that you mentioned) is knowledge that not everyone has. Certainly not the common desktop user.
The application examples you give are of high-profile multi-developer apps whose devs must have someone with some GUI developing experience. But this experience is not evident in most of the OS configuration tools and fundamental accessories that accompany the OS.
I'm sure that the case was that all of the little applications (from the one that configures network options, to the generic GUI FTP client) were written by different people at different times with no GUI reference.
Microsoft had bothered to write a complete book on how Windows applications should look so that this problem would not occur frequently. This is at essence what is verified when you have an application stamped by Microsoft as Windows-compatible.
There is no such guide for Linux, and it shows. Developers simply went their own way in developing the UI for most of the essential tools of the OS. In some applications, all of the raised panels are buttons. In others, they look like buttons but don't push. In still others, the buttons don't appear as raised rectangles until you mouse over them. This difference in GUI design between core applications belies the fundamental flaw I've been prodding all along: Linux lacks a unifying vision.
Comment by Owen on .
Well, you say buttons are buttons, and you're an experienced computer user. I know intelligent people that don't use computers who are stymied by the concept that the "picture of a button-thing" should be considered something you should "push", especially when confronted by buttons that don't bother to display themselves graphically as such.
The different versions of Linux are not a disadvantage to Linux, and I wouldn't say they are. They are a disadvantage to Linux conquering the desktop. It amuses me that Linux users vociferously lament the resistance of Linux OS installs to business and home desktops, and then in the next breath advocate the benefit of the major block in keeping it from reaching that goal - diversity.
As far as Macs are concerned there are many other reasons that Macs aren't pervasive on the desktop. They're cost-prohibitive. The software isn't necessarily compatible between OS versions. The marketing behind Mac is not targeted at the same people as Windows users.
We're not talking about why Linux is so much better than Windows. I'm not having that discussion - haven't been and won't. What I have been talking about is why Linux hasn't been the great success that Linux zealots would want it to be. What you hear from Linux advocates is that Linux is so great, so much better, why isn't it on every desktop? No matter how much it hurts to hear it, the answer is that it is not unified and has no direction.
Take the simple idea that there isn't anyone even bothering to market Linux in the workplace. Have you ever seen a TV commercial for Debian or Red Hat? Maybe you have, but if you have, I'm sure you've seen so many more ads for Windows that the collective consciousness doesn't even register Red Hat or Debian.
Linux folks have a lot of convincing to do to convert existing Windows users over. It may be an easy sell, but nobody is doing it. And even if someone did start - say, Red Hat - you'd no sooner see the Red Hat ad than the Debian guys would buy TV time hawking their wares, not to benefit Linux, but to outmaneuver Red Hat.
The only thing that seems to unify Linux users is their advocative/adversarial attitude for Linux and against Windows. If Debian is the shiznit, then stop screwing around and mount a directed, forceful campaign to put Debian at the front of Linux development and have it compete with Windows.
Put it on store shelves and on TV. Publish a written GUI standard, and clean up anything with a funky GUI that ships with the installer before release. Offer an "Approved for Debian" logo certification that development companies can apply to their applications. Offer paid support from a central location by certified technicians. These things might help convince a company that they're not going to be left at the mercy of the school schedule of the 12-year-old prodigy who made the latest patch for bash when there's a problem.
I dono. I've been trying to convey this frustration as best I can. My main issue at this point is that I don't understand why you protest. I'm saying what I think is wrong with Linux, what could make it better, and all I get is, "Yeah, well, it's better than Windows." Not only is this idea irrelevant to the context, but it's a spurious argument - because no matter how security-lacking Windows is, no matter how many viruses plague it, no matter how riddled with DLLs it is, I can still run all of the software I've purchased for it, which I absolutely cannot do on any Linux. Get me a free copy of Microsoft Office on Linux - not a clone, but one that works with the activation code I've purchased - and then we'll talk about the other thousands of dollars of software you can't replace with identical copies on Linux. You will find it very difficult to convince any Windows user with a softare investment to move to Linux and start over.
And that's just one of the myriad of issues in switching.
So where does that leave us? Well, I know where it leaves me - tired of trying to make my point to thick-skulled zealots. Feel free to re-read my comments at your leisure and try to let their point soak in.
Comment by Percival on .
Tell ya the truth, I never noticed those differences in GUI design. Buttons are buttons to me.
Well, I think as people are wondering more and more about "Linux", it is more and more important for them to realize that, hey, they are not the same operating system. Not by a long shot. Go through Red Hat, Gentoo, and Debian, and you will see MASSIVE differences. True, they all can set up to look like one another, but they are incompadible (unless you have knowledge to port) and should be treated as such. It is just how life is. But i see it as no disadvantage, just a fact of Linux.
It should be noted, however, that Java has become much easier to install on Debian, so the problem doesn't exist as much. Second, Java and ICC were the only programs I had any difficulty whatsoever. (not that they are the only ones, just saying that they are rare)
And currently, although it sucks, only Red Hat offers the solution you desire. In all cases you and I have mentioned so far, each has been tailor made for Red Hat. I dislike it as a distro, but it is all the linux unity has at the moment.
Hopefully, Debian will become a standard one day :)
Comment by Percival on .
I have had more troubles searching for Windows Drivers compared to Linux drivers on most of the machines I have installed. Debian/Testing has a great hardware autodetect system now that wasn't in place two years ago.
Installing Debian/Testing is as easy as Win2k installation. Configuration is now automatic, and the only thing the user has to do is hit "Desktop Environment" at the end of the installation. I haven't used any other distro, but I would hope that profesional editions like SuSe and Mandrake are just as easy as Debian, which was deemed an expert distro.
At the same time, Open Office has replaced every need for MS office I ever needed. It opens .doc files and all the other files generated by MS office.
Next, the good thing about Linux is the diversity it has aquired. I see this as a good thing. Now all we need to do is push people the direction they want. Power User? Gentoo, Slack or Debian. Newbie to Linux? Mandrake, SuSe or Red Hat. So on and so forth.
Because of the diversity of Linux, it should adapt into people's lives quickly. There is less need for unification, as the differences in Linux are all left to the administrator. If the Library was using KDE with Linux, the only thing you would know is that it was using KDE. You won't need to know weather it is Debian or Red Hat if you wanted to surf the net or search the library.
The most difficult situation that would come though, is if Linux ever did become popular, which should the Default install be? KDE or GNOME? I wish not for the reincarnation of years old.
Now, it appears that an Installation of software will be difficult to the user. Guess what? Neither my sisters nor my mother could install software in Windows either. Actually, I began to think i was the supreme geek of the family after I installed software for everyone.
On top of that, i argue that it is easier to install software in Linux, compared to Windows, even with discrepancies in the system. Both RPMs and Debian .debs automatically autoconfigure and install the software with minimal questions asked. Gentoo when you need to actually compile? Lol, Gentoo is an expert distro, who in their right mind would reccomend it to a newbie? (not to dis Gentoo, it is alright)
I'll take debian as an example. Click synaptic (which was installed if you hit "desktop Environment" at the beginning) and hit what software you want to install. Then, insert the disks as necessary (it will be asked, like insert Disk 1, or Disk 2) or if you did a Net install, you don't have to insert disks.
Then, everything is automatically configured, all dependancies are done, and software runs from the weeks or months of testing already done on the software.
Linux isn't perfect yet, and I can see room for improvement. But if you really look at it, Linux is no harder to use than Windows.
Comment by Owen on .
I imagine that most standard hardware is supported by Linux systems. But I don't recall Linux drivers being packaged with any hardware other than network cards since I've been using computers.
With installers on Linux you have several layers of issues involving installations, all of which you brush by and don't explore deeply enough to expose the problems.
Firstly, to do an install on Debian, you need a Debian distribution of the software you're installing. Even if it's a source distribution, you've got to have all of the dependencies present and properly configured to attempt a successful install.
Secondly, the package managers aren't the same between Linux distributions, so if I find cool software for my "hacker-class" distro, I can't necessarily take my archive over to my mom's "n00b-class" distro machine.
The idea that you posit about it being as simple as getting the appropriate distro and pushing "install" makes little of the difficulty of novice users for finding that distro in the first place.
All of this turmoil is caused by there being so many different combinations of methods to accomplish this same task. Even on a single distro, you've got to know whether your app is best for KDE or Gnome. My mom isn't going to sit for that.
I think Open Office is a great tool. In fact, I use it at work instead of Office. On my Windows machine, where it was easy to install using Windows Installer. Whether Linux fans want to admit it, Windows Installer is a package manager just like similar tools on Linux. Whether your software vendor chooses to use Windows Installer is the same choice as whether a Linux developer chooses to build a real package or a .sh and makefile.
A major point here is that at least with Windows you need not concern yourself with what flavor of Windows you have before you try to figure out the install, which is usually just as push-button as the best Linux RPM. You can't judge a system by the quality of the installer built by the developer, but you can judge it by how many targets a developer has to hit with their installer. With Windows, it's one. With Linux, who knows?
Comment by Owen on .
Since you ask, I'd prefer if you wouldn't quote side-by-side because it removes my words from context.
It's a plain fact that if you're installing compiled software to Debian, that the compiled software needs to exist, along with a package (a generic term I'm using for "installer" across Linux variants) that installs that software. If someone writes great software that runs on Mandrake, is built to install on Mandrake, you're going to have a tough time running it on Debian. Maybe it's possible, but you will jump through hoops that a novice user will not, probably involving recompiling applications and the knowledge required to do so.
While I'm sure that all of the development tools for this purpose have been ported to Debian, they still have to be properly installed and configured. A compiler is not "Hello World", and one simple incorrect switch as passed in at compile time can cause a myriad of problems, not to mention the various and disparate settings that compilers on Linux systems tend to use.
By saying that the same software exists for both Debian and Red Hat you miss the point I was trying to make: I can't simply get a "copy of X software" to install on any Linux, I need the one that works with the libraries I have installed, on the Linux version I have. As you point out, Linux isn't the OS. What Linux has spawned is a bunch of bastard offspring OSes, none of whom can be credited with any explicit dominance. Debian may be great, but it's not a competitor of Windows; rather, it's a competitor of SuSe, Mandrake, et al.
While everyone who has tried to defend the diversity of Linuxes to me will profess this as an advantage for Linux rather than a hindrance, these people have somehow forgotten about the vast and utterly overwhelming majority of business and home users (contrasted to the miniscule minority of people who give enough of a crap to respond to a post in a weblog quoting an article from elsewhere) who need unified interoperability, not a crass, "You can recompile because the source is there."
In the end, I'm not sure what this debate will accomplish. I use Linux day-to-day in work and at home. It's not my desktop for a number of reasons, including that I have already invested real cash in tools on Windows that are irreplaceable in any version of Linux, and that the Linux GUI is a nightmare from application to application. Your original notes on Linux didn't even mention this item, which apart from being what the main post talks about, is a factor so enormous in choosing a desktop OS that it's almost laughable even to approach it from any other angle.
I am not wholly convinced that Linux is no good for the desktop, just that sweeping changes - most contrary to the party line I keep getting from "zealots" - will need to take effect before the world can seriously consider any Linux as a valid Windows competitor/successor on the desktop.
Comment by Percival on .
May i quote you side by side? I'll stop if you request it. I'll do it in this post, cause it is easier for me to hit all the points:
Firstly, to do an install on Debian, you need a Debian distribution of the software you’re installing.
Incorrect. No need to download. Yes, a Debian distro has to exist, but you don't really need it. A net install works great, and you don't have to even know .deb files exist to use apt-get.
Even if it’s a source distribution, you’ve got to have all of the dependencies present and properly configured to attempt a successful install.
All packages you need have been ported to Debian. If you wish to do a source install for some reason, installing the correct dev files is easy as apt-get build dep. And if for some reason the package doesn't exist, apt-get install the dev-files works easy.
Secondly, the package managers aren’t the same between Linux distributions, so if I find cool software for my “hacker-class†distro, I can’t necessarily take my archive over to my mom’s “n00b-class†distro machine.
Give me software you need that doesn't exist in both Debian and Red Hat.
The idea that you posit about it being as simple as getting the appropriate distro and pushing “install†makes little of the difficulty of novice users for finding that distro in the first place.
Red Hat, SuSe, Mandrake, Debian. All 4 have some sort of way of the easy as "hit install" in their own way.
The fact of the matter is, each are different operating systems, and should be treated as such. It is a miracle that software works across linuxes, because all that they share is a similar kernel.
All of this turmoil is caused by there being so many different combinations of methods to accomplish this same task. Even on a single distro, you’ve got to know whether your app is best for KDE or Gnome. My mom isn’t going to sit for that.
Apps work for both. Could you elaborate plz?
A major point here is that at least with Windows you need not concern yourself with what flavor of Windows you have before you try to figure out the install, which is usually just as push-button as the best Linux RPM. You can’t judge a system by the quality of the installer built by the developer, but you can judge it by how many targets a developer has to hit with their installer. With Windows, it’s one. With Linux, who knows?
Linux only describes the kernel. People have to remember that. Linux is not the operating system, Red Hat and Debian are more appropriate names.
But again, why you have to worry about different installation systems at all? Are you going to install software on someone else's machine?
Comment by Wow... on .
I get the feeling the author hasn't ever seen, used or heard of KDE or GNOME
Comment by Percival on .
I think I am starting to see your point :)
But not yet on the GUI part. GTK+ and XWindows and other cross platform libraries are what the majority of the apps I use on linux are made of, meaning they will look the same in KDE, GNOME, or whatever you use. I currently don't see this as much an issue.
But the one reason that I cannot defend linux on, is as you said, the unified installer. There is a unified model, that works on every linux out there so far (from what I know), and is a format distributed by every developer i have seen (except in a few closed source implementations) and that would be ./configure && make && make install. It is not perfect, but I see this as a key. In theory, even binary distibutions of software can be made to work with autotools.
I'd say thats a start, and easy enough for the desktop. All that it requires is that the item has sufficient documentation for its dependancies. Any commercial software SHOULD have that much in.
Theoretically, it should work, but I wonder why it doesn't. Any insight? Are users that scared to use the commandline?
Comment by Owen on .
The GUI issue is a delicate point that really has very little to do with Gtk and XWindows. You can check out my other "Linux-bashing" post for my detailed thoughts in that regard, but I'll summarize here (yeah, ok, it's not really short):
To reduce training time (and I'm not talking about only business users, but also teaching your family, or learning it for yourself) for learning an OS, it is imperative that the GUI of the OS provide a consistent interface, not just with the UI widgets they employ, but in their implementation. It's a social challenge put forth to developers to forego fancy whiz-bang interfaces and non-standard controls in an effort to leverage prior training on training for new new apps.
Consider that on Windows if you know how to operate Notepad, you have learned most of what you need to know to operate Word. Moreover, if you know how to operate Notepad, you mostly know how to operate Paint. On Linux, it often seems (although this isn't the case) that developers have gone out of their way to make the GUI for thier app unlike anything you've ever seen before. In that case, you lose any benefit of training.
The GUI toolkits that are available on Linux may provide a common look to gadgets, but there is no authoritative body that can prescribe how they should be implemented to acheive the unified effect I describe. This is directly caused by their being fractured Linux sources, and -oddly- seems like something that Linux developers wouldn't embrace anyway.
So to clarify, the goal should not be, "Look the same on different desktops (KDE/Gnome)," but, "Look application-uniform in the OS."
Regarding installs and configure: The configure model works great if you like futzing with command-line options for every little detail of your applications. Tell me that you enjoy recompiling PHP to remove module X, which came compiled in the binary. Not me.
You're right- It should be possible to create databases of dependencies and configuration options so that a tool can do the building for you. That would be great. Some of the package managers are good at doing just that. But they still don't work across distros.
It's funny that you mention commercial software on Linux being well-packaged. Most stuff I've needed to configure wasn't commercial, which maybe explains all of my hoop-jumping. But then, most of the software available for Linux is not commercial, so what should I expect?
Yes. Yes, common users hate the command line. I'm sure you've had the occasion to describe a command to someone, maybe over the phone or over their shoulder. As such, I'm sure you'll know what I mean when I quote myself, "No, you need a space there. No, there. And a dash. Ugh. Just let me do it."
When you've got people out there who are scared to install software that is as easy to install as inserting a CD and clicking "ok", you better believe that a command line world is going to scare the crap out of them.
Comment by Percival on .
Lol, From my experiances, windows installs are harder than Linux installs (for software)
Anyway, i don't see you as bashing linux, bashing would imply that you are bringing up issues that are either malformed or a brute lie.
But I digress. There are solutions for the "./configure && make install" process that I see are doable, and can be done with the user never touching the command-line. What if the system browser (like Nautalist or Konqueror) detects a tar.gz file or tgz file, and opens it and checks for a makefile and configure file. A simple double-click would install the software.
Hmm, that may work, but anyway, it doesn't exist yet (that i know of) so i shouldn't bother with theories and futuristic programs.
But here are the ideas for the hoop jumping you have experianced. I'll jump to conclusions for the heck of it :)
:
1. You haven't used a good linux with a good package manager.
2. Red hat, SuSe, or Mandrake was your first Linux distro, and you fell into "dependancy hell"
3. Tired of dependancy hell, you moved on to the ./configure make model
4. If I was wrong about the above three, then I expect that you probably used Linux more than a year ago, or at least Debian more than a year ago or used its really ****y "Stable" version (from a newbies perspective anyway).
Debian for me has had every software I needed packaged, except for the free intel optimizing compiler and the Java platform. The Java platform is getting easier to install now, still has ways to go, and "alien" worked well converting the .rpm of the Intel Optimizing compiler to a .deb file. I was not impressed but i was satisfied.
Then, Debian had all the Open source software that I ever needed already ported and on their servers. So, other than the case of Java and Intel Optimizing compiler, everything turned out great and arguably easier than Windows to install. (synaptic is now a default tool in Debian)
---
Also, I do not know what you are asking for with the "diverse applications" nor what the problem is. Open up Abiword or Open Office writter, Mozilla and then Gimp and KDevelop. They all have things reasonably where they should be. There are file, edit, stuff at the top, and depending on your window manager, you got your little x at the top right of your program. Mozilla borrows heavily from Explorer, Gimp from ... ok so that one is unique :) but it is the same look in Windows too, and Abiword and Open Office from MS Word.
Maybe a bit more on that subject is required, cause I personally do not see the "inconsistancy" you talk about. (in curious tone, not deragatory)