Hello, I'm a KDE developer. Just wanted to pop in, share a bit of my workflow and say it's cool to see all the love for Plasma here.
Re: CLI:
CLI doesn't have to be as bad as cmd.exe. It's currently not as good as it could be, but it could get there and you can already do much, much better than cmd.exe or bash.
I actually like to combine CLI and GUI in one with Dolphin's terminal panel (Dolphin is KDE's main file manager):
You see all those `cd` (change directory) commands? I'm sure some of you know that from cmd.exe or Linux, but I'm not actually typing those myself! Instead, when I change directories in the GUI, the terminal changes to the directory I'm looking at. Pretty sweet, right? Also, see how my terminal looks fancy? It can do autosuggestions based on command history when I start typing, do completions when I press tab, do syntax highlighting and more. With all that, it's not 100% perfect, but using the CLI is actually a pretty pleasant experience for certain tasks. BTW, the CLI shell I'm using is called Zsh. There are tons of plugins for it, but it's not that nice OOTB. There are newer shells like nushell and elvish out there.
Could a lot of it be replaced with a GUI that does something equivalent? Yes and sometimes the only reason why I use the CLI is because there are no good GUI alternatives. For example, most GUI frontends to Git (source code version control system) have major flaws. There are still advantages to the CLI though.
- Repeating the same tasks over and over is extremely easy. A GUI can't really ever match its efficiency at doing that.
- Unlike GUIs, CLI tools often can be made to work together, allowing you achieve more with fewer programs. Info is often text that can be passed around and modified freely. It would be very difficult to design a GUI ecosystem that works as well with passing around and modifying text.
Ways CLI could be better:
- Better autosuggestions: why not make them context based? Why not make it possible to compose new combinations of commands only with autosuggestions? Think about what your software keyboard does on your phone. It could be like that, but even better because CLI isn't as complex as English.
- Why such a hard divide between CLI and GUI? Dolphin's terminal panel gets a bit closer, but it's still completely separate in every other way. Although, we did recently add the ability to see thumbnails for files when you hover over file names in the terminal!
- CLI and voice commands are not so distant relatives. Not sure if I'd actually want to use it, but I see no reason why you couldn't use voice commands to do what the CLI does.
To be clear, I'm not saying that everyone should just use the CLI and that GUIs don't need improving, just that you shouldn't dismiss the CLI as old and automatically bad. It's still in use for very good reasons and not just because of bad GUIs.