During my experience as a software engineer as well as a tech blogger, I’ve set up more machines than I can count, like fresh Linux installs, temporary test environments, and clean Windows setups. Over time, I realized productivity isn’t lost in big mistakes, but in tiny delays repeated all day: slow searches, messy output, forgotten commands, and constant context switching.
So instead of customizing everything, I standardized a small terminal toolkit I install first on every system. These tools aren’t flashy, but they remove friction immediately. Before any project, repo, or configuration, I make sure the terminal itself works with me, not against me.
Ripgrep
The speed demon of search
If I’m being honest, I haven't used the standard grep command in years. As a freelancer, time is literally money, and I used to waste way too much of it watching a blinking cursor while my system crawled through thousands of files just to find one specific line of code. That frustration stopped the second I installed ripgrep.
Written in Rust, it is one of the fastest search tools I’ve ever used. But what makes it a "day one" install for me isn't just the raw speed; it’s the intelligence. By default, it respects your .gitignore and automatically skips hidden files and binary blobs. This means when I search for a function name, I’m getting actual source code results, not junk from a node_modules folder that I never intended to search, anyway.
It’s simple, and it handles Unicode perfectly. Whether I’m on a massive Linux server or my local Windows machine, rg is the first thing I type when I need to find a needle in a digital haystack.
7 command-line tools that will automate your daily tasks on any OS
Use your time wisely and automate the drudgery of daily tasks.
Nushell
A shell that finally makes the terminal predictable
After the search, the next thing I install is Nushell. I used bash and PowerShell for years, but both had the same problem — everything is text. Commands output text, pipes pass text, and I constantly had to guess how to extract the part I actually needed.
Nushell works differently. It treats terminal output as structured data instead of raw strings. That single change makes commands far more reliable.
For example, instead of parsing messy output:
ls | where size > 10kb
I get clean, readable results without fragile pipes or long flags. I don’t memorize regex tricks any more just to filter a list.
What I like most is consistency. Commands behave the same on Windows and Linux, so I don’t switch mental models depending on the machine I’m using. After a few days, going back to traditional shells feels noisy and unpredictable.
I still use other shells when required, but Nushell is where I actually work. It reduces small frustrations that normally pile up during the day.
Installing Nushell early means the rest of my tools behave better from the start.
Fzf
The tool that removes most of my typing
If you’ve ever found yourself hammering the up-arrow key fifty times just to find a command, you ran three days ago, you need fzf. It stands for "fuzzy finder," and honestly, it’s the tool that saved my sanity. I install it immediately because it turns the tedious process of digging through file paths or command histories into a split-second search.
What I love most is that it’s "fuzzy." I don't need to remember the exact name of a file or the perfect syntax of a long script. I just type a few letters I think were in there, and fzf instantly narrows down the list in real-time. It’s like having Google Search built directly into your command line.
I use it for everything: jumping between folders, picking a git branch, or killing a stubborn process. It integrates seamlessly with your existing tools, making the terminal feel less like a rigid machine and more like an assistant that finishes my sentences. Once you start using it, navigating a computer without it feeling like moving through glue.
TLDR
The cheat sheet that actually teaches through usage
The next tool I install is TLDR. Not because I don’t know commands, but because I don’t remember them perfectly. And traditional man pages don’t help when I just want a quick reminder.Most man pages explain everything except what I need right now. I open one, scroll for a minute, and still end up searching online.
TLDR fixes that by showing practical examples instead of long explanations. I just type:
tldr tar
tldr ssh
tldr git-commit
I can instantly see the common ways people actually use the command.
The pages are community-maintained cheat sheets focused on real usage, not theory.
This changes how I learn commands. I don’t memorize flags anymore. I learn by doing, and TLDR stays open while I work. After a few repetitions, the command sticks naturally.
It works the same on Windows and Linux, so the habit transfers across machines. No browser, no context switch, no breaking focus.
I installed TLDR early because every other terminal tool depends on knowing commands, and this removes the friction of remembering them.
5 developer tools that are incredible even if you're not a developer
Powerful tools built for developers, useful for everyone
A faster workflow starts before the first project
Whenever I set up a new machine, I don’t begin with editors, themes, or plugins. I begin with friction removal. These tools don’t add features — they remove waiting, guessing, and context switching. That’s where real productivity comes from.
Instead of optimizing later, I optimize from day one. Searching is instant, commands are predictable, navigation is effortless, and documentation is always one command away. The result is simple: I stay in flow longer.
