I have a good example of “both are useful” on my second screen right now, but it’s a difference in output and not input. I was watching system resource utilization a few minutes ago while running something, so I have plasma’s graphical System Monitor on half the screen while I have a big ole terminal window with htop running next to it.
The GUI side uses the speed and bandwitdth of our visual processing to communicate complex historical data about a handful of values very quickly. It does it with graphs that, while accurate and to scale, are a bit analog and imprecise feeling to the eye.
The text-based side uses the speed and bandwidth of the hardware to show me a huge 2D array of values that constantly updates. It does it with monospaced text in a high-readability font that is very clear and precise.
The GUI does more processing on the computer first to communicate quickly about the targeted values, while the text side leaves more of that processing to be done on my end. But that’s not a negative, because I can search through those hundreds of values as quickly as my eyes can dart around the screen. There’s no navigating a GUI that quickly.
In general when it comes to GUI vs CLI, I like GUIs too. I am just old enough that I remember how awesome it was to start using graphical desktops and file managers and computer mice and all that. But I’m an engineer who uses the terminal every single day, and I often just leave it open when I’m at work with a bunch of monitors. To me, any decent computer must have a powerful CLI and text-based configuration and scripting and all that.
For most USERs, the GUI is all that matters. And since the GUI needs to be simple and rock solid, it can be advantageous to just leave the arcane shit in the text files and not try to cram everything into the GUI. If I want to change my screen resolution, system fonts, or change my network connection, I expect to find that in the GUI and I’ll just go there. But when I want to be the dork customizing the colors on my GRUB screen or tweaking the swap/cache behavior of my OS, I’m quite glad to edit text for those.
That’s really it. Some things need the bandwidth of visual processing, but others are more efficient at the lower, more specific bandwidth of a CLI. Think of drawing a picture. You could do it with a CLI. Lord knows I’ve figured out how to do it to process image uploads. But unless you’re doing it over and over again it’s way easier to use a GUI to do it.
Then again, if you have to rename an arbitrary number of files to a specific convention you want the ability to automate it, and with that many bits flowing - imagine the bandwidth of a 8.29 million pixels, each with 250,000 colors - it’s really difficult to pick which bits in the stream to flip.
I have a good example of “both are useful” on my second screen right now, but it’s a difference in output and not input. I was watching system resource utilization a few minutes ago while running something, so I have plasma’s graphical System Monitor on half the screen while I have a big ole terminal window with htop running next to it.
The GUI side uses the speed and bandwitdth of our visual processing to communicate complex historical data about a handful of values very quickly. It does it with graphs that, while accurate and to scale, are a bit analog and imprecise feeling to the eye.
The text-based side uses the speed and bandwidth of the hardware to show me a huge 2D array of values that constantly updates. It does it with monospaced text in a high-readability font that is very clear and precise.
The GUI does more processing on the computer first to communicate quickly about the targeted values, while the text side leaves more of that processing to be done on my end. But that’s not a negative, because I can search through those hundreds of values as quickly as my eyes can dart around the screen. There’s no navigating a GUI that quickly.
In general when it comes to GUI vs CLI, I like GUIs too. I am just old enough that I remember how awesome it was to start using graphical desktops and file managers and computer mice and all that. But I’m an engineer who uses the terminal every single day, and I often just leave it open when I’m at work with a bunch of monitors. To me, any decent computer must have a powerful CLI and text-based configuration and scripting and all that.
For most USERs, the GUI is all that matters. And since the GUI needs to be simple and rock solid, it can be advantageous to just leave the arcane shit in the text files and not try to cram everything into the GUI. If I want to change my screen resolution, system fonts, or change my network connection, I expect to find that in the GUI and I’ll just go there. But when I want to be the dork customizing the colors on my GRUB screen or tweaking the swap/cache behavior of my OS, I’m quite glad to edit text for those.
That’s really it. Some things need the bandwidth of visual processing, but others are more efficient at the lower, more specific bandwidth of a CLI. Think of drawing a picture. You could do it with a CLI. Lord knows I’ve figured out how to do it to process image uploads. But unless you’re doing it over and over again it’s way easier to use a GUI to do it.
Then again, if you have to rename an arbitrary number of files to a specific convention you want the ability to automate it, and with that many bits flowing - imagine the bandwidth of a 8.29 million pixels, each with 250,000 colors - it’s really difficult to pick which bits in the stream to flip.