Live data from Hacker News

Stop Making TUIs

sockpuppet.org

411–420 of 579 posts

Re: Stop Making TUIs

#411
post #393

The people that keep arguing for TUIs for everything seem like religious fundamentalists that can't be convinced with any argument that user interfaces should be about the user, and need to adapt to the task at hand. Every time I use Claude Code, I'm wondering why the hell I'm regressing to the level of a machine. I paste an image that I want fixed, and I don't see the preview of it. I can't cut or edit text somewher…

Claude Code should be heavily sandboxed to be used safely. Are you advocating requiring a gfx stack in the sandbox just to use Claude Code?

No?

Re: Stop Making TUIs

#412

Hard disagree. Make more TUIs! TUIs have downsides like accessibility, poor mouse support, but work really well if you focus on keyboard input. It is a better/faster input mode to begin with, especially for power users, but also for average people; you'd be surprised at how much more user-friendly an arrow-keys driven UI can be vs modern web interfaces. I've been building my own TUI framework [1] and getting amazing…

Yeahs ago I remember when my big bank switched from a TUI front end to a web front end for their front line staff. What originally took a few quick keyboard/tab combinations that was hard wired into employee muscle memory immediately took 2-3 times longer. Fortunately, the need to go into a physical bank doesn’t matter as much, but it’s still a regression…

Re: Stop Making TUIs

#413
post #393

The people that keep arguing for TUIs for everything seem like religious fundamentalists that can't be convinced with any argument that user interfaces should be about the user, and need to adapt to the task at hand. Every time I use Claude Code, I'm wondering why the hell I'm regressing to the level of a machine. I paste an image that I want fixed, and I don't see the preview of it. I can't cut or edit text somewher…

> The people that keep arguing for TUIs… Every time I use Claude Code

As far as I can tell, practically everyone arguing for TUIs thinks Claude Code is a horrible example.

Re: Stop Making TUIs

#414

Hard disagree. Make more TUIs! TUIs have downsides like accessibility, poor mouse support, but work really well if you focus on keyboard input. It is a better/faster input mode to begin with, especially for power users, but also for average people; you'd be surprised at how much more user-friendly an arrow-keys driven UI can be vs modern web interfaces. I've been building my own TUI framework [1] and getting amazing…

It's not hard to make a portable UI framework if you accept similar limitations to the terminal (limited OS integration, accessibility support, etc). You can do anything you want and ship it through RFB.

Re: Stop Making TUIs

#415
post #216

Earlier quoted context omitted.

Use Qt or Flutter

qt is exhausting. flutter is actually awesome these days but the last thing i want to do is commit to dart

qt is exhausting

Good luck exhausting Claude. As long as you keep feeding in quarters, it will keep hacking Qt.

Re: Stop Making TUIs

#416

Earlier quoted context omitted.

TUIs run on any OS with minor patches to support quirks, GUI frameworks need a lot of work. TUIs don't need to follow any OS guidelines, cross-platform GUIs always look bad outside of the "main" platform. If you're only targeting macOS/Windows/Gnome/KDE then the solution is easy: just grab a GUI control set and go ham. Then there's remote access: you can spawn an X11 app through X forwarding and have a terrible laggy…

> TUIs run on any OS with minor patches to support quirks, GUI frameworks need a lot of work. TUIs don't need to follow any OS guidelines, cross-platform GUIs always look bad outside of the "main" platform. Have you tried to write a GUI program lately? I suspect things may have changed. I can write one using Qt, EGUI, etc (Or many other options), and it will just work on Windows, Mac, Linux/Wayland, and Linux/X. Basi…

> I can write one using Qt, EGUI, etc (Or many other options), and it will just work on Windows, Mac, Linux/Wayland, and Linux/X.

This is hard to square with the continuing obsession with Electron.

Re: Stop Making TUIs

#417

Hard disagree. Make more TUIs! TUIs have downsides like accessibility, poor mouse support, but work really well if you focus on keyboard input. It is a better/faster input mode to begin with, especially for power users, but also for average people; you'd be surprised at how much more user-friendly an arrow-keys driven UI can be vs modern web interfaces. I've been building my own TUI framework [1] and getting amazing…

Plus, when you ssh into a server and don't want to or can't rdp it, you at least have more degrees of freedom when you juggle complicated commands, like k9s

Re: Stop Making TUIs

#418

Earlier quoted context omitted.

GUI programs can also use the keyboard.

A lot of us do the vast majority of our non-browser work on remote systems. GUIs are objectively bad for this

That's an indictment of ssh workflows not GUIs.

RDP works fine but it's based on a full desktop experience. Despite having the technology, we don't have the ability to remote in and run a single graphical program in a single window with the same ease.

We need something as seamless as Parallels for remote remote apps. But I guess we just settled on web apps.

Re: Stop Making TUIs

#419
post #118

As a ratatui library maintainer, NO - please don't stop making TUIs ;) As a developer outside of that, I love the scratch the itch apps stuff mentioned in here. I have a vibe coded SwiftUI chess repertoire builder app that fits in that same sort of space that I'm currently working on, where I'd probably not have chosen to explore the idea if not for coding agents. I agree with the article that the terminal is an odd…

Ratatui is such great work.

The New Terminal, the complete break from VT100, is I think the most powerful rebuttal to what I'm saying about TUIs.

My take is that the Morlocks should pack everything that is great about TUIs (and there are great things about them) and move them upstairs to live alongside the Eloi in GUI-land. Let 1000 Bloomberg terminal interfaces bloom.

But there's another even more ambitious take on this, which is to take everything that's pleasant and good about Eloi world and bring it down into the Morlock caves. I don't think you can accomplish that so long as you're drawing interfaces with punctuation characters, but there's nothing to say a terminal has to work that way; you can have a terminal with rich out-of-band-signaled UI. Not just, like, Kitty graphics, but something more like a real terminal that is meant from day 1 to work with all the complexity of a Bloomberg terminal.

You could have had it in 2010, but it's a king hell mess to put together, and you'd sort of assume nobody was going to use it (because it's a break from VT100 compatibility). But that doesn't matter anymore! We are the music makers, &c &c.

I think a lot of very smart people assume we're going to build up from VT100 to something incrementally but significantly better (Ghostty is already materially better than anything I'd used prior). But I hope those people eventually set their sights higher.

Re: Stop Making TUIs

#420

Counter proposal: stop making gui, ONLY make TUI. + seamless cli integration + network portable + graphics (!!) with modern emulators + always themable + scriptable + works with any navigation modality + you can copy & paste entire segments of your window easily + easy to consistently theme + did i mention entirely network/os transparent? + blazing fast tongue-in-cheeck mostly, but i assure tfa, the tui serves useful…

TUIs and GUIs are both mostly bad for the same reason, you have to learn a new “language” of interaction for with each program, finding the buttons and figuring out how the designer thought the information should be hidden from you. Stop building user interfaces in general. A command line interface is best. If someone doesn’t want to learn how to talk to the computer, they can ask a chatbot to drive the CLI for them.…

> TUIs and GUIs are both mostly bad for the same reason, you have to learn a new “language” of interaction for with each program ... Stop building user interfaces in general. A command line interface is best.

A command-line interface is a "language" like any other. Each tool has its distinctive keywords, many have complex non-standard grammars (e.g., openssl, ffmpeg). And for more complex tools, the learning curve for this language is hilariously steep. I've been using ffmpeg on and off for two decades and I still feel quite helpless with it.

I think your argument makes sense, but it's just an argument for a standardized language, whether that's GUI, TUI, or CLI. Unfortunately, every other program or class of programs tries to innovate in some weird way. There's no reason why switching from Photoshop to GIMP should be so confusing, but it is.

Post reply on HN