Hacker News new | ask | show | jobs
by wazoox 4963 days ago
> - No discoverability.

proper command line shells and tools offer auto-completion and inline help.

> - All sorts of opaque dependencies.

Bad or unfinished products is a concept orthogonal with command line. I've had to manually install a particular unspecified version of .NET to get some graphical application to work, for instance.

> - A million minor flaws and bugs.

Again, totally unrelated to CLI. Most applications are barely usable, for instance almost all of professional in-house applications at most companies are abysmal, though graphical.

> - Terrible UI.

Probably a unix program; you shouldn't use Notepad, it doesn't understand any other line end convention than <CR><LF>. Notepad is mostly useless, and there are many valid replacements.

1 comments

> proper command line shells and tools offer auto-completion and inline help.

This is not discoverability. How will it help me figure out curl's command line options? How will it help me not having to remember whether tool X wants "command [files] [options]" or "command [options] [files]" or either? How will it help me reuse something i just ls'ed into vision without having to retype half the path i just typed into that ls command?

> How will it help me figure out curl's command line options?

Try typing "curl", the output (on Ubuntu 12.10) is: "curl: try 'curl --help' or 'curl --manual' for more information"

>How will it help me not having to remember whether tool X wants "command [files] [options]" or "command [options] [files]" or either?

Both are almost always excepted, but command [options] [files] is standard. Also, if you do something wrong, you are often given an explanation as to what you did. Also `command -h` or `man command`.

>How will it help me reuse something i just ls'ed into vision without having to retype half the path i just typed into that ls command?

Up arrow.

Those are trivially found in almost every application via `command --help` or `command /?` or worst case, "man/info command".

I feel like this is a Git conversation from several months ago all over again. The CLI is not magic. You have to invest in learning how to use it. Next we're going to hear about how Java/C#/PHP isn't intuitive or discoverable enough.