Die, Linux, Die!!
As many of us realized, Linux is really powerful *if* one can get it to work, which is usually a herculean task. I read a lot of blogs and forums on Linux, and here is a very funny and informative post from a frustrated user :
I’ve been using computers since 1979, when the physics lab had an IMSAI 8080 set up that used paper tape to boot to dual 8 inch floppy drives. The IMSAI 8080 ran CP/M and it was simple and straightforward to use. You fed in the paper tape, then you made sure the 8 inchy floppy boot disk was in the A: drive, and then you typed in commands into the terminal once the system came up. It worked. You didn’t have to worry about stuff.
My first computer, an Apple II+, also just worked. The machine booted from ROM and gave you a prompt. It just worked.
My first IBM PC was pretty much the same deal as the Apple, except that you had to have a DOS boot disk in the A: drive when you turned on the IBM PC. Then you typed commands in when the system came up from the floppy drive. It was all straightforward. It just worked.
I’ve been trying to learn linux and haven’t gotten anywhere. Linux doesn’t work. Let me give you 6 simple examples:  AbiWord. It doesn’t work. It’s broken at a basic level. To print you have to mess with CUPS. And CUPS is a disaster. I was never able to get CUPS to work. Apparently CUPS works something like sendmail, and you have to tell the printer to LISTEN to some cockamamey IP address before you can get it to print. What I want to point out here is how insane that idea is. The notion that, first, you assume the default is a network with 10,000 computers hooked up to another network of 10,000 printers, so you have to default all the printers to ignore whatever you print until you turn one specific printer on. That’s crazy. An individual user will NEVER have a setup like that. NEVER. *Ever*. Period. And the notion that, second, you are lying to the user. Linux implies that when AbiWord tells the printer to print, then it will print. You’d think. Wouldn’t you? Why else have a menu that you can use to print stuff? But no. It’s all a lie. Turns out that when you send a print job to CUPS, you get nothing, even after configuring the printer, unless you do a lot of complicated mumbo-jumbo that I never was able to figure out. That’s insane. It’s like setting up a car to start only after you turn the ignition key _and_ get out and open the trunk _and_ slam the rear left door twice _and_ honk the horn 3 times in a row _and_ switch the headlights on and off 7 times. It’s stupid. No sensible person would expect a car to work that way, and no sane person would set up a car so it would only start if you followed that procedure. To start a car, you turn the key in the ignition. (On really old cars, you press a button while pulling the choke lever. But same idea.) To print in linux, you should tell linux what printer you have and then choose PRINT from the menu in AbiWord. If it doesn’t work that way in linux, it’s broken. It works that way on the Mac in OS 9 and it works that way in Windows. Linux has broken printing and it lies to me. I don’t like functions in computers that are broken (like the early Windows 1.0 that shipped word processors but had no printer drivers — remember that winner?) and I especially don’t like a computer to lie to me. I won’t even go into the issue of how on linux everything emulates postscript, including a dot matrix printer driver. That’s so crazy it sounds like something from the chill-out tent at Burning Man. I won’t even discuss that, it’s too ludicrous.
 Installing new software. I began to see a common pattern in all linux operations when I tried installing new software. Linux lied to me once again. To install software on every other computer I ever used for the past 25 years, I copy the software onto the system disk and then use the software. On every other computer, that works. But not on linux. In linux, if you copy software onto your linux drive and double click on it you get nothing. Drop to the command line and tell the software to run. Nothing. Instead, you have to do crazy pointless things like download libs. Why? What was the developer doing instead of putting together a program that worked…smoking dope? On every other computer, the developers include everything a program needs to run — not on linux. On linux you download the program, then you get dependency hell. This is a euphemism. “Dependency hell” is a fancy way of saying “The linux programmer was too stupid or too careless or too incompetent to actually include all the stuff the program needs to run. So you have to clean up the stupid ignorant incompetent linux programmer’s mess.” I don’t like cleaning up a programmer’s messes. When I did that I was called a supervisor and I got paid for it. I’m not being paid to run linux as an end user. So I’m not interesting in cleaning up programmer’s messes. I also don’t like being lied to. Even when I was getting paid to clean up programmer’s messes, I wouldn’t stand for some programmer lying to me. When a program gets distributed the obvious and sensible conclusion is that it’s ready to run. You download it, you figure it will run. Guess what? In linux, it usually doesn’t run. And so, when you find out the program doesn’t run because it’s missing libgetc and blah blah blah, you realize…hey. Looka this! You’ve been lied to. Yes, this program is ready. No, it isn’t, hahahaha, we lied. Look at the silly expression on your face, you luser. Oh? Look at this. It’s my ass leaving linux behind. Now who’s the luser?
 Linux seems built on a simple philosophy — find out what the user needs to do and prevent it. Case in point: I downloaded a big application package, Planet CCRMA, and followed the directions for installing it. Didn’t work. The instructions included a lot of arcane shell commands to install the software. After I ran the shell commands, nothing was installed. Nobody could explain this. You go online and tell people, “Those commands don’t work,” and you know what you get? Laughed at. “Ask for a refund,” they giggle. Funny. Meanwhile, nothing works, and none of the so-called linux “gurus” can explain why. So I tried a bunch of stuff. I tried using a linux text editor to edit the config files. Whoops! YOU DO NOT HAVE PERMISSION TO ACCESS THIS FILE. What the hell is that? Let’s think about this. You have a config file and you have a text editor, and you cannot use the text editor to edit the config file. That’s insane. That’s not just hard to use, that’s actively _user-hostile_. That’s finding out what the user needs to do and actively *preventing* it. Around this time I started to get a grasp on the linux way of doing things. First, lie to the user. Second, tell the user “in order to do X, you must first do Y” — then prevent the user from doing Y. Third, make fun of the user when s/he points this out. There’s a word for that: evil. Linux is evil. And the linux user community seems to have come straight out of the movie THE EXORCIST. The only thing that surprises me about the linux online community is that when a n00b asks for help, their heads to don’t rotate 360 degrees while spitting up pea soup. Linux seems *designed* to frustrate you. And you have to admire the ingenuity with which linux is designed to frustrate you. I’m not a complete novice. You’d think I’d be able to figure out how to get linux to do *something.* But I never could. The people who designed linux must have spend millions of man-hours figuring out all the possible ways of getting something done in linux, and then carefully deducing out with diabolical ingenuity how to block the user and stymie the user and smack the user down hard when the user tries every one of those myriad ways of getting something done. That’s pretty impressive, when you think about it. Just imagine all those combinatorial ways of combining commands, and yet linux manages to make sure they all give an error message. Every since combination. Every single option. All designed to block the end user. That’s an amazing achievement, in a perverse sort of way. Admirable — but sick. And crazy.
 Command line. Look, I started with a command line. It was okay. In 1979. We didn’t have anything better. The command line is still the best way to do some types of tasks. Batch jobs, for instance. If I want to rename or delete or copy every file with the extension *.mp3 on my drive, you can bet I don’t want to clik on all 57,291 of those icons. But we are not living in 1979 anymore. The idea that you have to drop to the command line to do anything significant, like install software, is insane. That’s 25 years out of date. Every time I use linux I feel like I’m back in the physics lab with a monochrome screen and an all-uppercase terminal. Linux should come with 8 inch floppy drives and a paper tape reader to boot the 8″ drives. This idea of typing in arcane commands to do everything is nuts. Whoever dreamed that up was drunk or stupid. That may have been fine for 1970, or even 1979, but it’s the 21st century, and let me tell you, I’ve gotten use to installing software by double-clicking it, or installing printers by scrolling down a list and choosing one, or setting up a sound driver by popping in a CD and letting it autoplay and autoinstall. If linux can’t do that, what the hell is it good for? I’m not interested in living in 1979. Been there. Done that. I was using computers then. I don’t want to go back to 1979 and I don’t think any other users do either, except for some linux geeks who seem to love memorizing and typing 59-char-long strings of gobbledygook.
 Mount and umount. What is this? Look, if there’s one thing I hate, it’s being lied to. When a machine tells me DO X AND Y WILL HAPPEN, and I do X and Y doesn’t happen, it’s baseball-bat time. I get lied to enough by people. Just turn on the news from Washington. Ever work for a boss? People lie to you all the time, that’s bad enough. I don’t need to be lied to by my machines. Think about this — how far would you get if your car had a fuel gauge that read HALF FULL when it was actually EMPTY? Your ass would wind up stranded on the freeway in the middle of nowhere. You’d be walking home. Linux does the same thing. Linux lies to me, and it lies to me *constantly*. Linux presents me with a bunch of nice icons of disk drives. But when I click on one, guess what? It’s not mounted! So I can’t write to it! I can’t read from it! This is insane. I know the reasons for this, I understand that in linux everything is treated like a file — I just don’t care. If a hard drive icon shows up on my desktop I should be able to read from it and write to it. If I can’t, don’t show it to me. The idea that you have to MOUNT and UMOUNT something like a CD-ROM drive to read from it is beyond crazy. It’s socipathic. There’s no point to it. If you need to mount and umount in linux, make it transparent to the user. If you can’t make it transparent to the user, then you’re an incompetent programmer and you need to get a real job fixing parking meters or cleaning toilets.
 File permissions. This is intolerable. Look, linux has a long history of running on large computer systems, there are good historical reasons for su and blah blah blah, fine, but there should at least be two basic installs of linux. One in which you don’t have to jerk around with file permissions because you’re THE ONLY USER and another install in which you have the normal infuriating pointless linux file permissions and user/superuser hierarchy and all that headache. The headache stuff is necessary for a computer used by many people, or for a big network. Here’s a news flash: most computers in America are used by one person. Most people with a desktop box in their den do not run a network of 28,000 machines. In fact, I would venture to say that no people with a desktop box in their den _ever_ run a large network. So all this user permission crap is lethal. I got to the point with debian where every time I su’d to do anything I was getting asked my password. I would have to type in my passwrod 50, 70, 80 times a day. Enough. I don’t need that garbage. It’s like going into the kitchen with your wife and having her shout “Who are you? How did you get here?” That’s not an operating system, it’s Alzheimer’s. Within 3 days I got so sick of it I never wanted to see Debian again. Ever. Red Hat wasn’t any better. More su, more demands for my password. Then a couple of weeks went by and the ulimate betrayal, the ultimate slap in the face — I tried to log on and couldn’t remember my password. Here was MY computer in MY house refusing to let ME, the owner, log on. I wiped that linux distro. One thing I won’t tolerate is a machine that refuses to let me use it. Lawn mower doesn’t want to start? Throw it out. Get another one. Computer won’t let me log on? Wipe the hard disk, get another operating system.
The pimple-faced 14-year-olds will be out in force giggling over what a moron I am and how clueleess I am and how I’m not a 1337 haxx0r and a hopeless n00b and [fill in the infantile insult]. I don’t care. I know computers inside and out, I’ve been using ’em since long before there was a Windows or there was a Mac OS, let alone a Mac OS X, and if I can’t get anywhere with linux, no one can. The linux people need to shape up and get some basic stuff done.
First, stop lying to the user. If a drive icon shows up, let ’em read from the drive. That’s basic. if you click print, the goddamn document should print. Don’t lie to the user and tell the user you’re PRINTING and then not print. Second, the linux people have GOT to get a one-click application install working. That’s basic. You’ve already done that with linux installs. (I’m not talking about Gentoo here, Gentoo is an exception.) Red Hat has essentially a once click install. Debian is essentially a one-click install. Ubuntu is a one-click install. Puppy Linux is a zero-click install — Puppy Linux just works with nothing to configure! So if the linux people can do all that with something as complex as an OS install, they’ve G*O*T to be able to get a one-click application install going. It can’t be impossible. Windows does it, the Mac does it, for god’s sake even CP/M did it under GEM back in the day. You want to explain to me why linux is lagging behind CP/M? Third, stop frustrating and blocking the user. If a user needs to do something, don’t EVER give a message like YOU DO NOT HAVE PERMISSION TO ACCESS THIS FILE. Goddammit, it’s my computer and I’m just trying to use it, what the hell’s your problem, linux? Fourth, ditch the command line except for exotic special circumstances. I really have to harp on this one. This bugs me. We got away from DOS allegedly because it was hard to use. I never found it that hard to use, but, the command line did have some big limitations. When it came to graphics programs or music programs or certain types of word processing functions like italicizing a big block of text, I learned to love a GUI in a hurry. Asking a user to go back to the year 1970 in order to use linux is unacceptable. We’re beyond that. Get rid of the command line, it’s over, done, stick a fork in it, the command line is toast. Fifth,
hide the mount and umount crap. I don’t want to deal with mounting anything, not even a horse. I don’t need it, and the OS should be smart enough to realize that if I click on a drive icon, I want to read it or write to it and the computer should do mount it or umount it automatically and transparently. Don’t give me a set of complicated and long-winded and incoherent reasons why you can’t do that. Other computers manage it. When I click on the D: hard drive in Windows, I can move files and read from ’em, when I click on the MY HARD DRIVE icon in Mac OS, ditto. Why can’t linux do that? mount and umount is stupid, it’s pointless, get rid of this mount and umount garbage. And the last is the worst. For single-user dekstop computers there is NO REASON FOR FILE PERMISSIONS. At all. Period. Windows and Mac users and even old CP/M users back in the 1970s didn’t have to jack around with file permission crap. There should be an install on linux that gets rid of this time-wasting frustrating file permission insanity. When it’s a one-user computer on one desktop that’s not part of a big network, file permissions are demented and counterproductive. As a computer user in my own home, I never ever ever want to be told YOU DO NOT HAVE PERMISSION TO [do X]. When I get told that, I shut the computer down and wipe the hard drive and replace the OS with another operating system that doesn’t jerk me around and tell me I can’t do the things I need to do.
Linux has a lot of great features. But the 6 problems above made it unusable for me. Until linux fixes these basic problems, I’m never to go beyond Puppy Linux running from a CD or Knoppix booting off a CD, and those are toy hobby distros. They’re okay for surfing the net, but because you don’t have a big writeable disk with an active filesystem, you can’t do much.