← wordings

The Terminal Is Not a Tool. It's a Relationship.

toolsworkflowterminal

GUIs are designed to be discovered. Terminals are designed to be mastered.

There’s a fundamental difference in the relationship. A GUI says *“here’s what you can do”* and presents options. A terminal says *“what do you want to do?”* and waits. One constrains. The other trusts.

And that distinction that small, philosophical gap is what separates the people who use computers from the people who bend them.


The Investment That Compounds

Most tools depreciate. Your text editor gets replaced. The app you loved gets acquired and enshittified. The workflow you built in some SaaS product evaporates when they sunset the feature.

The terminal doesn’t do that.

I keep coming back to it because it rewards investment in a way nothing else does. Every alias I create, every script I write, every keybinding I customize they compound. After a year, my terminal is molded to my brain. After two, it feels like an extension of thought rather than an intermediary.

No GUI has ever done that. GUIs are designed for the median user. The terminal is designed for *you* but only if you put in the work to make it so.

There’s something almost anti-capitalist about it. You’re not buying into a platform. You’re building a craft. The investment stays yours.


You Don’t Learn the Terminal. You Negotiate With It.

The first few weeks are brutal. You feel slow. You feel stupid. You google how to exit Vim for the fourth time and wonder why anyone does this voluntarily.

But that friction is load-bearing. It’s the terminal asking: *are you sure?*

Because once you clear that initial resistance, something shifts. Commands stop feeling like incantations and start feeling like vocabulary. You’re not remembering syntax anymore you’re thinking in it. `grep`, `awk`, `xargs`, `find` they stop being commands and become verbs in a language you actually speak.

The GUI never gives you that. It gives you discoverability at the cost of depth. You can always find the button, but you never own the button. In the terminal, you write the buttons.


The ASCII Aesthetic, or: Constraints as Taste

This site exists partly as proof of concept.

Beautiful design doesn’t require 14 JavaScript frameworks, a Figma file with 400 components, and a design system built by a team of six. Monospace fonts, box-drawing characters, and deliberate spacing can produce something that feels more intentional more *honest* - than most modern web design.

The constraint is the feature.

When you can’t reach for gradients, drop shadows, and hero animations, you’re forced to actually think. About hierarchy. About rhythm. About what the eye does when it enters the page. About what information is primary and what’s decorative noise.

Most modern design fails this test quietly. It uses visual complexity to avoid the harder question: *what are we actually saying?*

ASCII aesthetics answer that question first. There’s no hiding behind the chrome. The structure is visible. The thinking is visible. And when the thinking is good, it shows.


On Mastery and the Shrinking Interface

Here’s the thing nobody says out loud: the interface should disappear.

The best tools are the ones you stop noticing. You’re not thinking about the terminal when you’re deep in a debugging session - you’re thinking about the bug. The terminal has become transparent. That’s mastery. That’s what months of aliases and dotfiles and muscle memory are actually building toward: the erasure of the tool itself.

GUIs resist this. They need to remain visible to remain useful. They’re in the business of being noticed.

The terminal is in the business of getting out of your way.


Why This Still Matters

We’re in a strange moment. AI-assisted everything is eating tooling from the top down. Copilot finishes your sentences. Claude writes your scripts. The gap between “knowing how to do something” and “getting it done” is collapsing.

But I think this makes fluency in low-level tools *more* valuable, not less. Because the people who will use AI tools most effectively are the ones who understand what’s underneath - who can verify the output, catch the subtle wrong, and direct the generation with precision.

You can’t prompt well what you don’t understand.

The terminal isn’t going anywhere. It’s just shifting roles - from primary interface to the substrate that intelligent work runs on. Which means now is a terrible time to stop learning it.


*The cursor blinks. It’s waiting.*