upvote
Well I can’t speak to ASCII in particular, but I create a lot of mermaid UML diagrams specifically because unlike an image, they are:

- Text searchable

- Easy to adjust

- Supported by a surprising number of markdown viewers.

reply
LLMs can understand ASCII diagrams
reply
LLMs nowadays can understand png diagrams too.
reply
But not all CLIs handle pngs as easily as a text diagram. Syncing images is also multiple times slower.

png diagrams should never be the default.

reply
They can’t update it though. In docs it makes sense to use that as a basis and have the Llm update it when needed
reply
Mermaid diagrams are even better because you don't waste characters on the visual representation but rather the relationships between them. It's the difference between

    graph TD
            User -->|Enters Credentials| Frontend[React App]
            Frontend -->|POST /auth| API[NodeJS Service]
            API -->|Query| DB[(PostgreSQL)]
            API --x|Invalid| Frontend
            DB -->|User Object| API
            API -->|JWT| Frontend
and

    +-------+           +-------------+           +---------+
    |  User |           | React App   |           | NodeJS  |
    +-------+           +-------------+           +---------+
        |                      |                       |
        |  Enters Creds        |       POST /auth      |
        |--------------------->|---------------------->|
        |                      |                       |
        |      Invalid         |    <-- [X] Error -----|
        |<---------------------|                       |
        |                      |       Query DB        |
        |                      |---------------------->| [ DB ]
Plus while an LLM can understand relationships via pure ASCII or an image, it's just easier to give it the relationship data directly.
reply
But the point is to have something easy to read both for humans and LLM, no?

It’s harder to read mermaid in a terminal or a markdown file…

reply
Mermaid diagrams automatically render on Markdown and IDE chat windows as in VSCode or Cursor. So you get the best of both worlds, a graph you can look at a ND manipulate with the mouse but also in a format LLMs can read.
reply
more tokens, less reliable, dont work in all CLI agent harnesses
reply
Is it common for graphics to be supported in the terminal?

ASCII to me represents something that can work in my term, in my source code, checks into git a bit more sanely than binary does, etc.

I still quite like it

reply
agents can understand them. and you can view them in the terminal
reply
My unpopular opinion is that programming is stuck in the 1970s: a lot of programmers use a 1970s-style terminal window to enter 1970s OS commands, which run on a 1970s processor architecture (which is slowly getting replaced by a 1980s architecture). They use a 1970s editor (which is much superior to the other 1970s editor) to write programs in a 1970s language. ASCII diagrams are just a symptom of this. Hardware is millions of times better than in the 1970s, but programming is stuck in local optimums for historical reasons.

(Not to take anything away from Monosketch, which is cool.)

reply
What is there to improve? Very genuinely.

A car has had largely the same shape since its creation, indeed since antiquity.

Sometimes, a problem space is explored to most humans' needs, and no more innovation is needed.

(edit: this said, I'm hopeful there is something new, and people like Bret Victor may show the way with things like https://dynamicland.org/ )

reply
Because we are yet to invent a more efficient data transformation system as a shell, or a more efficient text editing interface as vi, but its not like there is no innovation in the space, we have `jq` now.
reply
I wish it were stuck in the 1970s! (Although the mouse had been invented by then.) I do not want the mouse and I do not want all these windows. If I am using agents I want the mouse even less.

This is not historical reasons, this is just that moving my hands from the keyboard to the mouse is inefficient and technically unnecessary. I prefer mouse only on niche (for me) tasks like screenshot cropping or something.

I am about to test out Niri on my laptop and I expect to be quite pleased with the change.

reply
This is what I like about programming
reply
And yet here we are communicating over a network from the 1970s.
reply
I use this for traking change with git.
reply
Same reason people love and swear by games like nethack. ASCII art is cool af.
reply
That "seems" is doing so much heavy lifting I got a hernia just from looking at it.
reply