💾 Archived View for splint.rs › guis.gmi captured on 2023-09-08 at 16:29:02. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-06-14)

➡️ Next capture (2023-11-14)

-=-=-=-=-=-=-

GUIs

Anyone using a GUI is clearly being difficult on purpose, and here's why.

Documentation is Impossible

If you want to tell someone how to raise an issue on Gitlab, here's how it's done in the GUI:

1. Find your project

2. Locate the picture on the left which kind-of looks like a card with another card behind it.

3. Find the button at the top which says 'Create Issue' and click on it.

4. Type in the title and body.

5. Click the labels tab, and select each label you want.

On the command line, it's just:

    glab issue create --label UX --title "Hamburger menu makes no sense" --description "Users has no idea what the three lines are supposed to represent."

There's no searching, no interpreting what some designer thought 'configuration' should look like as a picture-concept; it's just words.

What about standard users?

Standard users don't read documentation.

Automation is Impossible

Returning to the Gitlab example, if you want to open multiple issues, you repeat the same process each time, including all steps.

But with the CLI, it's just:

    glab is -t 'Users want hamburger menu back' -d "Studies now say they liked the old way"

We can leave aliases to apply everything.

The Computer Requires Hand-Holding

If you want to start torrents at 3am each day with a GUI, you'll need to be awake at 3am each day, start the torrenting program, then close it in the morning.

The CLI would naturally just use `crontab`, or similar. Or with a little extra scripting, you can start torrenting any time your phone isn't in the house (which probably means you're not in the house).

Every single task you need to do through the GUI is a task which stays with you, on repeat, for as long as it needs done. You will *never* be rid of that menial irritation, and even if it's 'just a couple of clicks', those clicks add up, and you have to remember when to do them.

Discoverability

Nobody wants to discover random things they need to do in a program - they want to discover how to do things they want to do. This means searching options, which means text.

GUIs with great discoverability has a help feature with text-search built-in.

...or with CLI, you can just grep the man pages.

Everything Looks Different

Windows 10 has a hodgepodge of different bar-types within its own system, from the 'Settings' window, to the Control Panel. Linux Desktops often bring things together, but you're still dealing with both GTK and QT apps, each with separate theme configuration.

The terminal, however, it a single interface. There is no 'htop' theme, it's just htop, and it uses the same font, letter size, and everything else as the rest of the system, because you theme things once, and everything follows suit.

They're All Slow

Compare any terminal app to a GUI app doing the same thing, and the CLI works faster 100% of the time. Calendars, email, remote connections, text editors, all of them load, then run, faster than the GUI equivalent.

They Only Work with the Head Attached

CLI apps work on any machine, with or without a monitor - just connect, and go. The moment you get a GUI app, you either need to make sure you're physically connected to the machine, or set up some web-interface to remotely interact with it. And if 3 people need to connect to a machine running a GUI app, you'll need multi-user login support, and the resources to run those three interfaces at the same time.

Once again, the CLI is just 'do as you please', with no faff or setup required.