• GaumBeist@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    24 minutes ago

    The controversial opinions come in the form of “GUI is better than CLI” or vice-versa. I prefer the efficiency of keyboard-only navigation/usage, but I think GUIs are cool af and a great way to be noob-friendly

  • JackbyDev@programming.dev
    link
    fedilink
    English
    arrow-up
    6
    ·
    2 hours ago

    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.

  • dr_robotBones@reddthat.com
    link
    fedilink
    arrow-up
    3
    ·
    1 hour ago

    The main advantage of CLI is that its easier to instruct people on what to do and easier to get answers from people about how to use a CLI, and you can copy paste. If you know how to use the GUI though it can be a powerful tool as well.

  • Zink@programming.dev
    link
    fedilink
    arrow-up
    2
    ·
    2 hours ago

    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.

    • Boomer Humor Doomergod@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 minutes ago

      the speed and bandwitdth of our visual processing

      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.

  • ILikeBoobies@lemmy.ca
    link
    fedilink
    arrow-up
    3
    ·
    3 hours ago

    Linux has GUIs for any setting you could need.

    Windows has the registry and random PowerShell commands from the internet if the setting is even something you can change.

  • myfunnyaccountname@lemmy.zip
    link
    fedilink
    arrow-up
    5
    ·
    4 hours ago

    Depends on what I’m doing. Some things I prefer cli. Some things GUI is easier or quicker. There’s no wrong way to do anything.

  • chunes@lemmy.world
    link
    fedilink
    arrow-up
    10
    ·
    edit-2
    5 hours ago

    I like GUIs if they aren’t web browsers pretending to be a desktop applications.

  • OldChicoAle@lemmy.world
    link
    fedilink
    arrow-up
    5
    ·
    6 hours ago

    Don’t let random nerds on the internet make you feel any way about how you use Linux. Live your life and be happy. There’s too much bullshit in the world to pay attention to jerks with keyboards.

  • Sunsofold@lemmings.world
    link
    fedilink
    arrow-up
    2
    ·
    5 hours ago

    Depends on the GUI. I love having GUIs for things, but I might have a hard time deciding between using CLI to launch everything and using GNOME.

  • pseudo@jlai.lu
    link
    fedilink
    arrow-up
    2
    ·
    5 hours ago

    Is this a meme or a picture you choose. Either way, I love it! And I feel with same by the way.

  • rumba@lemmy.zip
    link
    fedilink
    English
    arrow-up
    2
    ·
    6 hours ago

    I do too! Most of us do to some extent. If I can right click on a network icon in my taskbar and get an IP, that’s cake!

    But then, it doesn’t work on my friends box, and it’s no there after an update, and when I search for how to do it all I see is the way it used to work or i’m told it’s somewhere that doesn’t even seem to exist.

    Gui’s change, vendor to vendor, update to update, they’re poorly documented, and have the most chance of being wrong or missing features.

    Use your GUI’s as long as they give you what you need, but learn your CLI, because it almost never changes, is well documented and works for you and all your new friends that have abandoned windows no matter which linuxy way they went.

  • ComradePenguin@lemmy.ml
    link
    fedilink
    arrow-up
    19
    ·
    10 hours ago

    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

      • porous_grey_matter@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        4 hours ago

        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.

  • thericofactor@sh.itjust.works
    link
    fedilink
    arrow-up
    1
    ·
    5 hours ago

    I get CLI users, sometimes using the cli is faster and more efficient.

    However I have had frequent discussions with people (all of them also avid CLI users) that set up infrastructure as code. I prefer the super understandable Gui of a tool like octopus deploy over hundreds of yaml files whose content can only be understood by doing a year long deep dive any day.

    They always use the same two arguments: Infrastructure as code allows you to rebuild your entire software deployment from scratch, and the code can be versioned, thereby providing an audit trail for deployments.

    In decades of software development I have exactly had to redeploy an entire network from scratch 0 times. If you’re in that stage the cause is most likely hardware and re-provisioning that will probably take the bulk of your time.

    About the versioning: I’m not arguing against storing deployments as yaml files, but writing them by hand is insanely inefficient. There should be a nice GUI that generates and writes these yaml files, so you don’t have to know every option an value and every validation rule by heart.

    Also, I am relatively certain that a tool like octopus deploy also has auditing of who deployed what software in which location.

    • BetterDev@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      4 hours ago

      To me the power of IaC is less in “I can stand this whole thing back up a single deploy” and more "The entire history of every configuration decision and change I’ve ever made is right here, not buried 4 submenus deep in a “new enhanced ui”.

      When we’re being audited for security/privacy/legal compliance, I have one source of truth to look at, and when it gets changed, those changes get peer reviewed just like any other code change, and git history is a great audit trail if you use decent commit messages.

      Also, knowledge transfer and onbording is way easier too, here’s all our infrastructure, here’s the rules surrounding how it gets updated, yes you will be fired if you break them. Here’s the docs regarding how to write this code, and here’s some handy formatting and validation scripts to help you along the way.

      Doing it by hand in the console is fine if you have full confidence in your ability to hand over the project to another human on your way out the door, but when it comes to that one hacky workaround you had to implement with no documentation due to the limitations of your in-house apps, you’re probably forcing the next guy to rediscover why you did it that way by breaking it half a dozen times on the next deploy after your departure, rather than just noticing the inconsistency in the IaC, then looking into the git blame and mumbling “heh, that’s dumb”.