Hacker News new | ask | show | jobs
by amerine 2549 days ago
Same exact feelings bubbled into my head, but as I thought about it, is it really wrong to refer to a cli as archaic today? I posit that that it’s not when discussing application ux/i design.
2 comments

It's archaic for general-purpose computing except for a small subset of tasks which nothing can rival it at.
What do you mean by general purpose computing? I would wager that things like "search a file for a string" or "show the first x lines of the file" count as general purpose and even these simple tasks are easier done on the cli than anywhere else. On windows/macos using the regular guis, you will run into all sorts of problems if the file type is not recognized, you will need to open the entire file in some text editor, click through the interface to find the search feature (or memorize how to use it, which is no different from memorizing the cli command), etc.

Unless you can explicitly enumerate the "small" subset of tasks the cli is simply better at, I don't think that's a valid out. The CLI (specifically, the unix philosophy) is IMO the best platform for general purpose computing. It's the specialized stuff, mostly applications with such a large feature/configuration surface that it would be foolish to try to learn all the commands and arguments, that is best left outside the cli.

General purpose for me tends to be a loose definition of communication /media in any form (web pages, IM, video, photos, games..) either consumption or creation.

CLI works incredibly well for anything related to controling systems (local, web servers), or running any kind of processes at scale (web scraping, photo metadata). Discovery is the biggest problem here, though I do believe it's solvable. If I want to do any one-off task, such as resizing an image, that's incredibly easy to locate and do within the typical operating system GUI, whereas to do it in CLI I'd have to resort to man-pages or search engines to figure out what command to execute.

The inverse is true: there is a small subset of tasks where a GUI can be so good that nothing rivals it (everything that needs the graphical part and has to have a real time feedback).

For everything else CLIs are more consistent, flexible and extendible.

But why not use both? GUIs are amazing for editing a video, command line is amazing. If you want to convert a thousand videos into different formats based on their meta data the CLI will be the only option that doesn’t makes you sit there for a week.

I prefer to think of it as eldritch. It can be difficult to master all it's features, but it's one of the few (pseudo) protocols whose age is actually it's strength.