Slashdot Mirror


Unix-Haters Handbook Available Online

prostoalex writes "The Unix-Haters Handbook, publication year 1994, is now available online for free as a single PDF file. Apparently some suburban Seattle company has agreed to host this 3.5MB file on its servers. The anti-foreword is written by no other but Dennis Ritchie, who proclaims: 'Here is my metaphor: your book is a pudding stuffed with apposite observations, many well-conceived. Like excrement, it contains enough undigested nuggets of nutrition to sustain life for some. But it is not a tasty pie: it reeks too much of contempt and of envy.'" This is what should happen to more out-of-print books.

40 of 634 comments (clear)

  1. Re:Nothing to do with Microsoft... by anotherone · · Score: 4, Insightful
    Maybe he works with windows because he doesn't like Unix?

    No, that's insane, it must be a conspiracy.

    --
    Username taken, please choose another one.
  2. Re:Windows Hater Book, Entry 1 by Anonymous Coward · · Score: 4, Insightful

    Perhaps, but Mozilla is not a "32-bit multithreaded operating system." If it runs in one called "Windows XP" it acts the same as a "Web Browser" called "Internet Explorer," because its using the same program to render the "pdf file," "Acrobat Reader."

  3. Re:Windows Hater Book, Entry 1 by Narcissus · · Score: 3, Insightful

    I hope you mean in a non-Windows OS, because that's what the parent was referring to: the operating system, not the browser.

    And even if you mean within Windows, then you'd expect it to hang, too, as it's the operating system that has the problem, not the application.

    You're confusing two different things: an application may hang, that's just dodgy code in the application somewhere (which is what you're referring to) but there is no reason for an operating system to hang. That's dodgy code in the OS, and that would affect all applications equally.

  4. Stupid argument by jsse · · Score: 4, Insightful


    The Problem with Hidden Files


    Unix's ls program suppresses file whose name begin with a period (such as .cshrc and .login) by default from directory displays. Attackers exploit this "feature" to hide their system-breaking tools by giving them names that begin with a period. Computer crackers have hidden megabytes of information in unsuspecting user's directories.
    Windows' dir program suppresses file whose are attributed with H (such as...what you see in attrib *.* with H with them) by default from from directory displays. Attackers exploit this "feature" to hide their system-breaking tools by giving them attribute H. Computer crackers have hidden mega bytes of information in unsuspecting user's directories.

    Using file name that contain spaces or control characters is another powerful techniques for hidding files from unsuspecting users. Most trusting users (maybe those who have migrated from the Mac or from MS-Windows) who see a file in their home directory called system who't think twice about it - especially if they can't delete it by typing rm system. "If you can't delete it," they think, "it must be because UNIX was patched to make it so I can't delete this critical system resource."

    Using file names that contain spaces or control characters is another powerful technique for hiding files from unsuspecting users. Most trusting users (maybe those who have migrated from whatever-OS-on-earth) who see a file in their system directory called system.dll won't think twice about it - especially if they can't delete it by typing del system.dll. "If you can't delete it," they think, "it must be because Windows was patched to make it so I can't delete this critical system resource."


    The entire article is stuffed with argument as such. Worth reading only for a laugh.

    1. Re:Stupid argument by tarzan353 · · Score: 2, Insightful

      So if UNIX sucks, and Windows sucks in the same way, then it's alright for UNIX to suck?

    2. Re:Stupid argument by SN74S181 · · Score: 2, Insightful

      The really disappointing thing is that people like you have to come along and say 'well, but look what WINDOWS does!!!' like the world is trapped in an either/or proposition.

      It's not good that so many people treat Unix like a weapon in an anti-Microsoft holy war. That's just lame.

  5. Re:Oh the irony... by MsGeek · · Score: 2, Insightful

    Applescript is still in OSX.

    --
    Knowledge is power. Knowledge shared is power multiplied.
  6. Re:Windows Hater Book, Entry 1 by Zeinfeld · · Score: 4, Insightful
    Hey guys, you are missing something important, when we were running the unix-haters list at the AI lab WindowsNT did not exist, Windows 3.1 was a toy O/S that did not even pretend to be a serious contender.

    Most of the people who were on the haters list were actually VMS and Multics users, or like me they had used so many different O/S and written bits of them that they were in a position to make comparisons.

    UNIX does come off very baddly compared to the other O/S of its era. The command line interpreter is garbage, the documentation abysmal and as for security - Denis Richie effectively invented the buffer overun bug. C was the first computer language that had dynamic memory allocation without dynamic range checking. Today we are unlearning that mistake with Java and C# which both have memory management and memory bounds checking.

    UNIX is unfortunately not the greatest creation of computer science. The fact that so many youngsters look at the pile of offal uncritically is somewhat disappointing.

    However take a read through the security chapter and then ask yourself whether any of the major security flaws in the UNIX architecture was an impediment to its success? If the answer is no then don't bet on the 'security issue' keeping Windows out of the data center for long. That did not work to keep UNIx replacing real O/S like VMS.

    Security is pretty much like the 'character' issue in elections. The candidate that raised the 'character' issue in the last campaign was the recovering alcoholic with an undeclared criminal conviction for DUI, who had been a director of a company with Enron style accounting, had sold shares and illegally failed to report the sales to the SEC - twice, who had dodged the draft by getting his father to pull strings to parachute him into a draft-safe spot in the Texas national guard and then went AWOL for over a year.

    --
    Looking for an Information Security student project suggestion?
    Try http://dotcrimeManifesto.com/
  7. Re:Some very good points... by Anonymous Coward · · Score: 3, Insightful
    It is amazing how much training it takes in UNIX to do something simple in Windows. For example, recursively searching through a subtree for some text in a file.

    It does take some training. If you're just a casual computer user and never intend to go beyond that stage, you might find that annoying. However, let's compare some similar tasks:

    1. Search all files in dir D for the string "car".
      • Windows: Open a search window, browse until you get to "D", type in the text "car", and maybe click a checkbox that says in essence "search contents of files".
      • Unix: find D -type f -print | xargs grep car
    2. Search all files in dir D for the string "car", as a single word on its own (i.e. excluding "cartography", "cartridge", "Decartes", etc.)
      • Windows: can't be done
      • Unix: find D -type f -print | xargs grep -w car
    3. Search all files in dir D for the string "car", and save the result as a text file.
      • Windows: can't be done
      • Unix: find D -type f -print | xargs grep -l car > some-file
    4. Search all files in dir D for the string "car", and put every matching file into an archive.
      • Windows: can't be done
      • Unix: find D -type f -print | xargs grep -l car | cpio -o > /tmp/myarchive.cpio

    I don't want to belabor the point, but this isn't a reason to hate Unix. It's a way that Unix is different and less useful to some while being more useful to others.

  8. Re:Some very good points... by wotevah · · Score: 5, Insightful
    It is amazing how much training it takes in UNIX to do something simple in Windows. For example, recursively searching through a subtree for some text in a file.

    Toddlers might sometimes wonder why people need to learn so many words and learn to speak in complicated phrases, when it seems that all you really need to do is point and cry to get what you want. Then we grow up.

    The power of Unix is that you can use it to do things that its designers did not (nor did they have to) think about. Your example is flawed in its purpose because you will find it increasingly difficult to do tasks the UI people did not anticipate you would need. Such as doing something with those files you found, rename them to .bak or resize the .gifs or whatever. Until someone writes a Visual Basic program to do it and sells it for 29.95.

  9. Re:Great read! by the+gnat · · Score: 4, Insightful

    CLIs in general are *not* intuitive.

    I wouldn't ever claim that they are. I would, however, claim that I can work far faster with a Unix CLI than my Windows coworkers can with their GUI. There will always be exceptions, but I've known many people who found Unix far easier to use once they overcame the initial barrier. I find this usability more important than being intuitive. (By the way, as someone who has always used Macs or Unix systems, I certianly don't find Windows at all intuitve, GUI or no.)

  10. Re:Some very good points... by Qzukk · · Score: 4, Insightful

    Well, we can play tit-for-tat here...

    A) Cryptic Command Names. Still there in Linux

    Sure, there are cryptic commands in Linux, but there are equally cryptic commands in DOS/windows. Start with "dir". Sure, its short for "directory", but imagine someone who has never used a computer before, and they want all the files in a certain place on the computer. Do you think they would ask for a "list" of files? Or a "directory" of files? Once you're in the UI, its not much better. If you use more than one version of windows you'll notice real quick that the File Explorer is completely different from version to version starting with win98 (98 worked like 95's browser with some html extensions)

    B) "Unix was like Homer, handed down as oral wisdom."

    I'll just take a moment to point out that this has been a tried and true method for several millenia now. Your example is pretty moot, since it took several revisions of windows before it could search into the text of files (without buying Microsoft Office and using its Find Fast utility)

    C) Terminal Insanity. Still there in many ways. VT100 pops up its ugly head decades after it should have been killed.

    Have you ever used a UI and wished that someone had added a checkbox for a feature you knew was possible? Added extra blanks in window's Find Files panel/dialog to do boolean searching? Unfortunately, when designing a UI, you're designing the limits of the human's interaction with the system. Someone said "I'll just put one blank there, therefore people can search for only one thing at a time." While the same goes for console user interfaces, things like screen real estate are no longer an issue, the only worry is if the user is willing to type the entire command.

    D) The X-Windows Disaster.

    Do you have a better idea? Something that works portably across many systems? Runs on a thin client over the network? Supports multiple color depths including monochrome? Extensible by modules? Operates transparently locally or remotely?

    Doesn't have a per user licensing restriction? Doesn't use "foundation classes" that change every version of the compiler?

    I hardly call X a disaster, when you consider its goals. I'm sorry you had to use Motif, but nowadays we get to choose from plenty of different widget libraries and languages, and can choose one we like.

    E) Make

    I don't know what you're doing to make using make so hard. Automake is tough, but for a single project, which you dont intend to be porting to other systems, a Makefile containing the targets, the sourcefiles, and the commands to compile each takes about 30-60 seconds of typing per target (especially with copy and paste and variables for compiler options), assuming you know how your source files fit together. If you want to do fancy stuff, buy a book. (See B. Not all wisdom is oral.)

    --
    If I have been able to see further than others, it is because I bought a pair of binoculars.
  11. Re:Windows Hater Book, Entry 1 by malfunct · · Score: 2, Insightful

    I think the reason so many people like linux is that they can't afford and they can't affect the alternatives. Thats the one truely innovative thing (not that I'm convinced I like it) about linux, the license.

    --

    "You can now flame me, I am full of love,"

  12. Re:would care about the /. effect by bluephone · · Score: 2, Insightful

    Umm, you're a twit. The complete URL to the FILE is http://research.microsoft.com/~daniel/uhh.pdf
    Notice the "microsoft.com" part in there. Is it some unwritten rule to comment before knowing your facts?

    --
    jX [ Make everything as simple as possible, but no simpler. - Einstein ]
  13. so, why didn't you do something about it? by g4dget · · Score: 5, Insightful
    Most of the people who were on the haters list were actually VMS and Multics users, or like me they had used so many different O/S and written bits of them that they were in a position to make comparisons.

    I think this is part of the blinders that you and other people had on at the time. You hacked operating systems and because hacking some particular OS was great fun for you, you thought it was great for users. But for users, none of that mattered.

    UNIX does come off very baddly compared to the other O/S of its era.

    Maybe from the point of view of a Multics kernel hacker. From the point of view of a user, it looked pretty sweet in comparison to those aging, messy behemoths.

    [Lack of security] did not work to keep UNIx replacing real O/S like VMS.

    You are confusing the presence of security features with security. VMS had plenty of security features, it just managed to be even less secure than UNIX at the time (a pretty amazing feat).

    Denis Richie effectively invented the buffer overun bug. C was the first computer language that had dynamic memory allocation without dynamic range checking.

    Fortran had dynamic memory allocation, which was widely used (too bad it wasn't standardized) and no bounds checking. So did BCPL. So did many Pascal compilers (and not all Pascal compilers offered bounds checking). So, for that matter, did assembly language.

    UNIX is unfortunately not the greatest creation of computer science. The fact that so many youngsters look at the pile of offal uncritically is somewhat disappointing.

    The whole UHH book, as well as your posting, reek of arrogance and ignorance. Do you really think people who chose UNIX at the time weren't aware of the problems that the UHH points out? They (myself included) chose UNIX nevertheless because, in the end, it was still better for getting real work done than the alternatives.

    What the world could have used was some rolling-up of sleeves and efforts to do better, either by bringing those fabulous other systems to workstation-class hardware, or by at least porting over bits and pieces of them (shells, programming languages, etc.). But, in the end, your emperor had no clothes: while people like you whined and complaied a lot, when it came down to it, you apparently really didn't know how to do any better.

    1. Re:so, why didn't you do something about it? by Anonymous Coward · · Score: 1, Insightful

      The whole UHH book, as well as your posting, reek of arrogance and ignorance. Do you really think people who chose UNIX at the time weren't aware of the problems that the UHH points out? They (myself included) chose UNIX nevertheless because, in the end, it was still better for getting real work done than the alternatives.

      Sort of like people chose Windows now, because it is now better for getting real work done than the alternatives, right ?

    2. Re:so, why didn't you do something about it? by Anonymous Coward · · Score: 2, Insightful
      Sort of like people chose Windows now, because it is now better for getting real work done than the alternatives, right ?
      Yeah, right. The only reason I use Windows (Win95c) is because my PII-266 is just barely too wimpy to run XFree86 at Windows' GUI speeds. I would've played around with it more, but I only have the one computer, and the CD-ROM broke soon after I installed Redhat this last time and I have no cash to replace it--I'm stuck with what I've got for now, and I can't afford to spend a day without a computer fixing a LILO problem with no CD-ROM to reinstall with. Mind you, I'm working on a second PC now, and it's not going to run Windows at all. Furthermore, I would say that 80% of what I do on my computer is through Cygwin. If I'd had more cash, I would've had a dedicated Linux computer years ago.

      What do you call real work, anyway? Displaying slides with powerpoint? Use latex and build them using the slides document class. You'll end up with a PDF that you can run on any machine. Writing code? Give me a break, use cat and ctrl+d or vim. Can you even compile something on Windows by default without having to buy an extra compiler or install Cygwin? About the only real use Windows has on modern computers is using some SSH program to hook into a Unix or Linux machine to do real work, and that doesn't even work right sometimes because Windows periodically crashes itself.

      Try disabling virtual memory in Windows some day. You know what it does? It fucking freezes when it hits the memory barrier...how's that for an unchecked buffer. Now shut virtual memory back on. Do you have any idea how it works, other than ``it uses the hard drive to store memory pages''? Here's how it works: it uses hard drive space until it doesn't have anymore left, then it offers to empty your recycle bin for 16KB of space. My personal belief is that it doesn't ever free memory pages. That way you can guarantee a reboot every couple of days when it bumps up against virtual memory barriers, and Windows _right_ after a reboot works ok. Ever made a FAT32 partition larger than 2GB? 4GB? 8GB? There are two different types of FAT32 partitions as told by fdisk, and they aren't documented anywhere. Make a partition about 18GB large and put about 5GB of files in it. Right click on a deep folder and hit properties. The filesize count will roll over when it gets to be about 4GB.

      Windows has so many issues with it that it won't ever be used for ``real work,'' and Microsoft will eventually run out of new computer users to win over with advertising.
    3. Re:so, why didn't you do something about it? by Billly+Gates · · Score: 4, Insightful
      Goody! Old 1980's flameware predicted.....Puting up my lawn chair and expecting a great show.

      I am so sick of the modern VIM vs Emacs flamewars.

      I remember reading the book when I was first learning Linux. Linux was very hard and awkward at first. Especially back then in 97. A simple concept as a sdk meaning just a compiler and not an ide was strange and a negative for me. Now I laugh at this. I did not understand the concept of using an editor and using a compiler to turn it into code. This was because I was brainwashed with Windows. I understand the weaknesses now of this thinking.

      The arguments about Unix are old in this book and lot of them base it on the"Unix is so hard and broken..." phases.

      Well I have never used VMS so please excuse my ignorance but doesn't VMS have like 200 options just for the set command?

      Isn't VMS also written in C?

      Didn't unix come out first and of course be behind?

      Doesn't Linux/Unix today have journaling filesystems, raw i/o, clustering, smp support, etc that VMS advocates claimed that only there OS had?

      Also does VMS have the everything is a file metaphore like Unix? If not then its a disadvantage to adminster.

      VMS also suffers from X because its the only gui that is standard like Unix. It really sucks and I chuckled at that section. With modern hardware today its somewhat bareable.

      Linux has changed and its alot easier to use.

      For hacking and customizing its the best available. The Windows registry blows and I can not customize Windows like i can with Linux.

      I remember posting a very old post here back in the 20th century before kde was even stable.I stated that unix commands were designed due to limited hardware and offered no real advantage over gui's. They are more powerfull and barely needed for regular desktop use today. I was wrong and the desktop is also here finally for those who fear the CLI.

      As far as I can tell the disadvantages are gone and no other os is as easy to both use as well as hack and customize as Linux/Unix.

    4. Re:so, why didn't you do something about it? by chamenos · · Score: 2, Insightful

      that's like saying volkswagons are lousy because the volkswagon beetle is so outdated. i understand you only have windows 95 to base your conclusions on, but a more fair comparison would be to use windows XP. i've left a computer which runs windows XP for a few weeks at a time without any problems, encoding divx movies and windows XP uses NTFS, not FAT.

    5. Re:so, why didn't you do something about it? by aurelian · · Score: 2, Insightful
      What do you call real work, anyway? Displaying slides with powerpoint? Use latex and build them using the slides document class.

      Have you ever actually tried doing that? I did once. Using scissors and glue and photocopying onto acetate was actually more efficient.

    6. Re:so, why didn't you do something about it? by Zeinfeld · · Score: 2, Insightful
      Well I have never used VMS so please excuse my ignorance but doesn't VMS have like 200 options just for the set command?

      I don't remember that being the case. I certainly remember extensive issues in Unix trying to set environment variables and shell variables and finding that each of the different shells seemed to treat what is a pretty simple concept entirely differently.

      At least in VMS you could always ask for HELP. In Unix you can't even consult the manual until you pretty much know what you are looking for.

      Isn't VMS also written in C?

      No, VMS predates C becoming a mainstream language. VMS is written mostly in Bliss32. There are parts of the O/S written in every one of the VAX supported languages however. The engineers apparently did this to ensure that DEC had to ship the runtime for every language with the o/S.

      Didn't unix come out first and of course be behind?

      Not really, the very first version of UNIX did come out before VMS, however there was no significant use of UNIX until the BSD release which was developed on a VAX which had originally shiped with VMS loaded.

      Also does VMS have the everything is a file metaphore like Unix? If not then its a disadvantage to adminster.

      No, VMS does not make that mistake. Things that are not usefully described as files are not represented as files.

      As far as I can tell the disadvantages are gone and no other os is as easy to both use as well as hack and customize as Linux/Unix.

      But as you yourself admit, you have no knowledge of the alternatives so how can you claim to have an informed opinion?

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
  14. macho bullshit attitude by dh003i · · Score: 4, Insightful

    The comment of one macho veteran Slashdotter have so annoyed me that I think it deserves being a main-comment for criticism:

    There are no such things as "rm disasters". There are only mistakes, stop making them, or at least think before you execute.

    Exactly the kind of bullshit macho attitude I was talking about.

    Why don't you try doing that if you're a car company, and sell a car that can so easily be fucked up? Oh, yea, instead of having an out of-the-way hard break lever, we put a hard-break button right next to the defog button...but don't fucking bitch at us if you accidentally press the hard-break button (which is right next to the defog button) when trying to defog your windows, and your car spins around and crashes on an icy road.

    Does that kind of bullshit macho attitude apply for companies making airplanes? When people making airplaies discovered that slats switches were being turned on accidentally, did they say:

    "Yea, so what the slats extention switch can be accidentally turned on by an unintentional movement, possibly causing passenter-injury. Tell the pilots to be more careful and not fuck up."

    No, they didn't. They said,

    "Ok, so this is a problem. Why don't we cover the slats switch with a spherical clear cover that has to be unhinged before extending slats -- that way, they won't get extended at 500mph and cause the plane to trolly."

    Just because many of these problems are socialogical not technological doesn't mean they're not problems. People are not robots. People fuck up -- quite a bit actually. To you perfect people writing a reply to this boldly telling me that people shouldn't "fuck up", how many times did you have to use backspace in writing that response?

    1. Re:macho bullshit attitude by dh003i · · Score: 2, Insightful

      There may not be any room for it -- but it *still* happens. Period. End of discussion. It's a statistical certainty. Even among sys admin root-users as nearly-perfect as (apparently) yourself will eventually fuck up. It is a statistical *certainty*.

      Also, you seem to assume htat user's individual documents aren't important. Well, they are. And individual users certainly aren't as perfect as you.

      When making something, it is simply *bad engineering* to not consider social phenomena. Technically, there would be nothing wrong with a monitor 40 inches wide and 5 inches high. But the monitor is still fucked up crappy design, because people do not have such a wide field of vision.

      I'd really like to see you design airplaines. Maybe fighter planes. Just to make sure pilots are *extra careful*, the button for "drop bombs" should be right next to the button for "lower landing-gear". So what if they blow up the runway, right. Pilots are supposed to be perfect and should *not* fuck up.

  15. Bullshit macho attitude by dh003i · · Score: 2, Insightful

    The comment of one macho veteran Slashdotter have so annoyed me that I think it deserves being a main-comment for criticism:

    There are no such things as "rm disasters". There are only mistakes, stop making them, or at least think before you execute.

    Exactly the kind of bullshit macho attitude I was talking about.

    Why don't you try doing that if you're a car company, and sell a car that can so easily be fucked up? Oh, yea, instead of having an out of-the-way hard break lever, we put a hard-break button right next to the defog button...but don't fucking bitch at us if you accidentally press the hard-break button (which is right next to the defog button) when trying to defog your windows, and your car spins around and crashes on an icy road.

    Does that kind of bullshit macho attitude apply for companies making airplanes? When people making airplaies discovered that slats switches were being turned on accidentally, did they say:

    "Yea, so what the slats extention switch can be accidentally turned on by an unintentional movement, possibly causing passenter-injury. Tell the pilots to be more careful and not fuck up."

    No, they didn't. They said,

    "Ok, so this is a problem. Why don't we cover the slats switch with a spherical clear cover that has to be unhinged before extending slats -- that way, they won't get extended at 500mph and cause the plane to trolly."

    Just because many of these problems are socialogical not technological doesn't mean they're not problems. People are not robots. People fuck up -- quite a bit actually. To you perfect people writing a reply to this boldly telling me that people shouldn't "fuck up", how many times did you have to use backspace in writing that response?

    1. Re:Bullshit macho attitude by I_redwolf · · Score: 1, Insightful

      Sadly, there are no such things as rm disasters. You are blurring the distinction between the operation of a computer. If you give the computer a command it should execute it. "rm -rf /" is a command and simply the computer executes it. If you want the computer to ask you before it removes a file I believe "rm -i" is pretty much standard nowadays. User error is user error and not the computers fault, you are free to add checks but it doesn't make the statement made any less true.

      As for your comparisons and correlations, those usually don't make sense in the way you describe them simply because Unix or what your mentality of Unix is; isn't what it is. It's cryptic, and difficult to use for a reason, again; you are free to change this but you shouldn't act in a rage of fury because simply in this case you disagree with someones comment about what boils down to a safelock user error check. Not only that but it's already been adressed.

    2. Re:Bullshit macho attitude by dh003i · · Score: 2, Insightful

      you give the computer a command it should execute it.

      No. The purpose of the computer should be to on average allow the user to get work done as fast as possible. If -- because the computer stupidly executed a destructive typo -- it destroys a days worth of work, it has completely defeated it's purpose: to allow work to be done faster. Part of the way to resolve this is simply to have more intelligent command-line options. Command line options that perform destructive tasks should use letters that are *physically* *far* appart from the letters used to invoke harmless command-line options.

      How often is someone going to 'rm -rf /"? Not very often at all. (in fact, in such a scenario, it would probably be more intelligent to simply reformat that partition). But, in 9/10 times where someone types 'rm -rf /boot', they really meant to type 'rm -rf ./boot'. Period. Now, wouldn't it make sense to have some way of specifying directories that you *don't* want to delete recursively, and prompting the rm-command to prompt hte user "are you sure" for such important directories? Also, libtrash as a default library to intercept such destructive commands and move things to a trashcan would be good

      User error is user error and not the computers fault, you are free to add checks but it doesn't make the statement made any less true.

      Correct. A truly careless user will tend to fuck things up, even if you prompt him "really want to recursively delete entire home directory?" (shorter is better...the longer a message, the less likely the user will read it). However, you can at least put a speedbump along the road to oblivion. It might actually stop a semi-conscious user from deleting all their important info, and save them time. This is good.

      Why? Because the best program that allows the user to get his/her job done the fastest. A program that increases the likelihood that the user will spend 5-10 minutes finding backups and restoring information is bad. Bad, because those 5-10 minutes are wasted. Then the user is pissed off. And his concentration is broken. Odds are, the rest of that users day are going to be unproductive. See "Joel on Software".

      cryptic, and difficult to use for a reason

      What reason would that be? So raving technocrats can scream, "RTFM, bitch whore!"? The GNU/Linux command line is like it is to allow for enormous power, allowing users to do things the program-creators never conceived of. That end-goal does not require that it be so easy for users to shoot themselves in the foot because they were a little bit sleepy one day.

    3. Re:Bullshit macho attitude by I_redwolf · · Score: 1, Insightful

      No. The purpose of the computer should be to on average allow the user to get work done as fast as possible. If -- because the computer stupidly executed a destructive typo -- it destroys a days worth of work, it has completely defeated it's purpose: to allow work to be done faster.

      So what you're saying is that the computer shouldn't respond to a command giving to it? You use the word "stupidly" as if the computer can think; until quantum mechanics/physics and energy become everyday run of the mill topics saying something like "because the computer stupidly executed a destructive typo" is a silly statement. The computer didn't make you press the enter key or even thought of inputting a command that would effectively destroy itself. It was the user who stupidly entered that command and the computer will execute it.

      Part of the way to resolve this is simply to have more intelligent command-line options. Command line options that perform destructive tasks should use letters that are *physically* *far* appart from the letters used to invoke harmless command-line options.

      That sounds interesting to me, but then that also defeats your earlier statement that computers should work faster for the user. Not only that but that's not going to exactly prevent someone from typing a destructive command. "rm" is a destructive command but by itself it does nothing, if you changed that to "~z" and someone typed "~z -rf /" it'd perform the same functionality and sadly the same destruction of ones / partition.

      How often is someone going to 'rm -rf /"? Not very often at all. (in fact, in such a scenario, it would probably be more intelligent to simply reformat that partition). But, in 9/10 times where someone types 'rm -rf /boot', they really meant to type 'rm -rf ./boot'. Period. Now, wouldn't it make sense to have some way of specifying directories that you *don't* want to delete recursively, and prompting the rm-command to prompt hte user "are you sure" for such important directories? Also, libtrash as a default library to intercept such destructive commands and move things to a trashcan would be good

      Yes that would make sense and it wouldn't affect the functionality of rm much. Good idea, you should now take that idea and extend the functionality of "rm" to include an index feature using a simple text file.

      Correct. A truly careless user will tend to fuck things up, even if you prompt him "really want to recursively delete entire home directory?" (shorter is better...the longer a message, the less likely the user will read it). However, you can at least put a speedbump along the road to oblivion. It might actually stop a semi-conscious user from deleting all their important info, and save them time. This is good.

      Right that's why "rm -i" exist. "Request confirmation before attempting to remove each file, regardless of the file's permissions, or whether or not the standard input device is a terminal. The -i option overrides any previous -f options."

      Because the best program that allows the user to get his/her job done the fastest. A program that increases the likelihood that the user will spend 5-10 minutes finding backups and restoring information is bad. Bad, because those 5-10 minutes are wasted. Then the user is pissed off. And his concentration is broken. Odds are, the rest of that users day are going to be unproductive. See "Joel on Software".

      "rm" doesn't exactly inhibit the operational time of a user getting their work done. The user does that themselves by using a command like "rm -rf /" when they didn't intend for such operation. If they've typed that without realizing then the user's concentration has already been broken and odds are that they were already being a danger to themselves and others in such an environment especially with root. That's why everyone always recommends use root sparingly and when you do be careful.

    4. Re:Bullshit macho attitude by DunbarTheInept · · Score: 4, Insightful


      How often is someone going to 'rm -rf /"?

      I do it a lot.

      But that's because I use chroot a lot ;-)

      But as is always my policy when doing large rm's, I begin with an ls of the same arguments first so that I can see what it will delete, then arrow-up to the command again and change the 'ls' to 'rm' to do it for real.


      Correct. A truly careless user will tend to fuck things up, even if you prompt him "really want to recursively delete entire home directory?" (shorter is better...the longer a message, the less likely the user will read it). However, you can at least put a speedbump along the road to oblivion. It might actually stop a semi-conscious user from deleting all their important info, and save them time. This is good.

      The "are you sure y/n" method is ONLY useful if it is an uncommon message. If you are always prompted for each and every time you attempt to use the command, then automatically saying "yes" becomes part of your automatic unthinking processes, and it doesn't help matters to have the message there. It has to be a message that when it appears indicates something DIFFERENT from normal is happening. For this reason I never bother with aliasing "rm" to "rm -i" like a lot of people do. It's a useless step that just trains you to hold down the 'y' key after doing an 'rm' command.

      --

      Don't label something "offtopic" unless you know the topic well enough to tell what's on topic.

  16. Re:Great read! by Anonymous Coward · · Score: 1, Insightful

    What CLI's are not good for is general file management

    That's funny, seeing as most file management by any data center or anyone dealing with alot of files is done via CLI. It's a pretty well known fact that when you're moving data around your system, especially on a Unix system a GUI file navigator is useless especially with a high volume of files. Sorting, moving, deleting, searching within, etc, etc ,etc.

    Feel free to walk into a highly redundant data center that deals with large volumes of files someday. Or talk to any system administrator worth his weight in diamond.

  17. Re:unix lovers/haters commands by QuMa · · Score: 2, Insightful

    - find . -name test.txt (why not just allow 'find test.txt')

    Because that'd be ambigious. That could mean both find all files in test.txt, or as you wanted find files with name test.txt. Making behaviour like that depend on what's on disk is generally a very bad idea. If you use it a lot, put "alias fi='find . -name'" in your shells rc-file.

  18. Re:Some very good points... by RzUpAnmsCwrds · · Score: 2, Insightful

    That's why a major new feature in Windows Server 2003 was a much-improved set of command-line tools.

    That, and XML configuration files for IIS.

    Windows is no longer a joke. Don't laugh at it.

    The Linux community laughed at Windows for the past five years. In that time, it went from a joke to a serious contender.

  19. Re:Ironic by DunbarTheInept · · Score: 4, Insightful

    No. The unix culture is that if you make the underlying tools simple and generic, you can build better high end tools on top of them than if you just target the high end first and ignore the many layers between that and the hardware. By putting a different user interface on top of unix, Apple is very much legitimizing the unix culture (and admitting that their previous OS'es had unfixable design flaws inside.)

    --

    Don't label something "offtopic" unless you know the topic well enough to tell what's on topic.

  20. Re:Windows Hater Book, Entry 1 by voodoo1man · · Score: 2, Insightful
    "The reason so many people prefer Linux (or other UNIXes) to Windows is the UNIX design philosophies, the rich history, and the community spirit."
    Maybe you should look beyond your closest social circle to see why "so many" people prefer Unix to Windows. Many (like me) are forced into it because Windows doesn't work, and Unix is the only other thing that comes close to working (and then it's only two and a half flavors that do). How many other operating systems are there that feature decent network support, a graphical interface, and a decade's worth of drivers for pc hardware? Even Macs ship with essentially NeXTSTEP nowadays.

    As far as design philosophies go, read The Design and Implementation of the 4.3BSD UNIX Operating System. I really wish I had the Unix Haters barf bag when I did. I don't know anyone who prefers technical products on the base of their "rich history." Maybe it's because I live in Calgary, but the Unix "community spirit" is certainly not something I want to identify myself with too closely.

    --

    In the great CONS chain of life, you can either be the CAR or be in the CDR.

  21. Re:A HOWTO on fixing Unix's user interface by Anonymous Coward · · Score: 2, Insightful

    At the time, Lisp machines were very real, produced by several vendors, and extremely well-designed in all aspects of the user experience. They were also very expensive, falling behind in the exponential performance race, and the user had to actually agree with the design principles or curse and fight the machine. But one would do well to study them, just as an example of how the best engineering can fail in the marketplace.

  22. Re:pretty funny by black+mariah · · Score: 2, Insightful

    Obviously, these people had no idea either how to use UNIX or who was using UNIX and why.

    Actually, I think they could all use UNIX perfectly and were making a rather humorous point. Or I could be missing something.

    --
    'Standards' in computing only impress those who are impressed by things like 'standards'.
  23. Re:Go Figure by Darth · · Score: 4, Insightful

    He uses windows NT to connect to a Plan 9 server. The Plan 9 server is where the work is happening. his NT server is mostly a gui terminal.

    Also, he's in management now. He needs the NT box so he can read all the microsoft format documents he has to interact with for work.

    he mentions these things on the link you, posted. Were you being intentionally misleading, or did you just not read it?

    --
    Darth --
    Nil Mortifi, Sine Lucre
  24. Re:Some very good points... by iion_tichy · · Score: 2, Insightful

    However, in Unix or Linux it takes some serious dedication to even find some of the fucking tools, much less understand how they're applied

    Doesn't it all boil down to what you are used to? Watch a not so Computer literate person use windows, and think again if it is really as easy to use as you are taking for granted? We tend to forget that we accumulated our knowledge over years. Only recently I switched a friends screen refresh rate from flickering 60Hz to 85Hz - for me it was dead simple, just right click the screen, but how the heck is a normal user ever supposed to get that idea?
    I think it's possible to use Linux with quite few commands on a similiar level as Windows - all you need is cp, mv, ls, cd?
    It also seems to me that the documentation problem has become much less of an issue with the internet around. If it isn't in the man pages, try Google. I still prefer man pages over the windows help system for dummies, which doesn't even give you an idea of what is going on.

  25. Re:Windows Hater Book, Entry 1 by nathanh · · Score: 4, Insightful
    Thats the one truely innovative thing (not that I'm convinced I like it) about linux, the license.

    I couldn't care less for "innovative" features. I'd just be happy with something that works. This whole freaking "innovation" hoobah was invented by the lawyers in the Microsoft antitrust case and as far as I'm concerned it can stay there.

  26. Re:Some very good points... by Alomex · · Score: 2, Insightful

    That's the nice thing about Unix, if you don't like something you can fix it:

    but you see, my job as a user shouldn't be to fix the operating system.

  27. Re:Some very good points... by Alomex · · Score: 2, Insightful

    Sure you adjust the car seat and the mirrors, you don't adjust the carburator and the timing belt. IMHO the default state of most *nix is to require the novice user to adjust down the carburator from "race mode" to "learning how to operate". If you think about it, these users are the ones that are less qualified to make the choice.