Yes if you're familiar with it, as faster and more composable. But likely less discoverable (though it has gotten better with good help and complex completion).
A search by menu name is a must-have for me in GUIs nowadays.
hard to say... depends on the person and task. IMO a CLI is far more versatile and powerful than a GUI for someone who knows the tool(s) being used, but a GUI can make its use possible in the first place by a non-techie. Also, a GUI can offer all kinds of visual data like charts, etc. I use both at different times. I said "yes, but...".
I do a lot of polls on my account at Mastodon. I get the same questions or requests multiple times, so I made this FAQ to make it easier to reply. Q: Why do you do so many polls? A: I like to think…
As an IT administrator, I've found that the best-designed software has a language with objects and verbs. The language may be surfaced in a CLI and/or and API. I'm sure the code underneath follows this design.
The GUIs for these apps are layered on top of this and provide easy access to more complex actions with lots of options, the one case where a GUI is superior to a CLI.
ok, more detail: I like CLI for system administration tasks, other than that I generally prefer GUI. But if the app is very simple then CLI is fine. For example, a file converter. I struggle to remember all the flags for CLI apps and looking them up can be annoying. Also, people who brag about using CLI apps in an elitist way annoy the shit out of me. I often prefer to use tools that are more accessible to nontechnical people so I can empathize with them more as a UX designer, tech support person and web developer.
@Edwin G. @Heliomass @Evan Prodromou Depends on your definition of convenient. With a GUI, I actually have to go over to my computer rather than SSHing in from whatever device I happen to have on hand.
If you need to build up a complex structure or even some sort of selective batch operation (eg, ripping a DVD you own), it's a lot easier to do these things interactively via a GUI than on a command line.
I miss a "it depends" option, so didn't vote. I think it's faster and more convenient in some cases, but too tedious in others, so wouldn't dare to say it's better or not in general. Both can coexist pretty well, actually.
I do a lot of polls on my account at Mastodon. I get the same questions or requests multiple times, so I made this FAQ to make it easier to reply. Q: Why do you do so many polls? A: I like to think…
- CLI tools are scriptable by design, and sometimes you need that. So that counts as “better” sometimes. - Most CLI tools could have a GUI built around the core library (you DID build a library at the core, right? Text is not an API contract…) - CLIs are the wrong tool for many things. Like most git operations on non trivial repos, where a GUI dramatically reduces the incidence of all sorts of errors.
They oftentimes does not serve the same purpose. I would hate to use blender or GIMP exklusively through a CLI for obvious reasons, but using imagemagick in the command line and being able to chain it with other commands is very powerful and a nice experience
Yes, but... from my perspective. I do understand, however, that many other user groups need a graphical user interface because they can't manage without it.
So another user would answer “No,” and I would understand that.
I answered "No, but..." and I understand why people like them and I'm sure people answering yes have different goals from me. I'm a sophisticated end user not a coder. When I hit a wall with the Wordpress GUI, the support team often tries to get me to use the CLI to resolve it, but they also want me to sort of *learn the CLI* first. I want to solve my Wordpress problem so I can do my task, not learn a new thing in an environment that I am almost never in unless it's the only option.
Emphatic no. Assuming an equivalent degree of UX design to both sets of interfaces, GUIs will always be more intuitive for more people. Even more so if the GUI is accessible.
There are apps with GUI fit well and there are apps with CLI fit well. GUI & CLI have pros and cons: you do not want to preview an SVG in CLI and you surely want to change password in CLI and there are common use cases came up: file managers, browsers, etc.
“No, but …” because neither are better in general than the other.
Here’s an example that I find amusing. Learned to use FreeCAD proficiently. An extremely complex gui app. I hate videos for learning — super useful for an app like FreeCAD.
Model got so complex that I ended up writing a complex FreeCAD macro in Python to generate the model in all its variations. FreeCAD CLI was quite helpful in this process.
Attached: 1 image
@justyourluck@masto.ai Screenshot of the FreeCAD model showing the parts of the filter holder that are installed onto a fabric mask: the fabric of the mask is captured between the lower fabric flange and the middle threaded flange …
a GUI gives me a visual overview of the actions I can take, except for the ones I can only do with a CLI because they weren't bothered to add all features to the GUI.
Neither is ever documented well enough to find the command I'm lookiing for.
Olivier Mehani
in reply to Evan Prodromou • • •Yes if you're familiar with it, as faster and more composable. But likely less discoverable (though it has gotten better with good help and complex completion).
A search by menu name is a must-have for me in GUIs nowadays.
James M.
in reply to Evan Prodromou • • •Evan Prodromou
in reply to James M. • • •Hans van Zijst
in reply to Evan Prodromou • • •@Evan Prodromou Invalid question 😁
In some cases one is better, in other cases the other. Personal taste is a factor, learning curve is another...
So many factors to consider, there is no simple yes-or-no.
Evan Prodromou
in reply to Hans van Zijst • • •@hans
evanp.me/pollfaq/#meaningless
Poll FAQ
Evan Prodromou (Evan Prodromou's Blog)Brooke Vibber
in reply to Evan Prodromou • • •Space Catitude 🚀
in reply to Evan Prodromou • • •Kirk Zurell
in reply to Evan Prodromou • • •Evan Prodromou
in reply to Kirk Zurell • • •Marty Fouts
in reply to Evan Prodromou • • •Each is better suited to some tasks than the other. You can do CAD with a command line but anything that visual is usually easier with a good GUI.
Likewise, tasks that are suitable for scripting are usually better done with a command line.
The best systems mix them, using each where it is more suitable and have done for more than 50 years.
M. Grégoire
in reply to Evan Prodromou • • •Depends on the task, as others have said. But as a general matter, the CLI is more powerful. Yes, but.
(I run Emacs both in GUI and terminal mode.)
Bruce Elrick
in reply to Evan Prodromou • • •As an IT administrator, I've found that the best-designed software has a language with objects and verbs. The language may be surfaced in a CLI and/or and API. I'm sure the code underneath follows this design.
The GUIs for these apps are layered on top of this and provide easy access to more complex actions with lots of options, the one case where a GUI is superior to a CLI.
Pau Amma
in reply to Evan Prodromou • • •Evan Prodromou
in reply to Pau Amma • • •Nicolas Guay
in reply to Evan Prodromou • • •Evan Prodromou
in reply to Nicolas Guay • • •Nicolas Guay
in reply to Evan Prodromou • • •Evan Prodromou
in reply to Nicolas Guay • • •Jerry
in reply to Evan Prodromou • • •Evan Prodromou
in reply to Jerry • • •Evan Prodromou
in reply to Evan Prodromou • • •senna.apk
in reply to Evan Prodromou • • •Evan Prodromou
in reply to senna.apk • • •senna.apk
in reply to Evan Prodromou • • •Evan Prodromou
in reply to senna.apk • • •@earth_walker you're a good sport, to respond so well to my lazy teasing.
Thanks for the detailed answer.
SamUpstate (he/him)
in reply to Evan Prodromou • • •toothpaste_sandwich
in reply to Evan Prodromou • • •Edwin G.
in reply to Evan Prodromou • • •Jonathan Lamothe
in reply to Edwin G. • •Edwin G. likes this.
muddle
in reply to Evan Prodromou • • •Jonathan Lamothe
in reply to muddle • •muddle likes this.
muddle
in reply to Jonathan Lamothe • • •@me Hmm. This i my first time hearing of such a thing, or such a term, anyway:
en.wikipedia.org/wiki/Text-bas…
Obviously, I've used such things many times.
Text-based user interface - Wikipedia
Contributors to Wikimedia projects (Wikimedia Foundation, Inc.)squinky
in reply to Evan Prodromou • • •Unknown Pseudoartist
in reply to Evan Prodromou • • •Evan Prodromou
in reply to Unknown Pseudoartist • • •@unknownpseudoartist
evanp.me/pollfaq#itdepends
Poll FAQ
Evan Prodromou (Evan Prodromou's Blog)Darth Hideout 🏳️🌈
in reply to Evan Prodromou • • •Ian Wagner
in reply to Evan Prodromou • • •No, but
- CLI tools are scriptable by design, and sometimes you need that. So that counts as “better” sometimes.
- Most CLI tools could have a GUI built around the core library (you DID build a library at the core, right? Text is not an API contract…)
- CLIs are the wrong tool for many things. Like most git operations on non trivial repos, where a GUI dramatically reduces the incidence of all sorts of errors.
Gabriel Pettier
in reply to Evan Prodromou • • •i guess "it depends" would be a "no", given the affirmative, but i still voted "yes, but…" because it often is, if not always.
(another justification for "no" would be that unless you use a braille interface, a command line is still a graphical user interface)
snorker
in reply to Evan Prodromou • • •Rabbit Cohen
in reply to Evan Prodromou • • •Aljoscha Rittner (beandev)
in reply to Evan Prodromou • • •Yes, but... from my perspective. I do understand, however, that many other user groups need a graphical user interface because they can't manage without it.
So another user would answer “No,” and I would understand that.
Jessamyn
in reply to Evan Prodromou • • •Dentaku (Thomas Renger)
in reply to Evan Prodromou • • •May Likes Toronto
in reply to Evan Prodromou • • •Sam Clemente
in reply to Evan Prodromou • • •No, but there are definitely advantages to not having a GUI in some places
I don't really see a place where NOT having a CLI is actually an advantage and not just...not having a CLI
Pizza Man
in reply to Evan Prodromou • • •Kyle Memoir 🍉🐧
in reply to Evan Prodromou • • •Evan Prodromou
in reply to Kyle Memoir 🍉🐧 • • •Stephen Dioxide
in reply to Evan Prodromou • • •When done properly, CLI is more efficient, and a GUI is more intuitive. So, it depends on how much time you're willing to invest in learning.
For my part, I write markdown in vim, and have for years. Would I recommend it to others? Probably not.
iamdtms
in reply to Evan Prodromou • • •and there are apps with CLI fit well. GUI & CLI have pros and cons:
you do not want to preview an SVG in CLI and
you surely want to change password in CLI
and there are common use cases came up: file managers, browsers, etc.
MrCopilot
in reply to Evan Prodromou • • •Jef Verbeeck
in reply to Evan Prodromou • • •Evan Prodromou
in reply to Jef Verbeeck • • •Stephen Bannasch (316 ppm)
in reply to Evan Prodromou • • •“No, but …” because neither are better in general than the other.
Here’s an example that I find amusing. Learned to use FreeCAD proficiently. An extremely complex gui app. I hate videos for learning — super useful for an app like FreeCAD.
Model got so complex that I ended up writing a complex FreeCAD macro in Python to generate the model in all its variations. FreeCAD CLI was quite helpful in this process.
Many sizes, fixtures not pictured here: ruby.social/@stepheneb/1109138…
Stephen Bannasch (316 ppm) (@stepheneb@ruby.social)
Stephen Bannasch (316 ppm) (Ruby.social)Epic Null
in reply to Evan Prodromou • • •No but... only because the two have different niches.
A GUI is great for structuring data and making features discoverable. It is also good for interactive interfaces and building long complex inputs.
A CLI is great at handling precice actions and actions someone might want scripted.
Internet Rando
in reply to Evan Prodromou • • •No, but.. it's also 50% of a computer's potential. So why pick? Both are important.
If I want this .doc, and this .xls, and these three .jpgs, and these two folders? Nothing beats mouse clicks in a GUI
If I want every .doc, every .xls, and every .jpg that starts with "P" and has 3 numbers in the name, across 3 folders? Nothing beats a command line.
BOTH SIDES, SAME COMPUTER.
`US$0.02++`
Charles A-M
in reply to Evan Prodromou • • •a GUI gives me a visual overview of the actions I can take, except for the ones I can only do with a CLI because they weren't bothered to add all features to the GUI.
Neither is ever documented well enough to find the command I'm lookiing for.
Evan Prodromou
in reply to Evan Prodromou • • •