Embracing The Terminal: My Unexpected Journey from IDEs to the Command Line

A New Beginning

It's a new year, and for me, it's the dawn of a new era in how I interact with my machine. When I made the switch to macOS in 2025, I didn't anticipate it would spark such a fundamental change in my development workflow. I was chasing a simple fix—GitHub Copilot was relentlessly trying to invoke Bash on Windows, a frustrating quirk that nudged me towards a new operating system. I moved to macOS, and I've never looked back. But the real surprise wasn't the seamless OS experience; it was the rediscovery of a tool I had long relegated to the sidelines: the terminal.

The AI-Driven Push to the Command Line

My journey into the terminal was, ironically, accelerated by the very AI tools that are often wrapped in glossy UI extensions. While I've largely moved on from GitHub Copilot, as the powerful claude-code has won me over, I found that the most effective way to wield these AI assistants was not through their constrained IDE plugins. The plugins, while convenient, often lacked the granular control I needed.

I wanted to set my own parameters, chain commands, and build complex, customized prompts. The terminal gave me that power. It became my canvas, allowing me to interact with AI on my own terms, free from the guardrails of a pre-packaged IDE experience. I quickly found I was spending less time inside a full-blown IDE and more time in the raw, efficient environment of the command line.

Finding Joy in Terminal-Native Tools

What started as a necessity soon became a genuine passion. I discovered a vibrant ecosystem of modern, terminal-first tools that were not just functional, but beautifully designed and incredibly fast. It felt like stepping into a high-performance cockpit after driving a family car.

Here are a few of the command-line wonders that have completely reshaped my workflow:

  • Yazi: A blazingly fast terminal file manager with a slick, visual interface. Navigating complex directory structures, previewing files, and performing bulk operations has never been smoother. It feels less like typing commands and more like effortlessly gliding through my filesystem.

  • lazydocker: Managing Docker containers and services used to mean a lot of docker ps, docker logs, and docker exec. With lazydocker, I get a comprehensive, interactive dashboard for everything Docker. Monitoring logs, restarting containers, and inspecting layers is now a delightful, single-keystroke affair.

  • lazygit: Git is powerful, but it can also be complex. Lazygit provides a brilliant terminal UI that makes staging files, crafting commits, and resolving conflicts intuitive and fast. It has turned complex Git operations into a fluid, visual process.

  • tmux: The legendary terminal multiplexer. Tmux is the command center that brings everything together. It allows me to manage multiple sessions, split panes, and detach and re-attach to long-running processes. It’s the glue that holds my entire terminal-centric workflow together, ensuring my workspace is always exactly as I left it.

The Future is... in the Terminal?

So, have I abandoned graphical interfaces entirely? Not at all. The jury is still out on whether I'll fully embrace a terminal-based editor like Neovim. When a project demands the heavy-duty refactoring tools, advanced debugging, or rich language support of a full IDE, I still happily fire up VS Code or a JetBrains IDE.

But for a growing majority of my tasks, the terminal is no longer just a tool—it's my preferred environment. It's a place of focus, speed, and unparalleled control. The command line is having a renaissance, and it's an exciting time to be here. If you've been living exclusively in graphical interfaces, I urge you to open that terminal window and explore. You might just find your new favorite way to work.