Live data from Hacker News

You Don't Need a GUI

github.com

71–80 of 439 posts

Re: You Don't Need a GUI

#71
post #58

Once learned the GUI actions are impossible to forget. Being away from the computer for two weeks will make you forget 80% of the CLI commands from the author's list. The reason is simple: the brain can associate the GUI actions to many concepts from the real world. CLI concepts exist on computers and nowhere else. That knowledge is too abstract and too expensive to be kept unused in our brain's cache non-stop.

It used to be the case. These days I find that online GUIs (but not only) change every few days completely messing up any muscle memory.

Operating systems are fairly stable and consistent wrt to UI when it comes to stuff like from the author's list.

Re: You Don't Need a GUI

#72
post #33

Earlier quoted context omitted.

No kidding. I laughed at this part: "STOP DOUBLE CLICKING ON A FILE " "Instead type '$ xdg-open file'" Yeah, because that's way faster and more convenient than double clicking on an icon. This one is great too: Don't open the file explorer! Instead you should type "find . -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'" Seriously?

Yeah, because that's way faster and more convenient than double clicking on an icon. It is if you happen to have both hands on the keyboard. That said, I usually navigate a GUI file explorer using the keyboard too, so pressing Enter to open a file is even faster. (This comment was submitted entirely using the keyboard.)

Even if you move your hands (gasp) off the keyboard to the trackpad or the mouse that is presumably very close by, typing that command is probably not faster and more convenient than double-clicking.

Re: You Don't Need a GUI

#73
I am confused if this article is serious or a subtle kind sarcasm aimed at bash. I'll assume its serious for the purpose of this reply.

> "they often require more resources"

I never had any resource issues with a file system manager, even on really old hardware. This line in particular feels very old school and nostalgic. Sometimes glitches happen if you're browsing a really large folder (thousands of files, very rare), but waiting a few minutes or using the filter textbox or switching to detail view (no thumbnails) usually takes care of it.

As a side note, the example is that of a Xerox station, and those were beasts of a machine back then with very expensive and powerful hardware specifically to demonstrate how powerful and fast GUI can be. Perhaps a gif of Pentium IV machine running Windows Vista would have been more reflective of what the author is talking about (sadly, those did actually exist back in the day, mostly running pirated copies of Windows Vista Ultimate).

> "are less powerful"

All the examples provided can be done with a single click on the UI. Granted the CLI can do more, but there isn't any example in this list of that nature. Even then, there are 3rd party plugins to any OS file manager that can do pretty much anything that isn't natively supported, at least for any major OS distributions.

> "automate via scripting"

I agree, albeit on Linux "dotnet run" [1] makes so much more sense over the bash code mentioned here, at least for anything that isn't a single one-off operation.

The File [2] class is an excellent example that makes for code that's readable even for someone who doesn't know anything about computers.

You can even do "dotnet run" on straight code, without having a file to execute. Of course aliasing it is the way to go if you'll do it regularly (dr? dnr? just d or just n?).

[1] https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-ru...

[2] https://docs.microsoft.com/en-us/dotnet/api/system.io.file?v...

Re: You Don't Need a GUI

#74

You need a GUI. The user experience of GUIs are superior to CLIs in discoverability, consistency, etc... The only reason CLIs are still useful is because we still haven’t found a way to compose GUI applications well. We still can’t automate GUI applications, use the result of one app from another app etc... But that’s not something inherent to the GUI paradigm.

You absolutely can automate GUI applications. The Mac had AppleScript and the Amiga had ARexx back in the late 1980s. Even iOS, which a lot of people think of as very obstinately non-scriptable/customizable, can automate a surprising amount of stuff using Shortcuts. What you need, as cle mentioned in another reply, is a way to decouple the data and core operations from presentation -- to wit, for applications to provide AppleScript "dictionaries," ARexx "ports," Shortcut "actions," or the like.

If you mean you can't automate a GUI entirely within a GUI paradigm, then you're closer to the truth, although Shortcuts -- and the third-party Mac utility Keyboard Maestro[1] -- are at least blurring the lines there.

Re: You Don't Need a GUI

#75
post #58

Once learned the GUI actions are impossible to forget. Being away from the computer for two weeks will make you forget 80% of the CLI commands from the author's list. The reason is simple: the brain can associate the GUI actions to many concepts from the real world. CLI concepts exist on computers and nowhere else. That knowledge is too abstract and too expensive to be kept unused in our brain's cache non-stop.

Terminals have history. Or if you are working locally, just put the command in a script and name it something more memorable.

GUI layouts get moved around so you have to relearn where options are. In some cases, options get removed entirely in the name of 'user friendliness', whereas nobody's going to do that with CLI options.

I used to think I knew the Firefox layout (I've used it for more than 15 years), but now it takes longer to find things than what it used to.

Re: You Don't Need a GUI

#76
post #67
post #60

Earlier quoted context omitted.

That seems like a poor rule. As a dev and systems engineer those shortcuts are codified in my head, but I've noticed other devs won't even know simple ones. I've taken months off and not forgotten them. GUIs change, get deprecated, can vary by medium etc... so the same can be said for them. Generally, whether I'm making a CLI or a GUI, I establish contracts for display, input, and output. This at least allows for som…

I struggle with memorizing CLI commands' parameters and special characters. This happens with git commands too and I use them all the time. Something like CLI autocomplete would be awesome.

Fish can autocomplete Git commands; no configuration is necessary. It generally has friendy defaults unlike Bash.

Re: You Don't Need a GUI

#77

You need a GUI. The user experience of GUIs are superior to CLIs in discoverability, consistency, etc... The only reason CLIs are still useful is because we still haven’t found a way to compose GUI applications well. We still can’t automate GUI applications, use the result of one app from another app etc... But that’s not something inherent to the GUI paradigm.

You absolutely can automate GUI applications. The Mac had AppleScript and the Amiga had ARexx back in the late 1980s. Even iOS, which a lot of people think of as very obstinately non-scriptable/customizable, can automate a surprising amount of stuff using Shortcuts. What you need, as cle mentioned in another reply, is a way to decouple the data and core operations from presentation -- to wit, for applications to prov…

Mac still has AppleScript, and for the past several years you can write Javascript (JXA) to achieve the same goals, with an extremely similar interface but a less-insane syntax

Re: You Don't Need a GUI

#78

Earlier quoted context omitted.

> I can right-click to see everything that can be done with the file, including some third party programs Smart move by (for instance) Microsoft when they did that in Windows 95 and continued it til now. You could theoretically design the same functionality into a text user interface. Like if you type the name of something (a filename) and hit enter (or maybe tab? space? Whatever the designer comes up with) it could…

> Like if you type the name of something (a filename) and hit enter (or maybe tab? space? Whatever the designer comes up with) How about: $ file --help | grep util -u, --utils output utilities related to FILE $ file -u index.html index.html: HTML document, ASCII text, with very long lines cat index.html ed index.html lynx index.html

I meant like

index.html

And you’d get open, copy, rename, create symlink, delete, compress, etc.

Re: You Don't Need a GUI

#79
post #70

Earlier quoted context omitted.

Being away from the computer for two weeks will make you forget 80% of the CLI commands from the author's list. As someone who uses both GUI and CLI, and has taken month-long travels where I don't use a computer at all, I don't think this is true, at least for me. CLI is like a language; once you've really learned, it takes a long time to forget.

Yeah, like a language. However if I ommit a commmmma or mispel or abbreviate smth you'll still be able to understand me. A computer on the other hand...

Thankfully while computers are indeed picky about typos, they also gladly guess, complete and validate what you're trying to tell them if you ask politely (a.k.a. banging repeatedly on the tab key).

Re: You Don't Need a GUI

#80
Alfred[1] (Mac app) w/It’s ‘Power Pack’ add-on gives you a clipboard history manager, text expansion, launcher and more. Very power. You can even navigate your file system, copy, move files... Easily the most crucial piece to my setup and keeping my hands on the keyboard. It’s been a solid app for a very long time.

[1]: https://www.alfredapp.com/

Post reply on HN