Live data from Hacker News

Why TUIs are back

wiki.alcidesfonseca.com

381–390 of 443 posts

Re: Why TUIs are back

#382
post #28

Only for software engineers who are already familiar with terminals. Most non tech people I know and in my company absolutely hate TUI. Even a fraction of software developers who spend most their time outside terminals (especially those that are on Windows and/or use specialized tools/IDEs) prefer to avoid TUIs as well.

And for those of us devs, they never really went anywhere. vim was the most popular editor on HN 15, 10 years ago, still very popular 5 years ago, still popular today.. and that's just an editor, all the other tools like top and its descendents never went away.. I'll believe "TUIs are back" or in some kind of uprise when I notice my non-developer friends and family using them for anything. The most dominant UI today is the mobile app, that's not changing. Limited to professional use (i.e. doing work for someone) and not all use, TUIs aren't touching either web apps or native GUIs either.

Re: Why TUIs are back

#383

Earlier quoted context omitted.

Claude code amplified the trend hundred fold but there was already a significant increase of TUI since the days of go fzf, rust ratatui and python rich. My bet would be a desire to do away with heavy browser based UI and the curiosity of trying to test the limits of terminal based rendering.

TUI is popular because a) there are no native GUI frameworks for simple tools that are easy, fast, and simple to develop in at the same time, and b) low fidelity lets you pretend being a UI/UX developer without really being one. The rest is abysmal. It's not automatable at all (the article is wrong on that point), less readable (monospace/no images), very limited (try making a DAW in it...), relies on a ton of ancien…

"there are no native GUI frameworks for simple tools that are easy, fast, and simple to develop in at the same time" - Tcl/Tk does all that just fine for me.

Re: Why TUIs are back

#384

Earlier quoted context omitted.

I is tab ('\x09' or '\t') and J is new line ('\x0a' or '\n'). These Ctrl combinations follow a predictable linear mapping to the control character section of the ASCII table. Basically Ctrl subtracts 0x40, so I is 0x49, Ctrl I is 0x09.

TIL: Ctrl subtracts 40. (28 year emacs user)

on a linux box try `man ascii`

Re: Why TUIs are back

#385

CLI. Wtf is a TUI? LLMs say it has some to do with interactivity in a menu or something, but believe me, we had this all in the 80’s. Nothing new here, but the truth is the CLI is better faster and cheaper. Pick all three.

CLI is "run a command, get output, drop you back at your shell prompt". TUI is a full-screen interface inside the terminal which you stay inside of, no longer interacting with your shell.

I think that’s what we used to call a program. Things like vi and wordstar seem like they’d qualify.

Re: Why TUIs are back

#386

Because nobody is investing in native UI development. Electron is proof that if there were a simple to use GUI stack that companies would adopt it.

To me the worst case is trying to develop some small utility like a tool to search in files using regex. Because if you are developing something large, the amount of time you spend dealing with packaging, distribution, etc., is small and you don't care about file sizes. But if I want to, say, develop the app for Windows. That is easy. You get a tiny binary to just opens a form and runs with a double click. No install…

"worst case is trying to develop some small utility like a tool to search in files using regex" - you mean something like: https://wiki.tcl-lang.org/page/ReacTcl+example%3A+Grv ?

This will run on Windows, Linux, MacOS, and Tcl's starkit/starpack system makes it easy to generate a single executable file for each OS that can just be copied over and run without any installation needed.

Re: Why TUIs are back

#387

Earlier quoted context omitted.

No it can never be the same. The terminal is about not having to switch from the keyboard. My entire workflow is tmux panes with different TUIs and terminals. Not to mention performance, with a neovim IDE you may have tens of them open in different panes for example. I wouldn't try that with VSCode.

You can make even lighter weight and just as keyboard driven GUIs. The only downside, as you say, is them not integrating with Tmux.

Projects like opencode are making the distinction between GUI and TUI almost meaningless. And that "only" downside is a massive, deal-breaking one. At this point I only have a browser besides the terminal, and I can see that going away soon for the most part thanks to LLMs.

Re: Why TUIs are back

#388
I love TUIs because so much of my dev career was ssh/mosh/tmux to remote servers and working where the fast network bandwidth and computational crunch lived.

I was vibe coding a layer on top of textual last week that allows me to plug in both interactive and information display Python functions into a TUI grid. Really simple stuff, with textual doing the heavy lifting.

Re: Why TUIs are back

#389

It's nuts that software developers are allowed to design user interfaces at all. They're incapable of making a user interface that isn't text. It's like if plumbers designed houses, they'd make all the floors slope downward, because that's the easiest way for pipes to run. Oh we need multiple windows we can move around/resize? Let's make them text windows. We want people to be able to quickly select options? Yeah mak…

Wtf are you talking about? Give a developer a decent design system, and we are good to go.

Re: Why TUIs are back

#390
post #369

Earlier quoted context omitted.

Many "non-technical" folks who have interacted with virtual 3270 terminals for all sorts of mission critical tasks would disagree sharply with that assessment. And those are essentially TUIs.

Do they use it for generic computing stuff, like, reading and replying to emails, or specific tasks?

Yup.
Post reply on HN