Why do you use the terminal?

Waffelson@lemmy.world to Linux@lemmy.ml – 132 points –

Hi, everybody Recently, a guy noticed that I was using it and asked why? For me it because in Linux many things are done through the terminal because Linux has many different desktop environments

He also compared terminal commands with cheat codes in GTA and other games, he understands what benefits you take from them, but not from terminal commands

163

Command line is a lot more powerful for a lot of cases. Most CLI programs are written with the idea that the caller might be another program, so they tend to be easy to chain with pipes and redirection. So you have tons of simple tools that you can combine however you need.

this and its sometimes faster than sifting though a gui

For tasks that I know, I'm faster in the terminal. For tasks where I'm less familiar or that are very important (like disk partitioning) I prefer a GUI because with a GUI I can usually see a bit better what I'm doing.

Terminal tasks for me include copying stuff, setting folder permissions, uncompressing or compressing folders, quick edits in vim, etc.

The terminal is a power tool. I can do stuff with it that’s slow or inconvenient with graphical tools.

I really like the piping capabilities of the Linux terminal. Incredibly useful for text processing.

  1. It feels great
  2. Terminal programs run on a potato
  3. They are almost always way more powerful then their GUI counterparts
  4. They integrate with scripts and other tools for unlimited power and flexibility!
  5. You feel like a hacker man
  6. Your IT literate friends think you are cool
  7. You can really do things your own way

So yeah I love using the terminal for almost everything

Can confirm #6. Wife calls it dark screen and does indeed think I'm cool for using it.

Terminal is faster when you're used to it and sometimes offer more customization options to some apps that has both a GUI and TUI/CLI version.

I use the terminal (st with zsh and tmux) for:

  • file management (advcpmv, fd, trash-cli, fzf ...)
  • emails (neomutt)
  • text editing/coding (neovim)
  • project management (taskjuggler)
  • image viewing/organization (ucolla,ge)
  • online video browsing (ytfzf)
  • calendar (khal)
  • ssh
  • vpn
  • news aggregator (newsboat)
  • web, bookmarks manager (buku)
  • passwords manager (pass)
  • dotfiles manager (stow)
  • not in the terminal but I also have a lot of scripts used in rofi to control my audio input/outputs, launch a web search, access my bookmarks, autocomplete username and password fields

I'm sure I'm missing some obvious tools I use daily. It's hard remember everything when it becomes so natural.

I have shared my experience with some of these tools here.

Here's the ELI5 answer I'd give to your friend:

Computers are like servants. They do whatever you ask of them. But to be able to ask them things, you must do so in their language. On the extreme low level that means writing code to make programs, but on a higher level, it means talking to programs someone else already wrote using special commands.

The buttons and switches on a GUI that you can click on with a mouse are like pre-recorded commands that instruct the computer to do some specific thing. The button or whatever will have a symbol or text description that lets you intuitively know what it's for, and when you click on it, it plays a pre-recorded command to the computer in its language that tells it to do that thing. With these buttons, you can ask things of the computer in its language without having to know that language.

As you get more intimate with the computer, this system can start to feel a bit stiff. You've essentially got a butler who doesn't speak your language, and any time you need to give him a task, you have to fumble through a basket of pre-recorded tape recorder messages to find the one for the task at hand, and play it to him. For more complex tasks, you may need to chain several of these together. It gets slow and awkward. And god forbid you don't even have a tape recording for the thing you need.

It's easier if you learn the butler's language yourself. Then you can ask him for things directly. You're not bound to any collection of pre-recorded messages to use, you can tell him exactly what you need. And if you don't happen to know the word for something, you can look it up. It cuts out all the faffery with fumbling over a tape recorder looking for the messages you need to play.

Using a terminal is roughly the computer equivalent of speaking to your butler in his native language. You're not limited to only the buttons and features any particular program lets you have; you can make up exactly what you need on the spot. And you never have to bounce your hand between a mouse and keyboard to do it, you can keep your hands in one position at all times, which really adds up over time in both speed and comfort.

Practicing this will also give you the side perk of better understanding how the computer actually works overall, and what it's actually doing. This knowledge can come in super handy when diagnosing problems with the thing. When a GUI gives up, a terminal can keep digging.

Because it just works. No bullshit. No bloat. Just fast and efficient.

Because I prefer using keyboard for almost everything and in most cases terminal is faster than GUI.

I'm just faster in the terminal than a gui

Really depends on the task and how critical it is. I would never use gparted on the terminal, 3 clicks and I'm done in the UI, without risks.

Lol yeaaah, parted in terminal is like tar, I have to look up the commands and flags each time and then because you're messing with a disk, I have to double and triple check it.

There's no way that's true unless the GUI is straight garbage.

How can it not be true though? Terminal shines when you chain together more than one operation.

Imagine doing this in a GUI: list the files in a large directory, ignore the ones with underscores in them, find the biggest file, read the last 1000 lines from it and count the number of lines containing a particular string.

Thats a couple of pretty straightforward commands in a terminal, could take 30s for an experienced terminal user. Or the same task could take many minutes of manual effort stuffing round with multiple GUI applications.

I'm certain that I do tasks like that (ad hoc ones, not worth writing dedicated software for) tens of times in a typical work day. And I have no idea how GUI users can be even remotely productive.

How can it not be true though?

How can it? It's very simple, it takes far less time to click a mouse than it does to type a command.

Imagine doing this in a GUI: list the files in a large directory, ignore the ones with underscores in them, find the biggest file, read the last 1000 lines from it and count the number of lines containing a particular string.

Okay. I'm imagining it, it's incredibly easy. What else?

Thats a couple of pretty straightforward commands in a terminal, could take 30s for an experienced terminal user. Or the same task could take many minutes of manual effort stuffing round with multiple GUI applications.

My guy, you've never used a file explorer?

I have no idea how GUI users can be even remotely productive.

Back at ya

I can type at 100wpm, its a lot faster do just run a couple of programs than open a heavy gui program and try to find the correct button to type.

I don't care how fast you can type, you can't type faster than I can click.

If the GUI takes any time to load at all, it's garbage.

That's where alises and script's come in, I can make a 20 click's process in a gui be a single character command in the terminal.

I can make a 20 click's process in a gui be a single character command in the terminal.

If you can make it a single command in the terminal then you can make it a single click in a GUI and the GUI still wins...

for that I need to know gui codding and code the program it self, in terminal I just tie a few commands together and be done with it.

That's unfortunate for you but really besides the point.

Because every IDE implementa a different git interface and I can't be bothered to figure out where they hid the commit, push, pull etc. buttons this time.

When teaching programming classes it's awful trying to figure out every IDE's git interface that my students are using. Each IDE puts the buttons in very different layouts and they even change the names of the buttons because they don't like the way git itself named operations. It's untenable to know them all and actually be efficient and helpful as the instructor.

Instead, I say they're welcome to use the IDE, but the class materials use the canonical underlying command line tools and terminology. They just need to search for how to translate the real git interface to however their chosen tool does the same operation, but it's up to them to figure it out.

When they do ask for help, I bring up the terminal (usually even inside the IDE) and run the git commands just like we went over in class.

Damn I hate with a passion the IDE interactions with source control software. I may make use of the visual information they give me, but I still execute the commands in the console.

Same. Git GUIs can be great for examining commit trees, visualising patches, etc. For any write operations (this includes things like fecth and pull which write to .git), it’s all in the shell.

To get shit done in general.

If I need to rename a file, yeah, I can do that by right-clicking it in the file explorer, and selecting 'rename' from the menu. Two files? Painful but doable. Three files? Oh hell no, I'm switching to my always-open-in-background terminal window, and write a quick c=1; for f in *.jpeg; do mv "$f" $c.jpeg; c=`expr $c \+ 1` ; done and it takes twice less time than clicking things through with mouse.

And yes, I wrote that shell command off the top of my head on the first try and without edits.

Just so you know, in emacs you can do mass rename of multiple files using dired-mode. Never use a for loop again.

I'm sorry, I'm too old to learn emacs over my perfect knowledge of Midnight Commander.

The point of this topic was to tell why we are using terminal, and emacs is kind of terminal on steroids, there are like 1000 key bindings and the mouse is totally optional, you are proving the point even further.

I just discovered that I know emacs commands because I use them in the bash terminal all the time.

Hey look, it's us:

https://odysee.com/@ProgrammersAreAlsoHuman:3/interview-with-an-emacs-enthusiast-in:d

It's emacspiracy to subtly teach unsuspecting Ubuntu users the despicable ways of Emacs Lisp.

It all starts with learning 100 common terminal keybindings. And un-learning Ctrl-C.

There's also vidir from moreutils, which lets you bulk-rename files in your $EDITOR of choice.

The Thunar bulk renamer is relatively good, but recently I wanted to name images based on the capture date. Probably very tedious without the right GUI tool, while it's just one line using exiftool in the terminal. (I don't know it off the top of my head)

Similarly, I just extracted the audio only from a video using ffmpeg in like 10s.
ffmpeg -i video.mkv -c:a copy out.mka

it allows easy scripting. also for frequently used commands, i can just scroll up in the history, instead if clicking the same buttons over and over

I am on Windows as my workstation, but my servers run Linux, why should I install X/Wayland and VNC to manage my servers when even the later versions of Windows comes with an ssh client?

When I run linux with a gui, I mainly use the terminal as I sm more used to that rather than relearning a GUI.

Yeah I use WSL a huge amount of my work.

Azure for instance is much easier to work with in the console than the website.

Then there's grep!

For me the difference between a cli and a gui is like asking someone to do something speaking in a language they can understand and doing it just by pointing at things and doing gestures. It's enough for ordering at a restaurant, but for more complex tasks it gets ridiculous, even at a restaurant you'll get better results if you can ask for some information and understand what the server says

Because you can't (easily) program gui apps to automate tasks, but combining a few terminal programs to get more complex behaviour is really easy

Because Gui's don't show advanced options and so I know/understand exactly what is being done. (e.g. I would always use apt over mint's package store so I could see what it did, how much time I had left, download multiple applications at once and see if the package made a random config file somewhere)

Not having to go through a bunch menus to do stuff, not using the mouse, having --help for commands...

Or just for simplicity. For example, I use simple commands to manage my files: mv, cp, ls, rm, mkdir, etc.

There's also Neovim, my preferred editor, which runs on the terminal.

I prefer to use GUI for visual things, like drawing, since that's what it's best at.

Only one of the ~250 linux machines I maintain has a gui.

I like using the terminal because of 3 main reasons:

  1. I like using my keyboard

  2. I like doing multiple things in one window

  3. Verbosity

I'm pretty quick with typing, but sometimes I can't see !y mouse at first, so it's just faster for me to type out what I want to do as long as I know the right arguments for it.

My average workflow at work as me doing frequent saml logins and going between multiple kinds of databases. It's just easier for me to run the saml cli command and then run the SQL CLI command I need instead of messing with datagrip settings and stuff. Also I recreationally run some servers and it's just easier to ssh into the server, make the changes I need in something like nano or the redis CLI tools and then log back out. This means I'm just plain more comfortable on the terminal in certain situations like config editing, writing posts for my gemini capsule, etc.

Sometimes when I run a GUI program I'll get big loud silence and don't know what to do. In that case I genuinely enjoy using the terminal and running an equivalent command with verbosity settings so I can see what it's doing or not and can track down any errors.

On top of those reasons, I've been playing with RISC-V architecture lately and, while the xorg riscv64 port is admirable, I just get better performance rn by running my RISC stuff through tty.

I recognize that not everybody is going to have the same use case and workflows as me, but I'm pretty comfortable with what I've got 😅

I really despise the use of the mouse, in some way it just feels somewhat wrong, especially the need to constantly move one hand between the mouse and the keyboard. Also I'm way faster at typing that I am pointing and clicking around looking for the right button to press. Terminal commands offer a simple and expressive way to interact with the computer.

I run stuff in the terminal because it's nicer than clicking. It's like a shortcut-only way of interacting with the computer when you get into it.

I make aliases and bash functions for everything I do often and is tedious to type / click like running steam games.

The terminal is the entire reason I use Linux. All the GUI stuff on Linux is average at best. The terminal is ⭐️ ⭐️ ⭐️ ⭐️ ⭐️

Because when you're screwing with important systems it's generally better to write scripts.

Because whatever I'm trying to do doesn't have a GUI option yet.

Pipes are OP

tar + netcat are really nice. Not very secure but gets a folder from A to B using standard tools.

ssh is probably better than nc for that.

I live and die by ssh and scp. Sometimes rsync for larger moves.

Once you've got ssh for terminals (used to be x sessions too!), then port forwarding and socks proxies, add in scp for file moves, and layer in sshfs for whole file system mounts it's a potential combo for remote work and network tunnels. Such a phenomenal toolkit.

Isn't sshfs defunct now? I used to use it a lot.

SSHFS is shipped by all major Linux distributions and has been in production use across a wide range of systems for many years. However, at present SSHFS does not have any active, regular contributors, and there are a number of known issues (see the bugtracker).

The current maintainer continues to apply pull requests and makes regular releases, but unfortunately has no capacity to do any development beyond addressing high-impact issues.

When reporting bugs, please understand that unless you are including a pull request or are reporting a critical issue, you will probably not get a response.

I use a lot of programs and scripts that I wrote myself and most of the time I couldn't be bothered to make a GUI for them.

  1. Scripting is easier. Apps and commands can be composed together in simple repeatable scripts.
  2. looks cool.
  3. Remotely administer machines with the same interface and little lag.

If I figure out how to do something in the terminal, then I know I can automate it eventually.

If I figure out how to do something in a GUI I might be able to automate it.

It is quick. it does not need to load a bunch of things and in certain tasks, I can do multiple things at once.

I also find it easier to navigate and edit files with tab to complete.

Because GUIs on linux don't do everything that the CLI can. I use my computer for more than just browsing and editing documents, so the GUIs that do just that, don't cut it.

Also, I'm on NixOS. There's simply no way around the terminal - sadly.

CC BY-NC-SA 4.0

Mentioning you're using NixOS is slowly becoming the new "I use arch btw", isn't it?

I'm not saying it as a source of pride. It's incredibly annoying to me that I need to edit a file in order to manage my system instead of having a GUI like KDE's to manage all the settings. On NixOS, there's just no way around that at the moment.
Unfortunately, I don't know another somewhat sane declarative distro. Do you? (No, not GUIX. That's just NixOS with a ton more brackets and less packages).

CC BY-NC-SA 4.0

CLI is conservative, GUI tends to change with each release. I have no time to search where is the menu item I need now or where is the menu itself.

I use a terminal whenever I'm doing work that I want to automate, is the only way to do something such as certain parameters being cli only, or when using a GUI would require additional software I don't otherwise want.

I play games and generally do rec time in a GUI, but I do all my git and docker work from the cli.

If I don't know how to do something in gui: maybe click around or google it, it takes a while

If I don't know how to do something in cli: command --help or man command 90% of the time I find what I need right away

The terminal is like a direct access to do things on the computer. A GUI is a program someone made to do a task the way he envisioned it to be done. If this task is not exactly what you need, you're out of luck.

It's easier than going through 10 menus (that are different depending on DE), because its universal on Linux systems

It's more efficient, and for years (actually like a decade) it was the primary way of interfacing with a computer.

Just faster. Often I can just enter a simple command before the GUI version even has time to load.

My server doesn’t have a GUI, so the terminal is what’s there. As for my desktop, terminal is just easier for some things. And for my own stuff, it’s easier and faster than building a GUI for all the things I’m doing.

Because its easy to make a script that can chain together a bunch of commands for tasks i do frequently, so its only one manual step to do it.

For me it's because it's much quicker and reliable for most use cases. Also the commands are roughly the same across many many of my systems (AIX, macos, and Linux distros)

Because I'm forced to use a Mac at work. So to avoid their terrible UI, I use the terminal for most of the things. Then switching back to Linux is relatively easy.

Also it is faster in most cases and it's keyboard-first.

Every time I touch the mouse i get a little more elbow pain. Tendens or whatever. The keyboard (an ergonomic one, at least) is more ergonomic.

I built a split ergonomic keyboard with a trackball on it so I never have to leave.

Without regards about this discussion, run, don’t just go, and buy a vertical mouse. Just saved my wrists.

I do a bit of programming. Git help is about terminal commands. There are graphical front ends but I have to learn how to use them. I use terminal also for package management for the same reasons.

I'd say is similar with any source control software. It's the same with me and Fossil. (And, granted, there are less plugins to support Fossil in IDEs; the one in Visual Studio Code/Codium does OK.)

I'm a software developer. I think about my interactions with computers as language. And Posix shell is a pretty good programming language.

So interacting with the computer this way just makes sense to my monkey brain.

I'm a shell user too, but as a programming language I would rate Bash utter garbage. Fine for little piping but for longer scripts I will be reaching for Haskell.

Shell and Haskell are for different purposes.

Shell is for composing tools that work on text streams.

Haskell is for writing new tools or for programming against other (more structured) data models.

Also, shell programs are small. The interpreter can be tiny. Re-compiling every new tool can add a ton of bloat.

Also also, the key to effective shell programming is to recognize it as a macro language.

Because I can do things in 30 seconds what two windows admins take 15 minutes to do with their point and clicking. Not even making this up, this happened.

Because googling a command line works way better and faster than any other form.

Terminal still has use-cases imo:

  • Some programs only offer CLI, no GUI,
    to use them, the terminal is the only way.
  • Sometimes it's faster to use CLI instead of GUI, especially when you can use your command history to re-execute.
  • Testing single lines of scripts while writing them.

For a lot of what I do, its the only way to do it.

For everything else, there's MasterCard.

You can easily pipeline simple things to do more complex things. That's the point of written language.

Because it's fun

This and work are the only real answers

Hardly. I self-host a bunch of VMs on a home server. It would be a waste of resources having window managers running them just so I can click around once in a while. Also, it takes way more time to set up a container in Docker Desktop compared to just copying across a command to the terminal from a setup guide.

Why should i open discover, wait half a year for it to load, search for vlc, wait half a year, look if its not a flatpak, realise its a flatpak, repeat

If i could just type sudo pacman -S vlc?

Or search how to update my grub config if I could just type grub-mkconfig -o /mnt/Boot/grub/grub.cfg?

Makes me feel like a hacker and makes other ppl think that I'm smarter than I am... That and there are certain things that are just more convenient through the terminal

One could ask in return "why do you use a mouse". The answer is probably "I've always done it this way" and not "after trying out different methods it's the one that i prefer".

Because my first deep dive into Linux was a server I built that I didn't install a desktop environment on.

Some applications take some time to load up visual elements that you don't need before you can start using it. When you got a lot of work to do sometimes that just slows you down.

A lot of CLI programs do one thing and do it well while also working excellently in custom scripts.

For me it's because I get a lot of feedback, if anything I do goes wrong I know why. Also it's usually faster

Tell him you can "talk" directly to the computer that way.

One of the other commenter made the analogy of being in a restaurant. With a mouse you can only point and grunt at things to communicate when you want. A terminal let's you speak out your order and any other requests you might have.

You can use the terminal commands to automate tasks, build cicd etc. Navigating file tree and performing tasks is much quicker once you get the hang of it. Lastly it translates well on all distros and even on Mac, or windows with wsl or cygwin

a terminal is the ultimate gui for a lot of things especially w/ ncurses mouse support. You can open N terms and easily compose a dashboard which is exactly tailored to what you're doing at the moment. A simple oneliner often solves a problem for which a gui simply does not exist / isn't powerful enough. Terminal is the ultimate gui ftw from the space yay!

Repeatibility (is that a word?) and scriptability. I find CLI tools easier to work with and easier to get information from them.

many programs don't offer a gui so I'm forced to use it.

It's very fast and nearly always gives me the results I want without extra bullshit. For example using bc or qalc to do a quick unit conversion vs launching a calculator app for the same purpose.

I think about it like a tree structure for both. With a gui you have to move your mouse around to various places, with a cli each character branches off into another tree. Mathematically you can handle more options faster with a CLI.

I can use Fish’s history to jog my brain on actions I don’t quite remember. Remembering a sequence of screen menus to click thru is often much more tedious & error-prone. And when you have a commonly repeated process, it’s trivial to script because shell scripts are, well, scripts for that terminal shell.

Also the terminals applications are hella portable. I can use ssh/mosh over the network & have a similar or exact environment as my main PC on a remote box. vi was always a good enough editor.

To be honest I hardly use it. I'm on Linux Mint Debian Edition and the built in updater does a great job. So I find myself never using the terminal

Even back in the day when I still used Windows (and GUI almost exclusively) I browsed my filesystems like I'd use a terminal with tab-completion. I'd press the first few letters of the file/directory I was looking for and press enter, rinse and repeat. I knew my file organization by heart anyway. It's only natural for me to drop the GUIs for such use cases.

Nice choice. Try to stick to the standard repository, kinda like the Play store on android.

I believe Mint tries to have minimal dependence on the command line. But usually it's easier to help others solve problems with the command line since that is easier to write out than how to click through menus. So don't let it scare you too much.

The internet is a friendlier place now, at least in the linux help-o-sphere. People don't let others post destructive "lessons" for people to learn anymore.

That was comment I wrote in a thread about distro recommendations. I think it provides a context in which CL has a clear advantage over GUI.

Everyone’s different idk. I myself love command line. I have enjoyed Linux for a long time but it didn’t really become my daily driver until recently. I find it very rare that I use the GUI for more than gaming and watching stuff. Everything else is command line. I’ve had friends refuse to try Linux due to the “requirement” of needing to do stuff in command line. When I showed them some newer distros that appeal to users who don’t really feel comfortable with command lines.

Why not? It's simple, lightweight, has a lot of interesting commands that fills its respective niche really well (btop, for instance) and (the best of all) it doesn't explode my PC everytime I run such commands.

Because it's the only way for me to change the color of my rgb keyboard /jk but it's true tho

I use the terminal in a variety of circumstances (like working on Node.js and other programming projects) where there is either no good GUI alternative or using a CLI is actually faster. I've been using computers since 1989 and my first operating system was MS-DOS, so the thought of using a CLI when necessary doesn't bother me.

Can get much more done rather than navigating desktop and gui's.. Also I'm a sucker for tui's,

Ranger,

Rtorrent-ps,

Nvtop,

Gotop,

Gomuks,

Even greetd tui implementation,

And much more.

Because there is no native gui. For most things to configure in Linux there is a webui but not a simple Gui built in. Configuration files like squid.conf smb.conf nginx.com... then we have logs but here I think I never checked for a Gui, does it work for remote ssh easily? Can you restart service easy?

For simple tasks you don't need CLI. Most GUIs implement basic workflows and do a reasonable job at it (obviously not counting the ridiculous amount of time Windows needs to "compute space requirements" while deleting an empty directory. Seems it's more important to get that little popup on screen and run the animation a few times than actually doing the job).

It's when you get past the basics that CLI comes into its own. Those grindy things you do in Windows clicking one thing at a time? Glue a couple of commands together in the CLI and it's done in a tiny fraction of the time.

For me, two main aspects: I do not have to move my hands from the keyboard and I can pipe things from one tool into others, significantly speeding up many tasks

I don't actually use it that much to input commands, but many scripts I made pop one up to show details of what's happening, e.g. how opening the VPN connection is going, what crypto module it's currently loading or how many more iterations a macro will do.

It's just way faster for me most of the time. I can hit F12, do what I need, and be done without messing around with a mouse or touchpad.

Because app manager doesn't work well. And there are the feedback on terminal that tell you about missing dependencies or broken packages...The fact you get those verbose log help for doing web research and solve lot problems. On GUI installing app isn't well done : it's slow, they don't tell you what they are doing nor why it fail.

The only limitation of terminal is when you want to work with file system. I need to see the tree and typing ls -a everytime isn't efficient. Example, i'm doing a git clone on a server throught ssh. But i have no way to know its structure and check if i downloaded it in the correct directory. I need a visual that tell me this folder is here, has those writing permission, is a tar archive... So i use both : filezilla and terminal, gui and cli. In fact, they are both very useful, so there no point comparing gui and cli, they both serve well their purpose.

I'm using CLI and GUI. For example, if i want to chose the correct keyboard and check its mapping : gui. If i want to add sources and its gpg key : app manager gui. There is no way i would enjoy typing this huge command line with flags from my mind, and i do lot mistype. Or installing the stack lamp ? on windows it was amazing and faster than linux. next, next, done.

Luckly we can copy-pasta those commands.

Edit : updated my text.

For filesystems I have another gripe: if I move a file to another directory and I want to swap to the directory I just copied the stuff to I have to enter the whole path again...

Gnome software store is absolute trash that never worked, so i had to use dnf from terminal. That's about it.

If you know how to use git, you will know how to use docker (provided you know what you want to do). They are completely different programs, yet you can quickly grasp the other instinctively.

Now, Photoshop and Blender - they are also different programs, but if you know Photoshop, you still need to relearn Blender's interface completely.

This is why I prefer terminal programs in general. Unless it's more convenient to use GUi, i.e. Drag&Drop file manager, some git tools etc.

You use it because you like to be efficient your use of a computer.

I use it because I'm a bossy arsehole and I like telling things precisely what to do.

We are not the same.