this post was submitted on 05 Oct 2023
475 points (80.9% liked)

Linux

48668 readers
435 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 37 points 1 year ago (4 children)

I can’t relate at all to the GUI hate. A GUI you can explore. “What does this button do?” “What changes when I enter a value here?”

How does that compare to a command prompt? How would you even start guessing commands?

[–] [email protected] 14 points 1 year ago (1 children)

You can explore a GUI if it's safe to do so. If a user has been burned by easily putting their system into an unrecoverable state, they develop a fear of exploring. "I don't want to change anything; I might break my computer / lose all my work / get a virus!" is a really common fear.

[–] [email protected] 19 points 1 year ago* (last edited 1 year ago) (1 children)

That’s an argument against bad GUI design [Edit:, not GUIs in general]. This can just as easily (if not more easily) happen in CLIs, where a single typo can fuck you up.

[–] [email protected] 2 points 1 year ago
[–] [email protected] 6 points 1 year ago* (last edited 1 year ago)

Not to say this is gospel truth or anything. It's just why I virtually always prefer a command line over a GUI. (Within reason.)

  • GUIs almost always hides/obfuscates/abstracts things that are going on under the hood in a way that text doesn't.
  • Anything I can do from a Bash terminal, I can automate pretty trivially. (Or even just press "up" and then "enter" to quickly redo it a second time.)
  • Pointing devices feel awkward and imprecise for a lot of operations. Pretty great for FPSs. Sometimes a necessary evil for image editing. Slow and sucky for setting a boolean value or putting your text cursor between two specific characters in a paragraph of text.
  • It's good to be able to use a terminal when your GUI's broken or frozen. Ctrl+alt+f2 or if even that doesn't work, ssh in from another box (or your phone).
  • It's a lot easier to paste a Bash one-liner into a chat or text file than describe a series of mouse clicks.
  • You learn a lot using Bash that you don't learn using GUIs. And that can come in handy.
[–] [email protected] 2 points 1 year ago (2 children)

“Guessing commands” isn’t the way to go about it. Read the man pages. Read the help for commands. Read a tutorial or some examples.

[–] [email protected] 11 points 1 year ago (2 children)

That’s exactly my point. You can’t explore a CLI. You need to rely on external resource to first learn how to use it. That’s just not something you can ask of people who want to use computers as tools. When’s the last time you read your car manual?

[–] [email protected] 2 points 1 year ago

Info pages, help and manuals are built into the system and commands. You don't have to leave the shell to read anything. I've also explored it just by pressing a letter or two and then autocomplete. But you realize that average people need help to figure out a GUI too, right?

A car manual is more comparable to learning how to drive in the first place. And yes, sometimes I've consulted the manual to figure out what lights mean or how controls work.

[–] [email protected] 0 points 1 year ago

Sure you can explore a CLI. It's not unlike playing Zork. You can try something, read the response, and try something else. That's how I learned the CLI outside of specific command attributes

[–] [email protected] 6 points 1 year ago (2 children)

that's just extra friction, with UIs you can explore and figure out at a glance roughly what a button will do

[–] [email protected] 1 points 1 year ago

That greatly depends on the button's label

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago)

It's possible to do amazing things with a CLI in seconds that would be minutes of clicking with a GUI - that's why they still exist. And sure, it's tuned towards people who would be "how about I write a Python program to handle this".

[–] [email protected] -4 points 1 year ago* (last edited 1 year ago) (1 children)
$ command -h
$ command --help
$ man command

I have a lot of tab completions installed, too, so i can also just hit tab to get a list of all possible options, etc.

[–] [email protected] 9 points 1 year ago (1 children)

You’re already assuming that command is a valid command. That’s an invalid assumption for an unitiated user. On the other hand, a first-time user can click on icons, or hover over them to find the tool tip. (That name in itself suggests that the GUI should be explored rather than taught.)

[–] [email protected] -2 points 1 year ago

That would be similar to saying you are assuming the user has opened the gui application, not just randomly clicking the desktop.

Of course I'm assuming they already know what application they want to use before exploring its capabilities.