• TheOakTree@lemm.ee
    link
    fedilink
    arrow-up
    6
    ·
    edit-2
    2 days ago

    GUI is a generic swiss army knife. It’s easy to introduce to someone, and it has a whole array of tools ready for use. However, each of those tools is only half-decent at its job at best, and all of the tools are unwieldy. The manual is included, but it mostly tells you how to do things that are pretty obvious.

    CLI is a toolbox full of quality tools and gadgets. Most people who open the box for the first time don’t even know which tools they’re looking for. In addition, each tool has a set of instructions that must be followed to a T. Those who know how to use the tools can get things done super quickly, but those who don’t know will inevitably cause some problems. Oh, but the high-detail manuals for all the tools are in the side compartment of the toolbox too.

  • thedeadwalking4242@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    2 days ago

    Tbh the terminal is super convenient. No random UI placement. Most things follow one of several conventions so less to get used to. It’s easy to output the results of one command into another making automation obvious, no possibility for ads. It’s pretty sweet

  • Honytawk@lemmy.zip
    link
    fedilink
    English
    arrow-up
    21
    ·
    3 days ago

    Nothing wrong with CLI. It is fast and responsive.

    Unless you want mainstream use. Because the majority of people can’t even use a UI effectively. And CLI is much worse.

    • nfreak@lemmy.ml
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      2 days ago

      This is the core of the argument. You can’t expected the average casual user to use CLI at all if you want mainstream adoption. The vast majority of people can barely operate Windows as-is, telling them to use a Linux CLI would be asinine.

      • Camelbeard@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        2 days ago

        There was a time before Windows where a lot of people used MS-DOS and it was all terminal. Maybe computers where less popular back in those days because of the learning curve, but still many people used a PC with just the terminal.

        • nfreak@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          2 days ago

          Oh absolutely. We’re in a very different age today though. Like hell I can’t imagine either of my own parents understanding the basics.

    • thevoidzero@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      2 days ago

      Yup. I made a scientific analysis program. Using CLI and your own editors you can do so much. And instead of focusing on making the algorithms, I had to focus on making a GUI for months because people need things to click.

      And then even with very responsive and easy GUI, with like just 5 types of “views” and probably like <5 buttons/inputs each, people are like “it seems complicated” within like 1 minutes of demo. They haven’t even tried to use it or tried to learn anything. I even modeled the views to be as similar to another software they use.

      I feel like people just don’t like computers.

    • cows_are_underrated@feddit.org
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      2 days ago

      Its also repeatable. Usually the same commands and ways work on the majority of systems. If you want to do that with a GUI you have to refresh a tutorial etc. Every time they change the UI. With CLI commands this usually isn’t the case.

    • ArchRecord@lemm.ee
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 days ago

      Exactly. Most things need to optimize for the lowest common denominator of understanding, and buttons with words and fields that have explicit purposes and positioning are a much easier starting point than “use command -help and figure out the syntax yourself,” even if someone who learns the syntax could then possibly be more efficient at using it.

  • Tin@lemmy.world
    link
    fedilink
    English
    arrow-up
    16
    ·
    edit-2
    3 days ago

    I do most of my work at the command line, my co-workers do think I’m nuts for doing it, but one of our recent projects required us all to log into a client’s systems, and a significant portion of the tasks must be done via bash prompt. Suddenly, I’m no longer the team weirdo, I’m a subject matter expert.

  • LovableSidekick@lemmy.world
    link
    fedilink
    English
    arrow-up
    21
    ·
    edit-2
    3 days ago

    Having started out in programming before the GUI era, typing commands just feels good to me. But tbh Linux commands really are ridiculously cryptic - and needlessly so. In the 1980s and 90s there was a great OS called VMS whose commands and options were all English words (I don’t know if it was localized). It was amazingly intuitive. For example, to print 3 copies of a file in landscape orientation the command would be PRINT /COPIES=3 /ORIENTATION=LANDSCAPE. And you could abbreviate anything any way you wanted as long as it was still unambiguous. So PRI /COP=3 /OR=LAND would work, and if you really hated typing you could probably get away with PR /C=3 /O=L. And it wasn’t even case-sensitive, I’m just using uppercase for illustration.

    The point is, there’s no reason to make everybody remember some programmer’s individual decision about how to abbreviate something - “chmod o+rwx” could have been “setmode /other=read,write,execute” or something equally easy for newbies. The original developers of Unix and its descendants just thought the way they thought. Terseness was partly just computer culture of that era. Since computers were small with tight resources, filenames on many systems were limited to 8 characters with 3-char extension. This was still true even for DOS. Variables in older languages were often single characters or a letter + digit. As late as 1991 I remember having to debug an ancient accounting program whose variables were all like A1, A2, B5… with no comments. It was a freaking nightmare.

    Anyway, I’m just saying the crypticness is largely cultural and unnecessary. If there is some kind of CLI “skin” that lets you interact with Linux at the command line using normal words, I’d love to know about it.

    • boonhet@lemm.ee
      link
      fedilink
      arrow-up
      6
      ·
      3 days ago

      typing commands just feels good to me

      That’s because for the most part, it’s faster. You don’t have to lift one hand off the keyboard. Also using the cursor and clicking on something requires more precision and effort to get right compared to typing a word or 2 and hitting enter.

      This is me kinda bragging, but at my typing speeds, something like ls -la is under half a second. Typing cd proj (tab to auto complete) (first few letters of project name if it’s fairly unique) (tab to auto complete), hitting enter, and then typing a quick docker compose up is an order of magnitude faster than starting the containers in docker GUI.

      But tbh Linux commands really are ridiculously cryptic - and needlessly so.

      Agreed. Okay, to be fair, for parameters, most of the time you have the double-dash options which spell out what they do, and for advanced users there’s the shorthands so everyone should be happy. But the program/command names themselves. Ugh. Why can’t we standardize aliases for copy, move, remove/delete? Keep the old binaries names, but make it so that guides for new users could use actual English aliases so people would learn quicker?

      • A Phlaming Phoenix@lemm.ee
        link
        fedilink
        arrow-up
        3
        ·
        3 days ago

        At least part of this is the decentralized/complied nature of a FOSS operating system. You don’t get a command called grep because someone making design decisions about a complete system holistically decides that tool should be called grep. You get it because some random programmer in the world needed a way to find patterns in text so they wrote one and that guy called it grep and someone else saw utility in packaging that tool with an OS. It’s a patchwork, and things like this are a culture of sorts.

        • Val@lemm.ee
          link
          fedilink
          arrow-up
          3
          ·
          edit-2
          2 days ago

          interesting you used grep because it’s a command that has a very clear origin.

          in ed/vi the g command was used to run commands on some pattern. eg g/[regex pattern]/[command]

          the p command was used to print current line so to print any line that matched the string “grep” you would do: g/grep/p.

          when this was made into a seperate command it was called grep: g/re/p. using re to denote regex.

      • LovableSidekick@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 days ago

        The standard VMS text editor (EDT) assigned editing functions to the number keypad. Using it became so natural to me I eventually didn’t think about pressing keys, it was like using a car gearshift. I’ve never gotten to that point with any GUI editor, even with heavy use of keyboard shortcuts.

  • udc@lemmy.world
    link
    fedilink
    English
    arrow-up
    11
    ·
    3 days ago

    Didn’t even know there were such a thing as evangelists for Windows

    • doomcanoe@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      5
      arrow-down
      1
      ·
      2 days ago

      It’s an odd sort of evangelism. They almost never try to convince you Windows is good, just that everything else is worse.

    • jabjoe@feddit.uk
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 days ago

      The ones I met really don’t know anything else. If you got to the point of being a Windows power user (slight oxymoron), having to start again on another platform is enraging when it seams different for the sake of it. It seams like others are cheating when achieving more using something else. They aren’t playing by the same rules!

      Similarly, if you don’t know anything else and don’t know Windows really either, change is scary. Basically humans don’t like change and will fight to keep things unchanged, rather than embrace and utilize the change.

  • BoiBy@sh.itjust.works
    link
    fedilink
    arrow-up
    36
    ·
    edit-2
    3 days ago

    I use Linux and I prefer GUIs. I’m the kind of person that would rather open a filemanager as superuser and drag and drop system files than type commands and addresses. I hope you hax0rs won’t forget that we mere mortals exist too and you’ll make GUIs for us 🙏🙏🙏

    • Lv_InSaNe_vL@lemmy.world
      link
      fedilink
      arrow-up
      21
      arrow-down
      1
      ·
      3 days ago

      Tbf, the file explorer is actually one really good argument for GUIs over terminals. Same with editing text. Its either simple enough to use Nano or I need a proper text editor. I don’t mess around with vim or anything like that that.

      Its all tools. Some things are easier in a file manager, some things are easier in a GUI.

      • trashgirlfriend@lemmy.world
        link
        fedilink
        arrow-up
        8
        ·
        3 days ago

        I think it depends, if I have a simple file structure and know where stuff is, it’s pretty efficient to do operations in the terminal.

        If I have a billion files to go through a file manager might be easier.

      • BoiBy@sh.itjust.works
        link
        fedilink
        arrow-up
        5
        arrow-down
        1
        ·
        edit-2
        3 days ago

        Yeah I prefer fancy text editor too. And my biggest heartbreak was learning that I can’t just sudo kate (there’s a way to use Kate to edit with higher privileges but I never remember how, edit: apparently it’s opensuse specific problem).

        Born to Kate, forced to nano

    • TwoBeeSan@lemmy.world
      link
      fedilink
      arrow-up
      6
      ·
      edit-2
      3 days ago

      I tried to learn superfile thinking it could make terminal more exciting but nah.

      Gimme that comfy file explorer gui.

      Totally agree.

    • Shanmugha@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      3 days ago

      I would say “why not, to each their own” if not the thought about what else the filemanager is going to do with root access (like downloading data from web for file preview). But the general sentiment still stands, it is absurd to think that computer must be used only in one way by all people

    • utopiah@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      3 days ago

      FWIW I do use the file browser too when I’m looking for a file with a useful preview, e.g. images.

      When I do have to handle a large amount of files though (e.g. more than a dozen) and so something “to them”, rather than just move them around, then the CLI becomes very powerful.

      It’s not because one uses the CLI that one never used a file browser.

      • takeheart@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        3 days ago

        Yeah, when I need to inspect lots of images I just open the folder in gwenview.

        For peeking at a single picture or two through you can hold down control and click/hover on the filename when using Konsole. Love that feature. You can even listen to .wav files this way.

        • utopiah@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          2 days ago

          Very nice, I don’t seem to have that option available but I can right-click on a filename to open the file manager in the current directory. Good to know!

      • BoiBy@sh.itjust.works
        link
        fedilink
        arrow-up
        2
        ·
        3 days ago

        I once did rm \* accidentally lol. I now have a program that just moves files to trash aliased as “rm” just in case. I just don’t feel confident moving files in CLI

  • surph_ninja@lemmy.world
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    2 days ago

    It’s wild that Linux stans are such masochists that they believe they can convert people to loving abuse, instead of just making the interface better to attract users.

    • Ajen@sh.itjust.works
      link
      fedilink
      arrow-up
      5
      arrow-down
      1
      ·
      2 days ago

      What I consider a “better interface” is almost certainly not what a new user would consider a “better interface.”

  • livingcoder@programming.dev
    link
    fedilink
    arrow-up
    2
    ·
    2 days ago

    I’ve found that one of the best things to do when making a library for something that is going to have a web interface is to first have it work in the terminal. You can much more quickly play around with the design and fix issues there instead of having to work with a more complex web interface.

    You just create a simple menu system, like input("1: Feature A\n2: Feature B\n>") and just start trying out all of the different scenarios and workflows.

  • Kuranashi@lemmy.world
    link
    fedilink
    arrow-up
    11
    ·
    3 days ago

    I’ve never met any windows evangelists to be honest. Lots of Apple evangelists though who will spend forever talking about windows. Every developer I’ve met who uses Windows always had a tongue in cheek sort of “well it kind of sucks in some ways but it’s what I’m used to, one day maybe I’ll get off my ass and change OS”.

    Reminds me of the “I use Arch Linux btw” meme which doesn’t really happen as much anymore other than as a joke. Also, I use Arch Linux btw

    • shortrounddev@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      2 days ago

      Im not an evangelist for windows (I won’t try to convert you) but I’m unashamed of being a software engineer who uses Windows as my main dev platform

        • shortrounddev@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          2 days ago

          At work everything I do is in the Javascript/Web world. Typescript backend, webpack react, etc. I use C++ and C# for personal projects because I personally despise Javascript world

          • Kuranashi@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            17 hours ago

            That’s like my opposite haha, all my own projects are TypeScript and vite react, at work I was working with C#. Though I do prefer static typing much more.

            • shortrounddev@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              ·
              16 hours ago

              When I work on web projects at home I don’t use any javascript at all. Just html and css. Interactions are handled via form submission. I’m working on a forum in asp.net mvc without any javascript at all

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

      Every developer I’ve met who uses Windows always had a tongue in cheek sort of “well it kind of sucks in some ways but it’s what I’m used to, one day maybe I’ll get off my ass and change OS”.

      This used to be me, kind of. I’ve been an engineer for over 20 years, with the last couple being full time “developer.”

      But I finally made that switch at work over a year ago (booting into Linux instead of using a VM) and at home a few months ago. This probably goes without saying, but I am never going back! It’s one thing to know there are options out there that people like you prefer, but it’s another entirely to get used to the better option then try the enshittified one again.

  • dalekcaan@lemm.ee
    link
    fedilink
    arrow-up
    17
    ·
    3 days ago

    It’s all a matter of preference anyway (assuming you have both options anyway). CLI is less intuitive and takes longer to learn, but can be wicked fast if you know what you’re doing. GUI is more intuitive and faster to pick up, but digging through the interface is usually slower than what a power user can accomplish in the CLI.

    It depends on what your use case is and how you prefer your work flow. The only dumb move is judging how other people like their setup.

    • 3xBork@lemmy.world
      link
      fedilink
      arrow-up
      31
      arrow-down
      1
      ·
      3 days ago

      Not really. But you know, gotta find ways to feel smarter than other people so here we go.

      • rustydrd@sh.itjust.works
        link
        fedilink
        arrow-up
        17
        arrow-down
        1
        ·
        edit-2
        3 days ago

        And those Windows evangelists! Don’t we all know 'em with their strong opinions about operating systems? *shakes fist at cloud*

        • 3xBork@lemmy.world
          link
          fedilink
          arrow-up
          9
          arrow-down
          1
          ·
          3 days ago

          Yeah you just can’t be in a server room anymore without some dude trying to sell you on Office365 and Cortana, sigh.

          • rustydrd@sh.itjust.works
            link
            fedilink
            arrow-up
            4
            ·
            3 days ago

            Do you have a moment to talk about our Lord and savior, the Microsoft App Store, and his enlightened prophet, Candy Crush Saga?

    • ftbd@feddit.org
      link
      fedilink
      arrow-up
      23
      arrow-down
      6
      ·
      3 days ago

      There are definitely people who think it is reasonable to memorize button locations and 10 levels of menus in GUI programs but would rather go into cardiac arrest than use something like program --option input-file output-file.

      • the_crotch@sh.itjust.works
        link
        fedilink
        arrow-up
        4
        ·
        3 days ago

        As far as I’m concerned “windows key, start typing the name of the application” or “CMD+space, start typing the name of the application” is the right way to handle GUI. Apple nailed it with Spotlight and it’s vastly improved Windows and a variety of Linux DE’s

    • jj4211@lemmy.world
      link
      fedilink
      arrow-up
      8
      ·
      3 days ago

      In a pretty high end high tech company, there’s still lots of people who see a terminal and think “ha hah, they are still stuck in old mainframe stuff like you used to see in the movies”.

      My team determined long ago that we have to have two user experiences for our team to be taken seriously.

      A GUI to mostly convince our own managers that it’s serious stuff. Also to convince clients who have execs make the purchasing decisions without consulting the people that will actually use it.

      An API, mostly to appease people who say they want API, occasionally used.

      A CLI to wrap that API, which is what 99% of the customers use 95% of the time (this target demographic is niche.

      Admittedly, there’s a couple of GUI elements we created that are handy compared to what we can do from CLI, from visualizations to a quicker UI to iterate on some domain specific data. But most of the “get stuff done” is just so much more straightforward to do in CLI.

    • tux7350@lemmy.world
      link
      fedilink
      arrow-up
      6
      arrow-down
      1
      ·
      3 days ago

      I have a coworker that likes to pick fun at my usage of CLI tools. He said it’s confusing “why would I use a terminal when the GUI was made after?”. They vehemently hate anytime they have to work with CLI.

      I watched them use an FTP program to download and change one value in a .conf file. Like they downloaded the file, opened it in notepad++, changed one thing, saved it, reuploaded / overretten the original. I tried to show them how to just use nano and got told their way was “better since you could ensure the file was replaced”. Its okay, I’ve secretly caught them using it a couple times lol

      • zarkanian@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        3 days ago

        Fortunately, Linux terminals are gorgeous and easy to use. I never wanted to use Windows’ com because it was so ugly and user-hostile. I know Powershell is a thing now, but it still looks ugly to me.

    • rebelflesh@lemm.ee
      link
      fedilink
      English
      arrow-up
      6
      ·
      3 days ago

      I don’t think so, but I do criticize not having an option, that is why I stopped using Cisco personally and professionally, some things are fast using the cli, some things just need an Ui, you need both.

      • jj4211@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        3 days ago

        Like I get and appreciate the CLI and for networking, that’s pretty much all I’m using anyway, but I am shocked that enterprise networking doesn’t even bother to do any GUI. Once upon a time Mellanox Onyx bothered to do a GUI and I could see some people light up, finally an enterprise switch that would let them do some stuff from a GUI. Then nVidia bought them and Cumulus and ditched their GUI.

        There’s this kind of weird “turn in your geek card” culture about rejecting GUIs, but there’s a good amount of the market that want at least the option, even if they frankly are a bit ashamed to admit it. You definitely have to move beyond GUI if you want your tasks to scale, but not every engagement witih the technology needs to scale.

    • renzev@lemmy.worldOP
      link
      fedilink
      arrow-up
      6
      arrow-down
      3
      ·
      3 days ago

      I posted a meme a while back and out of the woodwork comes some guy ranting about how apt install sshfs is confusing. Like, the meme wasn’t even about CLI vs GUI lol. Nobody was claiming superiority, but there they go ranting anyway.

      • daggermoon@lemmy.world
        link
        fedilink
        arrow-up
        7
        ·
        3 days ago

        To me apt is confusing but that’s because I’ve become so used to pacman. The only package manager that comes close to pacman for me is xbps.

        • renzev@lemmy.worldOP
          link
          fedilink
          arrow-up
          2
          ·
          3 days ago

          Yeah apt tends to shit itself very often. I don’t like how it’s actually two different programs (dpkg and apt) glued together with perl and python. It all feels too fragile. A friend once tried updating a package, and it failed because… he was issuing the apt command from with a python virtual environment. Can’t say for pacman because I’ve never used arch, but xbps is just one set of self-contained binaries, which feels much more robust. Alpine’s APK fits that bill as well, lovely little package manager. Tho I guess apt predates both of those, so it’s not a fair comparison. Someone had to make those mistakes for the first time.

          I also really dislike the Debian/Ubuntu culture of fucking around with the sources file to add other people’s repositories on top of the distro-default ones (ubuntu calls this PPA). It’s a good idea in theory, but in practice those third party repos always fuck up in some way and brick your package manager. Just search for “apt Failed to fetch” in your favourite internet search engine, and you will see hundreds of people confused about it. You can do it with almost any package manager, but for some reason it’s mainly the debian/ubuntu people who like shooting themselves in the foot like this.

    • ZeroOne@lemmy.world
      link
      fedilink
      arrow-up
      5
      arrow-down
      2
      ·
      edit-2
      3 days ago

      Yes, that’s a real thing. They use it as an excuse to dog on linux distros & say “Muh linux not great yet”