Worst Linux Annoyances? 1918
greenrd writes "Ever spent hours trying (and failing) to get a printer driver to work on Linux? Struggled to configure something ever-so-slightly out-of-the-ordinary? What have been your biggest annoyances when using Linux? Three O'Reilly authors are compiling a book on Linux annoyances - and their suggested solutions - and they've started a mailing list here. I can't help but think, though, that such a book will be dated quite quickly. Sure, some problems do languish unfixed for years - but equally, I suspect many of the problems will be fixed before, or soon after, the book's publication date. Still, increased visibility might motivate developers to create fixes or workarounds for some of the problems, so maybe this is an ideal opportunity to get your pet peeve finally addressed!"
Biggest Pet-Peeve? (Score:3, Insightful)
If I hear "No one ever got fired for buying Microsoft" one more time, I am gonna snap.
Hunting (Score:5, Insightful)
I am running RH8, and an somewhat of a linux newbie, but i have speant hours trying to get the right versions of software installed, often with two four levels of dependency, (ie Software i want needs x, which needs y, which needs z, which needs a...). I recently installed apt, which made it a bit easier for software it indexes.
Windows software downloads can be big and bloated with DLLs but they generally work out of the box.
Unmounting devices (Score:5, Insightful)
Worst Linux Annoyances? (Score:5, Insightful)
Different can be better, but yes, there may be a learning curve... and that can be annoying for some.
The lack of ..... (Score:1, Insightful)
My biggest annoyance... (Score:5, Insightful)
Cripes...
Switching from windoze (Score:2, Insightful)
DVD Player (Score:2, Insightful)
Worst annoyances (Score:5, Insightful)
dated?? (Score:4, Insightful)
If I wrote the book, that'd be exactely what I want. If the book's outdated, it means it has brought all those problems to the attention, and that proper solutions were made. What more can you wish?
The different distros are the biggest... (Score:5, Insightful)
Redhat thinks that apache and KDE's developers are idiots so they move the default install, Mandrake has things in different locations, SuSE,Debian,Slackware.... they all think they know where it is supposed to be.
All it does is piss off the Linux user.
This is one of the biggest problems. Leave where things go ALONE!
fonts (Score:5, Insightful)
The worst annoyance... (Score:0, Insightful)
I'm a Windows user who likes open source software but can't get Linux to work. I don't know how to write drivers, work the command line, or program. I guess you have to be an expert at all of these to use Linux.
I've installed Linux (Mandrake, Red Hat, Knoppix) three or four times and always end up going back to Windows shortly thereafter. I can't get Firewire via PCMCIA to work properly, the driver for my mouse makes movement awkward, and XMMS sounds awful on my Sound Blaster. Yes, I can read the web and do word processing, but anything beyond the basics is a hassle, and I'm not given any clues as to what needs to be fix to get things working.
Re:Hunting (Score:2, Insightful)
I tired of installing software on Redhat very quickly after trying linux for the first time. I almost didn't pick it back up, but someone told me Debian made all those problems with dependencies go away.
Do yourself a favor and try one of the above. I run Gentoo currently, and I would NEVER go back to a an unintelligent package management system (like RPM) ever again.
Too many Scripting Languages (Score:3, Insightful)
All of the script languages have morphed into accomplishing the same goal, they all just do it with a different syntax. Some scripts are clean looking and easy to follow, others are executable line-noise.
It would make documentation and maintenance a LOT simply to pick one scripting language and develop it into an all-purpose tool. I'm sick of reimplementing script libraries.
The main difference between Linux and Windows (Score:5, Insightful)
Printing, video drivers, sound drivers, etc are ALL significantly easier to setup and use under windows. This is reality because windows controls 90%+ of the desktop market.
Until Linux has the ease of use with devices that both windows and macs enjoy, drivers will be my largest annoyance.
BTW I've been using linux since '95 and it has come a very long way, but it has a lot left to be desired.
Re:RTFM (Score:5, Insightful)
Why can't rpm figure out the next arg is a file (not a package with an illegal package name ending in .rpm) and assume the -p flag?
Why can't cdrecord by default create a sane ISO if the request specifies a directory or file which doesn't look like an ISO?
etc.
Sure, let someone override this behaviour if they give the special flag after RTFM, I propose --literal. I am tempted to implement this using a bunch of perl wrappers.
Re:The worst annoyance... (Score:1, Insightful)
I'm a Windows user who likes open source software but can't get Linux to work. I don't know how to write drivers, work the command line, or program. I guess you have to be an expert at all of these to use Linux.
Being melodramatic only annoys people into ignoring you. No wonder you aren't getting any help.
Re:Unmounting devices (Score:4, Insightful)
1. Oh *that's* intuitive - I know it took quite some time till I found lsof
2. what if you don't want to kill that app? Often you're already browsing a completely different directory or -in case of Konqueror instead of Nautilus- you have a number of additional tabs open.
Re:The lack of ..... (Score:2, Insightful)
I firmly believe that the very reason open source software (including Linux) is popular on any scale is because of the choice involved.
If I have a task to perform, and there is just ONE solution, I'm stuck with it's quirks and annoyances (present in all software). I would much rather have many solutions, where I can learn of the pros and cons of each one and then choose a solution that works for that situation.
There are precious few software titles I have found that have problems with only SOME distributions (except Oracle, but they're trying). I think problems like this are problems with closed source software in general, and if this hinders growth in the mainstream, so be it.
Re:Worst Linux annoyance- (Score:4, Insightful)
Isn't something from the OS itself, but the "1337" attitude from the users. "Use a different distro!", "RTFM!", "l4m3r!"
I don't know where you've been looking, but I never see any of that. Not even here. And really, if you are told to RTFM, perhaps you really should have. Very few people want to provide a free helpdesk for people who can't be bothered reading the manual. Most people consider themselves to be worth more than a bit of paper.
How about, instead of asking "how to", you read the manual, and if that confuses you, ask about the bit that confuses you. If you don't know where the documentation is, ask for that. Ask questions the smart way [catb.org].
Re:Unmounting devices (Score:5, Insightful)
When I hit that eject button, I want the goddamned CD out of my sytem, Now! No exceptions. I don't care if I get an I/O error. Just give me the damned disk.
How in the hell is any normal user supposed to know about lsof anyway? All he knows is that the CD drive is broken.
Missing the point... (Score:5, Insightful)
Anyway, the whole point of this rant is that there should be something more elegant than having to manually kill proc's by PID. I don't think Grandma's gonna ever use Linux if she has to do that kinda stuff.
Re:Hunting (Score:5, Insightful)
What you should compare is up2date(rh),urpmi(mdk),apt-get(debian),portage(ge
Lack of finish (Score:5, Insightful)
I heard one guy state that "When you're 80% done with a project, you've probably only spent 20% of the time that it takes to complete it with splendor".
I think that Linux is there, it's 80%. Things just don't work out of the box, and they should if we wish to hope to compete with Windows or Mac OS X. Try daisy chaining external firewire drives on RH 9, it just doesn't work. Try changing network profiles smoothly with RH 9/XD 2 - it just does not work. And get your funky i18n characters to display properly in RH 8 and later - it's not as easy as selecting a country during the install process. These are supposedly not rocket science issues, it's finish, it's what makes the difference to the average user, it's the difference between 80% and 100%.
Linux has not really evolved beyond the 80% during the past 3-4 years. Sure, we've gotten GNOME2, KDE3 and so forth, but these still lack the same finish as their predecessors did.
I'm beyond wanting to fiddle with my desktop PC, which is why, after 5 years of using Linux on the desktop, I'm switching from Linux to Mac OS X once the next powerbook update occurs.
In no particular order (Score:5, Insightful)
Re:RTFM (Score:3, Insightful)
Differences vs. annoyances (Score:5, Insightful)
Trying to understand Linux as a "Windows substitute" is a doomed prospect. Their differences aren't just a matter of tradeoffs: they are radically different kinds of system, much as an MP3 player is different from a turntable. If you found two people arguing over whether an MP3 player or a turntable was "better" -- or a turntable user saying that MP3 players were "annoying" due to the lack of an RPM control -- you would of course recognize this as nonsense.
An example of this sort of difference between Linux and Windows is the difference in the handling of drives. Windows uses drive letters; Linux uses mount points in a single filesystem. While there may be advantages to each, they are more a design difference than a set of tradeoffs. Another example is the difference in balance between CLI and GUI. Windows (or, moreso, Macintosh) users who come to Linux looking for that kind of carefully tuned GUI are likely to be disappointed -- and pushing the KDE control panels on them as "almost as good" is inviting their disappointment. There is a difference in design intention between GUI-focused and CLI-focused systems. The new user just has to un-learn old assumptions, just as the turntable user needs not to be looking for an RPM switch if he wants to become familiar with the MP3 player.
Things I would describe as "Linux annoyances" are points which remain difficult, problematic, or simply grating even for the already-familiar Linux user. Many of these will sound entirely foreign to the Linux novice or non-user, since they are matters that only occur to the already-familiar. These are points which seem out of place, or insufficiently regular or predictable, even to the expert.
Some examples of what I mean:
Re:Worst Linux annoyance- (Score:2, Insightful)
How many times do you HAVE to read a manual to get a Windows installation to run?
If Linux really wants to make headway into the desktop/home PC market it needs to get to a point where you dont need to read manuals to install your software/hardware.
My Linux Headaches (Score:2, Insightful)
Parent point valid despite foul language (Score:5, Insightful)
Having to use a command-line utility to track down and kill apps that are accessing a given device is a complete *failure* of the OS to just do what the end-user wants it to do. In the case of a disk eject, the OS needs to forcibly unmount the disk and allow the user to eject, and it should be the responsibility of any programs to gracefully fail, or even better, handle the error, if they really needed to access that disk.
It should never be the user's responsibility to clean up other programs so that the system can perform a task the user requested. When the user makes certain requests of the system, such as those of the "give me my disk" variety, the system should be expected to bend over backwards for the user, not the other way around. Anything less should be considered a severe usability bug.
The foul language used by the parent detracts from his argument, however in this case it can be forgiven due to the extreme annoyance of this bug^H^H^H feature.
Re:Worst Linux annoyance- (Score:3, Insightful)
The problem is, you have to tell new Linux users that Linux is different than windows. I know from my experience, that I had only been using windows as an OS for about 5 years when I started to learn Liniux. The person that was teaching me stuff just told me, "Linux is different than windows, you can do a lot of stuff in graphical mode, but if you want to do anything powerful, you have to do it through the command line. It may be hard at first, but you'll soon find that unlike windows, your conrol over the OS is only limited by your knowledge, rather than being limited by what the OS will let you do." After he said that, I had no problem trying to use the command line.
Re:Hunting (Score:5, Insightful)
I find it rather funny that so many people recommended apt when the author made it clear that they were already using it.
My personal view on this is that the model in which software developers only make available a source tarball and leave packaging to others is inherantly flawed. Packaging and making your software easy to install is as much a part of writing quality software as producing documentation and testing is. It makes just as little sense to leave packaging to third parties as leaving documentation to third parties does, or leaving development of the website to third parties.
The main problem that causes dependency hell is pretty clearly that the programs that resolve dependencies cannot always locate a suitable package to meet the dependency, or alternative suitable packages do exist but metadata mismatches prevent the connection from being made.
One of the reasons for that is that there is no way for developers to produce packages that can install on many forms of Linux. While the source code as a lowest common denominator is required for platforms that are not binary compatible like Linux/FreeBSD/Solaris, generally Linux distributions are binary compatible so there is no need for nonsense like a separate package for every version of every distro.
I also believe it's not feasible for a single (or even a group) of 3rd party repositories to package every piece of software somebody might ever want. Even in extremely large repositories like Debians, the software you want is sometimes missing, sometimes out of date. The effort required to maintain it all is enormous.
Eventually a decentralised model will fall into place, of this I am sure. Thomas Leonard already pointed out the excellent work him and his team are doing with Zero Install, and of course I pimp my project in my sig.
But basically, what both these projects have implicitly agreed upon is that the current model is fundamentally broken - it will take time to shift the inertia of the status quo unfortunately.
Re:Parent point valid despite foul language (Score:4, Insightful)
screws up whatever some other user(s) are doing. Remember Linux/unix is a MULTIUSER system , its not single user like Windows. Ejecting the
CD is not necessarily the brightest thing to do in all circumstances and shory of endowing the machine with AI how is it supposed to know
which action is appropriate?
Re:Easy... (Score:5, Insightful)
I mean, really what is computing about? (Not just GNU/Linux) it's a means to an end, NOT the end itself. Computers are really interesting, and that's how I earn my daily bread. I even like them just because they are, not necessarily because of the benefits that they bring to people. Still, I have to acknowledge that the majority of computer users only bother with them because they allow the user to do specific things, like balance their checkbook, order books online, or curse clippy with all the vitriol in their hearts.
The people involved in the GNU/Linux community are smart, and intense. Probably too intense. For all of the hacker humor that's out there, it's often suprising just how seriously people take things.
cut and paste (Score:1, Insightful)
Installation takes too much work! (Score:1, Insightful)
Incorrect/buggy termcaps (Score:3, Insightful)
World Domination Will Come When Copy & Paste W (Score:5, Insightful)
Copy and paste doesn't work consistently, and when it does, it often behaves in nonsensical ways.
I feel that world domination will come when the following "Just Works" for every Linux user:
All of these things have consistently worked flawlessly in every version of Mac OS and Windows I've ever used. Note that my first Mac ran System 5 and my first Windows box ran Windows 3.1. Yes, I am an old man.
I've been using Linux since I first installed Yggdrasil Plug-n-Play and I've never been able to get this to work right.
Consider how frequently office workers in a business need to copy and paste text, and consider that this is my main frustration, even though I am an experienced Linux user. I nearly had my Windows-loving wife talked into trying out Linux, but when I explained this problem to her, she said she wasn't even willing to give Linux a chance.
And yes, I understand one reason this doesn't work in X11 is that the fact that this network-transparent GUI sometimes has to work on X terminals with limited memory, so you can't provide a dedicated memory buffer for a clipboard like on Windows or the Mac. But my friend, the PC I'm typing this on has 512 megabytes of RAM, and frankly I rarely if ever run X over a network, so I don't see this as a valid excuse anymore.
It's enough to make you chew your own foot off.
Re:DVD Player (Score:3, Insightful)
1) The non-obvious way in which you have to enable DMA mode for good performance, typically off in most distros, how you switch it on varies between them.
2) The fact that mplayer and Xine have UIs from hell. I use mplayer, but I had to figure out "mplayer -dvd 1" by trial and error, basically. The 1 is for chapter, I think. Not to mention the way you specify crop rectangles manually.
Fortunately the UI situation will be hopefully fixed by Totem, a really delightful video player. At the moment it's kind of screwed by a bug in XFree, but that is fixed in the next revisions of all the major distros. It's also a Gnome app, so I suspect some distros that have a policy of KDE only will miss out, as far as I'm aware there is nothing that quite matches up to Totem out there.
It's based on Xine or GStreamer, take your pick. The Xine version is currently more featureful, but the GStreamer backend is catching up fast, and hopefully Totem will be in gnome 2.6
Re:Worst Linux annoyance- (Score:5, Insightful)
You've got to be kidding. It happens all the time here. If someone asks a question about moving from Win to Linux, he will get flamed with comments like "if you don't know what distro to get [or whatever simple question was asked], Linux is not for you."
Re:Parent point valid despite foul language (Score:5, Insightful)
I don't completely agree, but something similar to what you describe would be a nice feature. (As long as we don't force it upon anybody, choice is the answer). I don't like the Windows way of handling removable media. I don't like the Linux way of handling removable media. I don't like the Machintosh way of handling removable media. I don't like the IRIX way of handling removable media. And I don't like the SunOS way of handling removable media. AmigaOS got it almost right at first attempt. Now if somebody will please tell me how to detect the eject button in software, I will try to make an AmigaOS-like implementation for Linux. I also need to know how to detect that a disc was inserted.
Googling for obscure errors such as this one.. (Score:2, Insightful)
Re: Unmounting devices (Score:4, Insightful)
> Oh *that's* intuitive - I know it took quite some time till I found lsof
The error is in thinking that a computer should be intuitive. Computers are equivalent to Turing machines, modulo the bounded memory; they can go far, far beyond our intuitions. The only way to make them intuitive is to dumb them down, i.e. limit what they can do. So be prepared to choose between having your computer dumbed down to a consumer appliance or else having to learn a lot in order to master it.
> what if you don't want to kill that app? Often you're already browsing a completely different directory or -in case of Konqueror instead of Nautilus- you have a number of additional tabs open.
Yeah, that would be annoying. Next time it happens, write the app developer and aks him/her to fix it so that it doesn't hold stuff open that it isn't actually using, and explain the problem it causes for you. In my experience Linux app developers are very approachable, and though they may be very opinionated about how their application should behave they tend to be receptive about pragmatic suggestions regarding unintended effects.
Re:Straw men (Score:3, Insightful)
OK, try this. Log in as 'guest' and run ROX-Filer. Since ROX-Filer isn't in the main repositary, you'll need to edit /etc/apt/sources.list to include a new server (which you might not trust).
But now, when you install ROX-Filer, you're running some of that code as root (not as guest),
possibly risking your whole system.
In Zero Install, you'd just log in as guest and run the filer. Nothing would run as root, and you could test it in safety. Thus, I think both claims are valid.
There's more stuff about this in the security model [sourceforge.net] document, which I forgot to link to before.
Thanks for the comments,
Send a fix along with your complaint (Score:5, Insightful)
It will rise much more quickly to the top of a developer's TODO list.
It will be much more appreciated if the user with the problem has thought the thing through, rather than just complaining.
It is basic to the spirit of Open Source, where people contribute .
Selfishness has no value here. Ayn Rand would die of hunger in the Open Source world.
Re:Hunting (Score:2, Insightful)
My annoyances (Score:5, Insightful)
The multiline strings suddenly being illegal in gcc 3.3.x are annoying too. Much code still uses multiline strings. Yes I know about ANSI concatenation, but I'm not talking about my code here, I'm talking about the heaps of OPC (other peoples's code) out there. Many wasted moments were filles cleaning up other people's mess. Oh well, not really a linux issue, but a gcc one, but what the heck.
The Linux VM swaps an awful lot when it really shouldn't. Well, it doesn't suck as much as it used to, It used to be a whole lot worse, but it still sucks. I have quite a bit of memory in my machine. I bought the extra mem just to avoid the godawful paging to disk. Linux somehow still sees fit to page to disk. Yes I could turn off swapping, but I just want to be safe instead of sorry. The OOM killer isn't very nice to your processes when you run out of mem or swap.
Linuxisms in code. Programmers that write very cool software (e.g. KDE) but fall into the GNU libc-extension and Linux-only features traps, and thereby making their code instantly unportable. Linuxisms are the bane of my (and others') existance when porting stuff porportedly written for linux to another OS. Instead of a straightforward recompile, I have to monkey around to beat all the linuxisms out of the code to get it to function well on other systems. Examples include /proc abuse, library/system calls only available to Linux, assuming the env is little-endian, alignment assumptions, filesystem feature assumptions, and wearing 32-bit blinds. Not really a linux system annoyance, but more a Linux-attitude-towards-other-systems and brainfarted programmer annoyance, but hey, we're on a roll here.
Bash-isms. Yes, I know the venerable bourne-again shell is the "default" bourne type shell in Linux. It's actually quite featurefull, and can do a heap more stuff than the normal POSIX bourne shell can do. Linux coders seem to thing *all* systems use bash as their bourne shell and write their supposedly bourne shell scripts with bash extensions. For someone using systems like the BSD's, IRIX and whetever doesn't ave bash as their default shell it's mightily irritating. Also the linux bash shebang cancer is an annoyance. If you absolutely must have bash, use env(1) to find bash, instead of hardcoding it into your shebang. Else, just stay away from those bourne again extensions. Use the korn shell if you must.
GNU's rabidness against man(1). GNU has deemed the info(1) documentation the "standard". info(1) sucks. It's counterintuitive, bloated, and redundant. It has absolutely no advantage over HTML, SGML or even LaTeX docs. And the man(1) system is nice and lean for a quick reference. For some reason, GNU wants to stamp out man(1). Luckily, many linux developers still embrace the man(1) system and still write manual pages (bless their little souls). But to find any useful docs about say gnu autoconf, you have to interface with that monstrosity that is info(1).
That's it for a while. I'll think up some more concrete really linux application related ones and post them to the list if I have time. FOr now, this is just a small list of some tings I find annoying about Linux and GNU.
Re:The worst annoyance... (Score:3, Insightful)
Some people expect the world, and when people point out how unreasonable that is, decide to shoot the messenger rather than deal with the problem. Nobody has any sympathy for them.
Re:RTFM (Score:4, Insightful)
If you want easy and automatic, you shouldn't be using commandline apps in the first place. Go use GUI desktop apps.
Re:Parent point valid despite foul language (Score:3, Insightful)
Behavior like this should be unacceptable.
Lack of manufacturer support! (Score:3, Insightful)
But... where is Canon's EOS digital software for Linux? Where is the support for my Acer parallel scanner in Linux, so that it doesn't have to sit in the closet any more? Where is the formatting software for my Panasonic DVD-RAM in Linux so that don't have to use mkudffs (since mkdosfs doesn't work on DVD-RAMs for some reason)? Where is the video capture software for my usbvision TV adapter?
I'm tired of having to dig through spec sheets and deja to find out if the general chipset-oriented driver in Linux works, and to what extent, so that I can decide whether n% is % enough for me in terms of device functionality. I want to be able to go retail and see something like what Loki used to put on their boxes:
Linux Requirements:
300MHz or faster Intel, AMD or VIA CPU
Kernel 2.2 or later
Loadable module support
USB (EHCI or UHCI) support
KDE Desktop Environment support
200MB or more available on
The Linux community has done an excellent job of cooking up software and drivers for some devices (gphoto2 can fetch the photos from my Canon EOS digitals, my DVD-RAM is reasonably well-supported by the sr.c driver) but the bare, general drivers are still lacking compared to the manufacturers' often full-featured software driver-applications.
It's a major peeve to me that not only will many manufacturers not develop drivers or supporting applications for Linux, but many will also not provide information to independent developers to that they can write similar tools. I've tried to contact vendors for development information for a couple of chipsets even recently, and the responses are less than helpful. It seems like peripheral manufactuers are the last great market segment that say with a straight face "Linux? What is Linux? Your PC runs either 'Windows' or 'Mac OS'. Please tell me which you have."
Of course, with all of this said, thanks to the community Linux has much better driver support than other Unixes. For me it's a choice among Unixes and not between Windows and Linux. But I'd still like to someday see an commodity-hardware Unix with real driver and applications support from manufacturers...
Would more static linking help? (Score:3, Insightful)
Could it be that we've gone too far the other way? Is it possible to statically link in obscure or highly version dependent libraries but leave common libraries dynamic?
Re:RTFM (Score:2, Insightful)
RTFM. If you don't like it go use windows.
Now why isn't linux catching on again?
Re:Hunting (Score:3, Insightful)
1). Any dependencies should #$#%-well be handled by the installing app. with decent explanation of requirements (warnings) in the install manual (A man can dream...)
2.) When you must descend into Dependency Hell: Look in the parent post. 5 Linux OS's, 5 tools. (There are probably more.) Having a choice is a good thing, but if all these Linux flavors keep going the way they are, they will probably not having anything in common in, say, ten years. By then, I guess they'll have all evolved into new distinct species, unable to interact except by tcp/ip and the like. Doesn't sound like progress to me, though.
MOTOW - Master of the Obvious, What?
Mod parent insightful. (Score:5, Insightful)
Ok, im gonna duck now and try to keep myself from catching fire.
Love linux, but 4 things I don't like (Score:4, Insightful)
2. changing the screen resolution. playing with modelines and sync rates at the risk of my display exploding is not my idea of fun. and no, x-configurator is no better.
3. RTFM responses from junior highschool students to legitimate requests for help. Google didn't help, or gave me an answer in Portuguese, and no it really didn't occur to me to read the FAQ on fuzzwurzle.com/blips/linux? You know, the FAQ that is not archived and has been moved to its new home at mxlplix.org/ribbons which no longer exists?
4. General pain in the ass that it is to configure anything, install anything, upgrade anything, or modify anything. Even when I've gotten something to work after hours of effort, the fix I finally get to work does not always work for the next machine I have to do the same thing on, nor do I always remember what that fix was by the time I have to do it again.
Re:Hardware support (Score:3, Insightful)
The only reason that's possible is because Apple knows that "this slot will have an airport card in it if it's occupied. If it's not occupied, just ignore it."
Unless you want your motherboard to have 5000 different slots for every single PCI card made, and then have a bootup program run through each one, detecting which are empty and which are used, and then installing the software for the used ones (a process which would take up yards of physical space and loads of processing time), you're going to have to deal with installing drivers and kernel modules.
Breaking scripts is no small thing. (Score:5, Insightful)
Many, many existing Linux users have volumes of existing scripts that were written to expect certain behavior from commands.
If you fidget with commands break all of those scripts in hopes of gaining Windows users, you will severly break the working environments of the existing Linux users in ways which may take years to repair. More importantly, most of these are the same people doing most Linux application and driver development.
It's the classic "make it so that even a fool can use it and only a fool..."
You see: you "fix" a whole bunch of silly RTFM problems all over Linux, so that the "obvious" (to a Windows user) behavior occurs. You gain a whole bunch of happy Windows users who don't want to learn about "old fashioned" ways of doing things. But you break a whole bunch of older scripts, methods, and tools in the process. Congratulations, you've just lost a huge portion of the original Linux community (esp. the development community) to *BSD, where Unix is still Unix.
You're back where you started. All the interesting development is now happening on BSD because the active technical community now lives in BSDland. But BSD is still Unix-y and so you're back to whining "Why do I have to RTFM? Why can't you *BSD people make this stuff easy and do things the obvious way? How do you ever expect to get any of us Windows or Linux users?"
The answer is simple. Unix developers want Unix. Windows users considering a switch should come to Unix for Unix, not for a cheaper Windows.
My own $HOME/bin directory contains 214 scripts, some of them very long and not seen by human eyes in years. All of them use piles of shell tools. If Linux breaks them, I'm outta here. I don't have time to rewrite and/or debug all of them from beginning to end in some kind of "It's the New Linux!" audit.
Re:Parent point valid despite foul language (Score:2, Insightful)
Re:RTFM (Score:3, Insightful)
If I had to point out one reason why "linux isn't catching on" it would have to be a reason whom is related to the area where Linux is particulary weak, the desktop area.
In my humble opinion the temporarily failure or maybe just a delay of Linux on the desktop area has to do with bad documentation. For end users that are new to Linux, but willing to learn, bad or weak documentation can be real turndown.
Actually I think the bad documentation is related to the hacker culture and the "do it on your own" attitud. This also influences the developers whom often take easily on the commenting and documentation of their code. All this is a vicious circle that can lead to a not very newbie- friendly environment.
Admin issues (Score:3, Insightful)
That said, if you've got someone who knows how to manage it, a friend or IT tech, Linux is usable for everyone. For the vast majority of normal tasks done on a computer, the programs are capable and easy to use. This is why Linux is ready for the corporate environment and for friends of Linux users.
Then again, not many folks do admin tasks on their Windows installations either. The only lacking element is the non-hardcore-but-regular computer user.
I hope this post doesn't get lost in the crowd...
Re:Here are a few... (Score:2, Insightful)
False user experience level dichotomy (Score:5, Insightful)
Documentation in the programs themselves (Score:2, Insightful)
Preferences->Navigator->Helper Applications
mime-type: audio/x-scpls
extension: pls
open with:
I checked around with google and eventually when frustrated (I tried
Now would someone please tell me what the hell the point of documentation like that is? It reminds me of my bios..
AGP_FAST_WRITE: you can enable of disable.
F1 reveals the following help: choose enable or disable
I mean come on, I think we've got the interface figured out in both the BIOS and Mozilla.. if we're smart enough to be changing these options then I think we can handle the elementary interface. I can understand the BIOS with the limited storage it's in, but Mozilla? If you're going to write documentation like that, just write "Sorry, no help available"
Re:Send a fix along with your complaint (Score:5, Insightful)
I am a software developer by trade. I know a fair amount of user interaction design principles. That doesn't mean I have the lifestyle that affords me ninety hours a week to add nothing but polish the nits out of the hundred different Linux applications I use every week.
I submit suggestions when I can. I even submit code when the problem is isolated in such a way, and the existing codebase is conducive to productive spelunking. Most software annoyances I have are conceptually easy to explain but require in-depth knowledge of the codebase before I could hope re-architect or retrofit a solution.
This isn't about selfishness or altruism, it's about specialization: people can (and do) have legitimate issues without having the capability to fix it, even in so-called Open Source projects.
Man files without examples (Score:3, Insightful)
Re:RTFM (Score:5, Insightful)
Many UNIX command-line tools are meant to do one job, and do it well. There's no reason for tar to know about compression formats -- what about UU-encoded stuff? Should tar have to know about ARJ, LHA, ZIP, gzip, various encoding formats (BASE64, etc.), and other issues?
This isn't an RTFM thing -- you don't really want to be using tar or rpm or cdrecord in the first place, because these are programs which are meant to do things very literally, without room for misinterpretation.
Strict behavior is better than undefined behavior.
The ideal solution is NOT for GNU to add all sorts of heuristics into tar to figure out what you want it to do -- that addresses the wrong problem. The ideal solution is to have front-end programs which invoke tar, gunzip, rpm, cdrecord, and such. Perhaps a "suggest" script could invoke "file" to determine what the file contains, and suggest things to do with the file based upon its contents.
Simplicity is key to having bug-free programs. Let front-ends handle dealing with people who don't want to learn how to get a specific program to do a specific task for which it was designed.
Besides, what is the best default action for tar? To uncompress an archive? To list the contents? To add files to it? What if the user specifies two tar files on the command line? Does tar add the second to the first? The first to the second? Does it list them both? Does it create a third with the merged contents of the two on standard output?
It sounds to me like tar should have command-line options to let the user tell it EXACTLY what to do, so the user isn't surprised by something unexpected happening.
Oh, wait, it already does.
easy: kernel configuration (Score:3, Insightful)
Many of the things that are in the kernel probably shouldn't even be in the kernel but could easily be implemented in user space if the Linux kernel only had appropriate interfaces. For example, many file systems, PPP, and many USB drivers could be put into user mode programs, but the Linux kernel lacks the interfaces to do it.
Re:RTFM (Score:2, Insightful)
-P port
Specifies the port to connect to on the remote host. Note that
this option is written with a capital 'P', because -p is already
reserved for preserving the times and modes of the file in
rcp(1).
Re:Parent point valid despite foul language (Score:3, Insightful)
This and all arguements like it are clever little distractions, but one should remember that Linux has a nice little feature that Windows or even MacOS does not, total and complete customability. So some code is added that allows you autounmount and eject a CD from a drive just by pushing the drive button. 24 hours later, someone else adds code that makes it a script option in the automount/unmount program so you have to "manually" unmount it in a server environment. 2 weeks later, this is incorperated by yet another programmer into a nice GUI interface for one of the Window Managers, and within a month it's incorperated into all the WMs. By the end of the year, all *nix variants have it, and by second quarter of next year, there's access security built in.
Write the damned code and the users AND programmers will come!
Re:CUPS (Score:3, Insightful)
Senerio:
It's often easier to just go away and brew and drink a pot of coffee.
-Rusty
Re:Breaking scripts is no small thing. (Score:5, Insightful)
This is definitely going to draw a lot of fire from the *nix people here, but I can't hold back. Fixing things that break over time is called PROGRESS. Keeping everything old-school just for the sake of saving time (and admittedly money) by avoiding the task of re-writing scripts isn't going to further the goal of the Linux community.
Now, I will admit that a lot of things shouldn't be changed. I personally don't see any problem at all with the operational use of the command "ls" or "cd". However, do a man on any choice of commands, and you'll see all kinds of "obsolete" and "outdated" remarks about options that no longer work, or have been replaced. At what point in the future can we FINALLY get rid of all those things that were obsoleted 8 years ago? What if they finally did remove that option and break some of your precious scripts?
Say it's a very simple change... like changing "ls -l" to "ls -z" (for example). A very simple sed command can change all the ls -l's to ls -z's. Voila, all your scripts work again.
I haven't even gotten into the fact that every now and then it's healthy to go back through all the scripts you've written to find errors, omissions, etc. I wrote a bunch of scripts about 6 months ago, and just went back through them this week to make sure everything was running as well as it could be. Re-writing scripts is one step of optimizing your system. If you never revisit the work you did 10 years ago, you never know if it could be simplified. What would your response to Microsoft be if they announced they were going to keep DOS commands around for all future versions of Windows, just to make sure that everybody's batch files worked properly? There'd be a massive Microsoft bashing session on
Re:RTFM (Score:3, Insightful)
No, I don't think that bad documentation is caused by the "do it yourself" attitude. Bad documentation is caused by the fact that good documentation is so damn hard to write and so damn hard to maintain.
Go ahead, go write some documentation, publish it on your web site, and help reverse the trend. Every bit helps. But again, it's not that easy and it takes more work than people realize.
Only ONE way to contribute. (Score:1, Insightful)
1) Icons and other artwork. UI mockups.
2) Documentation, both expert and newbie. Help and error messages.
3) Translationing present text to another language (internationalization)
4) Linux advocate, write articles about the pros and cons, amoung other things.
5) Advisery role.
6) Use your imagination.
Re:RTFM (Score:2, Insightful)
The way I see it, those basic commands like tar, cdrecord, and oggenc provide raw and broad functionality. Taking that functionality and making it normally usable are programs/scripts like Ark, xcdroast, and dekagen. When these two things come together, you have something easily usable and intuitive, which is the goal for a desktop operating system.
Exactly (Score:3, Insightful)
WIRELESS!!!! (Score:3, Insightful)
Does that task belong more to the linux community of developers, or the wireless hardware manufacturers? Probably a bit of both.
Re:Hardware support (Score:1, Insightful)
Please don't break the scripts! (Score:3, Insightful)
I think the distinction I'm trying to make here is that many people's scriptbases are working scripts, whose job is to save time and effort, freeing up bandwidth for other uses. A good script library should be managed like a commercial product -- after a strict test cycle, leave the source alone. These are not hobby scripts, or fun scripts. They are grim workaday scripts which ardently want to be left alone to do their work in peace.
Over the past 10 years I've accumulated a massive library of scripts which I carry from job to job. Back to the original point, about "fixing" unix tools for ease-of-use, where is my benefit in breaking my whole library by redefining how "ls" works? If you don't like "ls", create a new command with a different name.
Re:Parent point valid despite foul language (Score:3, Insightful)
when running X, if I hit the eject button, and some app is using the CD, I should get a popup dialog on my screen saying specifically which app (or apps) are accessing the CD, what files they have open, and giving me three options:
"Do you want to (a) eject anyway, possibly causing problems with those applications, (b) close the applications and then retry the eject, or (c) cancel?"
When running at the command prompt, when the eject button is pushed I'd be happy just to see a message printed on the console stating which app or apps (and their PID's) have files open on the CD.
I think there may be hardware limitations in some CD/DVD drives that would not allow this to work in every case, but if it could work on 90% of hardware that would be good enough for me...
Some small things might go a long way (Score:3, Insightful)
I've tried to convince a few people to convert but
when I find out that they have all that wintel crap, well...
Setup of winmodems. Currently that's a hellish task.
I went through a dozen of them trying to build a box
for my dad until I found one that worked.
There's tons of this cheap shit out there but people
do NOT want to be told that they have to buy new hardware.
They bought a Dell or whatever and the video card, modem, etc.
that came with it, well, they expect it to work.
"it worked under M$, why the hell should it not work with Linux?"
You can't tell them, "Sorry pal, your modem (and or video) is a
piece of shit and you'll have to replace them, despite the
fact that they work just fine under M$..
Yeah, that's a no starter.
The Linux for free concept just got a $150+ price tag nailed onto it.
cut/copy/paste is pretty sucky. They really need to work this out.
I'm no big fan of "klipper" but there has to be a better way.
In M$ you can do like codes to get foreign characters.
For the most part I do not want
to totally switch my keyboard from English to German to type a
simple letter when I only occasionaly need to use a German character.
That's just silly. It was easy to do with M$, not easy to do
with Linux. There may be a better way to do it but I've not
found it yet.
Nicer people. I've found that Linux people are brutal and ruthless
when it comes to help.
It usually goes something like this,
nube: Hi, how do I install a winmodem? I'm brand new to Linux.
vet: RTFM!! RTFM!! modprobe !! Damn dude!
nube: Uh, I can't understand all this modprobe stuff, I'm NEW to linux.
vet: RTFM DAMNIT!!
nube: I'm still confused.
vet: man modprobe !!! Do we have to hold your damn hand?!!
nube: Jeez, with windows I just turned it on and hardware wizard
installed everything for me. Maybe I'll just stick with MS..
vet: Well, if he was too stupid to understand man modprobe then he doesn't
need to use Linux. Jeez! Dumb ass newbies..
That's the sort of bullshit that makes potential converts turn away and
stay in la la land and crayolas..
Either Linux needs to get better at hardware handling or the people
that want to convert others need to get off their high horses..
CD automounting (Score:3, Insightful)
I'm occasionally stunned, after all that time, to see how many distributions are still fiddling with KDE or Gnome CD-watching daemons, special kernel patches, etc. to try and get reasonable behavior out of removeable media without just putting a couple lines in the config files for autofs.
Re:avoid the command-line? (Score:5, Insightful)
Unix commandline apps assume that you know what you're doing, and do *exactly* what you tell them to do. This behavior is very useful in scripts or graphical frontends, because you know exactly what they will do. And this is the correct behavior because these apps are meant to target users who know exactly what they're doing.
The less technical people should use graphical desktop apps. They make sure (more or less) that the user won't make big mistakes, like Windows. Those users wouldn't use commandline apps in the first place. So why modify commandline apps to target them if they won't use the apps anyway? It's not worth losing the scripting flexibility.
Don't use rm, hit the Delete key in Konqueror or Nautilus. Don't use tar, use File Roller or KArchive. They're easier to use *and* won't let you make stupid mistakes.
"My personal pet peeve? why is it that with >75% of apps that I download as source have either configure scripts that simply don't work, or include code that doesn't compile."
Then you must be running some weird or outdated distro. 90% of all source code here compiles and installs out-of-the-box.
Re:False user experience level dichotomy (Score:2, Insightful)
This will make Linux better?
Yes, actually, it will. I, for one, don't mind hacking config files, so long as they're well documented. Most of them that I've encountered have been, but then I've only configured some large-project packages like Apache and whatnot. I'm sure there are examples of config files that read like the've been ROT13'ed.
But then I look at a tool like Webmin, and think, gee, it sure is easier to install packages using this thing, and I can configure some of them here, and get on with USING my computer rather than CONFIGURING it.
I think it's cool that, as a "normal" user, I can't do certain things on my Linux boxen; I have to log in as root to do them. But there are a lot of things that I should be able to easily assign to groups of users, such as having R/W priveleges on FAT partitions.
"Whaddya mean, noob? RTFM! It's as easy as hacking your /etc/fstab file and adding /def/hda1 /mnt/win_c fat defaults 0 0 on a line. How hard is that?"
Pardon me for polluting the traditional Linux model, but somewhere between that and checking a box that says "Allow all users read write priveleges to everything this computer can possibly access" (which is, I believe, an actual setting somewhere in XP) is a middleground where computer users can feel comfortable without being either hackers or id10Ts.
Re:RTFM (Score:3, Insightful)
Re:False user experience level dichotomy (Score:5, Insightful)
This will make Linux better?
It's funny how slashdotters always want linux to replace windows, but shun targeting the same user level which MS has successfully exploited. Umm, if we want to take over their market share and thereby users, don't we have to target them? I sometimes think that slashdotters think that the rest of the worlds users should learn to program and understand their computers like a geek. Most people don't have the time, patience, or inclination to delve into it so deeply.
Re:False user experience level dichotomy (Score:3, Insightful)
You talk about targeting the "Middle 50%" like it's going to just ruin Linux entirely for the "Ninja 10%" or whoever. But it hasn't ruined anything. Certain distros are already well on the way to that Mid-50, with lots of GUI and ease-of-use and what-have-you, but you don't have to use them. Gnome might be dumbed down, Red Hat might install with a single mouse click, but my Slackware box is still as obtuse and difficult as ever.
I know that if I could install a printer just by clicking on something instead of digging through man pages and HOWTOs and screwing around in vi for hours, I'd get miserable. Linux is the greatest text adventure game ever written, and letting some GUI play for you just isn't any fun. But I also understand that most people don't feel the same way. They just want their computers to work. Why do so many people think the needs of the Mid-50 and the needs of the Ninja are mutually exclusive? I thought Linux was all about choice and customizability, why should this issue be any different?
Re:What he said (Score:2, Insightful)
You wanna know my Linux annoyance? (Score:1, Insightful)
"So why don't you contribute?"
Okay, so let's make Linux an OS only for programmers. Next.
Theft of focus (Score:2, Insightful)
A typical scenario:
You are composing an e-mail message and you need to include some information from a spreadsheet, so you launch Open Office to read that document. Since Open Office takes a while to load, you go back to writing your message for a while. Some time later, all of a sudden, you are typing at the Open Office screen, which has stolen focus away from your e-mail.
Maybe this behavior is overrideable in KDE, but if so I've never found the option for it.
Repeat after me: (Score:2, Insightful)
Joe and Jane everyman have no skillz and simply will not do it. If they can't get their brand new xxx or yyy peripheral working within 1/2 an hour maximum, Linux will be dead in their eyes. You can also be sure they will tell their friends about it.
I am a seasoned programmer, and I just spent the entire day trying to get my @#$% USB video camera to actually show any pictures. Still doesn't work. damn...
My list (Score:2, Insightful)
Kernel modules: Its stupid that something compiled for say 2.4.19-43 won't work with 2.4.19-44. I don't see why they can't be compatable aross the whole stable release eg, 2.6.x. I'm not just thinking of binary only drivers. It would make installing 3rd party and updated drivers much easier.
KDE/Gnome/X: Various core parts of these still crash semi-regularly.
But the biggest one has to be simply installing software: Its not the package formats that are the real problem, its the people who make packages that require "libsometing == 1.45-beta5" when "libsomething >= 1.0" would have worked.
There must be a reasonable common denominator amongst all recent distros. I've actually found commercial software to be the easiest to install because they have a moativation to do this.
As for all the different locations for configuration files etc. Just fscking pick one, flip a coin if you have to. I'm sure your way is a million times better but thats what you get with standards.
Directory Structure (Score:2, Insightful)
I like my directory structure to be more organized. The OS and it's stuff goes here, my installed programs go here, etc, etc.
The linux structure just seems too chaotic.
Re:Biggest annoyance (Score:3, Insightful)
Re:Hunting (Score:4, Insightful)
Generally apps only use what the OS provides them, then rely on installers to fill in the missing pieces if for instance you need a component that didn't ship with Windows 98 - unfortunately that has traditionally led to DLL hell.
GODDAMNED PRINTERS (Score:2, Insightful)
Re:The worst Linux annoyance? (Score:3, Insightful)
One of the things that annoys me is when people accuse those who don't want to have to learn all the ins and outs of a Linux system of being lazy. I'm not lazy - I just don't have a great deal of time and have far more interesting things that I'd like to be doing with it.