Good GUI are hard to make while a good cli is rather easy.
Nothing wrong with a GUI that does what it needs without fluff.
Good GUI are hard to make while a good cli is rather easy.
Nothing wrong with a GUI that does what it needs without fluff.
Seriously! I can do shit in the terminal, but I grew up post DOS and it's nice to just click something and have it work.
Meh, I mean you are not wrong.
What is even better though is knowing that whatever you click on is just inputting a command you could do yourself manually into a terminal. Now that is some cool full circle shit that Windows fucked up by hiding the CLI.
I remember waaaay back in the server 08-08 R2 days, you could do something in server manager (such as installing a role) and while that process was running, you had the option to see the powershell command it was running in the background. That was pretty cool
I agree, but after you do it for a paycheck for any length of time it loses its magic.
Good GUIs are awesome. It's just that you often cede control to a bunch of fucking idiots who somehow think if it's not broken absolutely destroy everything that made anyone love it in the first place. 'They'll adapt'
I think people are just too rigid sometimes. Some workflows are better in GUIs, some are better in CLIs. They both have upsides and downsides depending on what you're doing, and it's totally fine to prefer one to the other. Just don't let your preference keep you from learning and using other great tools!
personally I think having that all cli all the time phase is really important for a developer. Those that I've worked with who exclusively use gui's just don't have the same understanding of their system. Which is maybe fine at a certain level but not for a senior dev
I usually take the which does it faster route. Most of the time, cli wins, occasionally gui is actually faster
That's totally fine. GUIs let us theme our terminal windows, tile them, jiggle them around, maybe even make them wobbly!!!
Compiz intensifies
:) Did you know KDE also does wobbly windows?
You can also do shattering or burning effects when you close them!
No, I've been GNOME peasant since Ubuntu switched to it from Unity. Now also using it on Debian. Some day when very bored, maybe in retirement I'll try Plasma again. π
Wow I haven't heard that name for a long time... The last time I used it, I was using the horrible AMD/ATI fglrx drivers, and Compiz had been forked into a project called Beryl. Looks like that was around 2006 or 2007.
before I made the switch to Linux I never used a terminal. never. hell on Windows I even used a GUI for Git. I used sublime text as my IDE. if it wasn't a GUI I was lost.
Then I switched to Linux and it forced me to actually sit down and learn the terminal and now...now I have a hard time using GUI's. If something has a CLI or TUI option then I go for that over a GUI. like everything even my music player and video player. my IDE of choice now is DOOM Emacs. my file manager is Yazi. for Git I either use lazygit or just straight up the command line. but for everything else it's just so much faster and in the long run easier to just use the terminal.
All that being said if you like GUI's then hey more power to you and that's fine. that's the beauty of Linux. you run your system how you want to and don't let others tell you otherwise. Hell I know a guy that uses NixOS and doesn't have anything installed other than git and comma. he runs everything via comma. literally everything.
what is comma? difficult to find anything with a search engine lol
it's just a wrapper for nix shell. so say you want to use firefox or neovim you'd just do ", firefox" and ", neovim" https://github.com/nix-community/comma
Probably this: https://github.com/nix-community/comma
Now, for music do mpd and control it ncmpcpp
Anyone can control their music streaming on their phone with an app, only the true Linux users (Arch users, btw) can control their music streaming via ssh.
I CAN interact with CLI, but i WANT to interact with good GUI. I don't want to learn CLI commands when I don't have to. Especially in the cases where I use it rarely
Are you kidding? There's nothing I love more than hand typing a 400 character file path.
Yeah and that's totally fair enough, but people who like using a command line and know the tools well rarely if ever have to type out long paths or commands. Tab completion and history suggestion (especially in a modern shell like fish or zsh) is a joy to use, and doesn't just do file paths but command options and arguments. Man pages are very overwhelming at first, but if you're practiced at scanning them, then it's a lot more convenient to get the info right where you are than to navigate to another window. But the learning curve is steep and I get why someone wouldn't want to bother.
I like good GUIs. There are GUIs that are clean, responsive, well designed, and full-featured.
Sadly, that is rare nowadays, regardless if the software is FOSS or not.
It seems like for proprietary software, the corporate approach is to design slow, boring GUIs that lack most/all advanced functionality. It's designed for dumb users who just want to click and swipe.
FOSS on the other hand rarely has full or even part time UI/UX devs due to the cost. So often the GUIs are clunky, messy, and a horrible pain to navigate. The upside is that they usually have extremely deep features, but good luck finding them.
If I have to pick, FOSS all the way, but I wish I didn't have to. There are a few FOSS programs that have very nice UIs, Bitwarden, Protonmail, Musescore, Godot, and many are getting better, but the landscape is still rough out there.
As for CLI, I prefer it for some things, it's just faster depending on the function. I find myself operating with a hybrid setup now days. I have become proficient enough with the command line that I can switch seamlessly between my GUI environments and the CLI-only environments. I don't really think about it much anymore.
It's a user interface. Users are fucking stupid this the interface needs to be fucking stupid. When you have to put that much in to stop stupid the interface suffers.
I'm undecided with modern GUI because most modern software is just a web page now. And it will offer you a choice between boring light mode and boring dark mode.
I miss the days of GTK2 with hundreds of themes. It was one of the main reason I switched to Linux; the customization. I don't know how many hours I must have spent on gnome-look.org. Now I don't even bother to try new themes and just use Fluent-Dark. My desktop is boring and looks like everyone else that has a dark mode. I really really miss GTK2 and all my favourite themes I can't use anymore. I tried making my own and played around with Oomox but it's not the same.
But one thing that I do prefer to be GUI now is IRC. Now that there are web clients (sigh) that can display images and videos directly in the channels, chatting in text mode only is kind of annoying with all the links we are sharing.
In the same way some GUIs are trash, lord have mercy some CLIs are trash. Things like adding two verbose flags makes it extra verbose. Things like the parameter order mattering. Yeesh. It can be rough. It really varies tool by tool.
two verbose flags makes it extra verbose
tcpdump intensifies
But what tool did you have in mind?
Things like the parameter order mattering.
I imagine this is unavoidable in many cases.
Yeah, I guess that's true. I suppose given more time to think about it I wouldn't really complain about that. It's mostly things like script in out that are sort of annoying versus something like script --in foo --out bar.
I generally prefer GUIs, but sometimes the terminal is just easier!
I like GUIs but I also like automation. Give me a nice simple GUI but also give me a way to run from a bash shell so I can automate functions based on complex conditions and/or a schedule.
The thing about CLI is that everything is hidden by default. You come to the application with your own mindset and a goal in mind and you figure out how make it do what you want.
When there's a GUI, you often see everything that's possible from the start and so the application dictates how you use it.
Though, you can do either with CLI and GUI as well. That's the sweet spot I think is the best. I love it when a CLI app guides the user through a process and gives options. And a good GUI should disable OK buttons and show validation errors if not everything is entered correctly.
In a perfect world, every app has a CLI mode, interactive and non interactive and a GUI mode with full validation and responsive UI changes. But realistically, good UX is what we need, either GUI or CLI.
Also CLI interfaces are a lot like having to know a language with the right keywords and vocabulary. Sometimes the manual doesn't always list out all the commands so it takes some trial and error to figure out. You can easily change something you didn't want to as you do.
This is one of the reasons why I can't migrate from visual studio to VS code for work. Everything is hidden beyond the weird palette search bar thingy. Just give me drop down menus and toolbars please. I'm sick of having to remember shortcuts for things I don't do often enough to warrant it taking space up in my very limited pool of memory
I still do updates and most package installs through my terminal, but anything else I look for a GUI solution. I'm lazy.
If we want the year of the Linux desktop to actually happen we need to have good GUI tools for almost everything. The second you say "command line" most people's eyes glaze over and they say they'll stick with Windows. Believe it or not guys, most people just want something that functions out of the box and they don't want to mess with it.
I like GUIs if they aren't web browsers pretending to be a desktop applications.
I like tuis
Call me a hater, but TUIs are just filler for the modern wm ricer. I see new ones pop up everyday lol
hater!
(but for real, I love a well-done TUI. Scriptability of CLIs is nice but sometimes the in-between of a good interface while remaining embedded in the shell works so well. Something like vifm allows me to zoom around with fzf, select things by regex or rename with vidir, move and package with rsync or tar, all without ever leaving my terminal context)
hater!
Can't say I didn't ask for it lol
I get their usability too. It's understandable if you have to access a server remotely and you want some sort of interface for some software without loading the server with a lot of packages like gtk, qt or stuff like that. I said it mostly to jokingly dunk on the newer arch/omarchy users with their fancy hyperland setups :P
Your torrent box should not need a WM to download torrents, and given the dynamic nature of a torrent download (speed/peers/pieces), a one-shot cli wont cut it either.
A TUI is a perfect use-case for torrents, though I havent seen it done well in either transmission or aria2
"just"? When my aesthetics are perfect I work 20% faster it feels like! And ... Well i'm fabulous
okay, that was always allowed

This is the energy we need.

New comers should never ever see or require a terminal.
Not understanding the fundamentals of the tools you use daily is not a design virtue, it just makes you less effective in using them. This cancerous philosophy leverages ignorance and laziness to support billion dollar industries of greed, slop, and censorship. It enables corrupt morons to justify surveilance and exploit weaker people. And right now, it's running blind and head first into a civilizational death trap.
I don't know what you're raging about, but consider this, do you know the internal workings of every device you own and use? Can you repair your car if it broke down? Can you rewire your house if something goes wrong? Can you fix the plumbing? Do you understand everything about your bike? Do you know the ins and outs of your own body? Do you understand your pets like a trainer would?
You call others lazy, but I guarantee you, there's something they consider basic that you have absolutely no understanding of despite using it all the time.
These questions are all beside the point. People seek help in problems they know how to solve all the time, often in the interest of time itself.
But since you asked:
Perhaps, but computers are likely far easier to learn about than whatever that is, and infintely less expensive if you already have regular access to one. Think of it like this, if they were so hard, would so many of the dumbest people in public life have started out as "experts" in computers? Would all the moron libertarian crypto enthusiasts have been able to assemble their elaborate blockchain networks that process a whopping 7 transactions per second?
And please note, laziness alone isn't a criticism/problem (it can often motivate efficiency), it's when particular applications of laziness to produces results that require undoing; especially when the costs of undoing excede the cost of doing nothing at all
It's not a design virtue because then it would have to be a design but you are talking about a... Customer fallacy...?
top 99 comments