Hacker News new | ask | show | jobs
by gh-throw 1915 days ago
Normal computer users don't understand:

- What a filesystem is.

- How directories, files, and filesystems relate to one another.

- What a server is/does.

- How any kind of raw text whatsoever relates to what the computer "actually is" (the GUI)

- When or how or under what circumstances a program might read a file (say, re-reading a config file)

- What all that prompt noise means.

- Why some things they type on the command line work and why others don't—they don't understand that the things they're running are discrete programs and not somehow built in to the terminal or the OS, and they certainly don't understand the concept of a PATH.

- All kinds of magical bullshit you need to just know (or spend time finding out then internalizing) to use a command line (what the fuck is ".."? Why do I need to put "-" before things seemingly at random, but other times that breaks stuff? Et c., et c.)

- What they can even expect to be able to do on the command line (change permissions on files? Is that a thing you can do? Oh now you're going to need to learn how your OS permissions system works on a lower level than you've ever needed to know before, or else just blindly copy-paste from the Web and hope for the best)

And that list is far from comprehensive.

1 comments

To boot:

In general, many popular unix utilities are cryptically named and they are not holistically designed. Consequently different programs take different flags for the same semantic, or some flags must be prefixed with a single dash and others with two dashes, or some flags are required to be passed in a particular order, or to view the docs for some commands it's `man command` and for others it's a `--help` flag but in all cases they're written for power users, or the fact that gnu utilities don't have the same interface as bsd utilities, etc.

And then there's the hot mess that is bash (or sh or zsh or...)...

I still occasionally stumble on the sequencing of arguments for chmod/chown and I can’t tell you off the top of my head which demands -r or -R. I’ve been doing this for years.
Oof, yeah, I hear you. Also I can never remember useradd vs adduser. That's hardly a scratch on the surface of the issues I have with unix utilities. Which isn't to say that I've seen any operating system with better utilities, but it's not hard to imagine (with the benefit of hindsight) how these might've been better designed.