Live data from Hacker News

Why TUIs are back

wiki.alcidesfonseca.com

261–270 of 443 posts

Re: Why TUIs are back

#261
post #29

I think part of it is also that we're able to still LARP as full developers of complex systems while vibe coding by seeing an interface that makes us look like l33t h4xx0rs even though we're just pressing continue 15 times

Bad UI plagued software development since ages immortal. The reason is not AI. Good UI design is a skill (or art?) and not an afterthought. But most people do not see it that way and that is why things are the way they are.

No, it's just misaligned incentives.

Companies make UI/UX to prioritise first 30 minutes of the experience, to keep user using it long enough that they stick with it. Not the 8h/day work the UI will get when a tool become pillar of your work.

Re: Why TUIs are back

#262
post #10

Earlier quoted context omitted.

I’m relatively certain it’s just this at the end of the day. Everything I see people doing in their custom built TUIs or claude/codex CLI can be done, likely even easier, in a simplified IDE or easier to scan UI, but it feels nice/cool/cyberpunk/work-like to look like you’re doing more. Everyone will have a “reasonable” explanation though for why they have to stay in the terminal even when they aren’t really coding a…

But GUIs are hard to built - mainly because of tech debts around all three major platforms. But nontheless displaying graphics is harder than outputting control chars.

You could whip up decently usable UI in Delphi far quicker than similar one in any TUI framework.

The problem is that world went away from that and into HTML/CSS/JS/DOM mess that makes simple UI things hard and complex UI things slow and/or hard, on top of the bloat.

Re: Why TUIs are back

#263
post #45

Earlier quoted context omitted.

Contrary to what the article says ("but Google gave up on the project before a real product was launched"), I think Flutter work continues and adoption is increasing

I don't really want Dart tbh

I dislike Dart, but it does work really well for Flutter. I think if you treat it as a Flutter DSL it's easier to put up with.

Re: Why TUIs are back

#264
post #254

We need lightweight HTML/JavaScript applications that aren't an entire web browser. You already have a web browser installed, you shouldn't need yet another copy of Chromium to run some HTML/JS files. Because browser makers cripple HTML files run from your own computer (can't fetch any files, even from the same directory), you are forced to start a web server just to run HTML and JS files from your own hard drive. If…

No we don't. Browsers are wrong abstraction for GUIs

Re: Why TUIs are back

#265
post #15

The best thing about TUIs is that they're so fast. They launch fast, run fast, and you use them fast. There's a learning curve for the bazillion hotkeys, because all it is is hot keys, but when you have it, you just fly. I've been reverting more and more: mutt (mail), newsboat (RSS), amfora (gemini protocol), gurk (Signal), chawan (web), and even trn (Usenet). My RAM usage is tiny. Everything is quick. GUIs should ta…

GUIs are being developed for first 30 minutes of use.

It seems that barely anyone thinks about what GUI should like for app you use hours at a time for days at end.

About only software that's half decent for it are IDEs (and probably some industry-specific niche software I'm ignorant of)

Re: Why TUIs are back

#266

Earlier quoted context omitted.

> cross platform That's one word that should never been used in an design meeting. None of the GUI I've used has managed to do this right. Even Emacs and Firefox. The platform are totally different (and in the case of Linux/Unix, there's a lot of different HIG competing). So trying to be cross platform is a good illustration of the lesson in https://xkcd.com/927/ The best bet should be a core with the domain with a U…

I want my applications to look consistent across platforms. Why would I want discord for example to look entirely different between MacOS and Linux? With the current state of things, once I use the app anywhere, I'll know where everything is on any platform.

Take a good look around and check how often people do really change computer platform. And you already have so many things that are different that the "same look" is just an excuse. Gnome, KDE, macOS, Windows does not have the same UX in their file explorer which is a basic utility that everyone has to use. Same with connecting to a WiFi and creating a new user account.

So why would you want Discord to be consistent, when you're mostly using the same desktop (or switch between at most two) for hours.

The thing is when HIG were followed instead of everyone trying to create their "brand", everyone knows where the common actions were. You learned the platform and then can use any app. With the new trend, you would only have one computer, but any new app is a new puzzle to figure out.

Re: Why TUIs are back

#267
post #42

Earlier quoted context omitted.

Why not instead have Linux just run Win32 applications?

That's really not a solution. You're not targeting the host OS for that, which instantly kills that approach for everything other than "we need this to run on Linux and don't care how." You're shipping all of WINE with it. You're sticking out like a sore thumb with Win32 widgets next to the rest of your GTK apps. Etc etc etc.

how's that any different than electron, it's also sticking out with all of its widgets being different than native

Re: Why TUIs are back

#268
post #230

I kind of wish we had HTML but for GUI. Imagine if you had a "gui" flag in terminfo and you could send an escape sequence on stdout after which you could send out screen updates as a stripped down form of HTML on stdout and receive events on stdin. I mean something that can describe the simplest bog standard Windows 95 application with a menu bar, side bar, dialogs, buttons, and proportional text. Otherwise we could…

HTML does describe GUIs though. Browsers are engines that turn a text description of a GUI into a rendered GUI.

I get your point, it does feel like there's something different, but I'd suggest that there is no black and white line, instead there's a spectrum, with fully native local UI at one end and fully declarative remote GUI at the other end. HTML and the web exist somewhere towards the latter.

There have been many attempts at points all the way along that line though, and every point comes with trade-offs. Performance degrades, OS-native components are eschewed, programming gets higher level, etc.

Re: Why TUIs are back

#269

I wish TUIs weren't back. I'll take a web interface over a TUI any day. No installing fonts that are too clever, no tweaking my terminal config to get it to display right, no guessing the navigation shortcuts that person thought was best, real text editing with OS standard text navigation, better integration with my password manager, text expander, etc... I live on the CLI, I have one a hotkey away, but please, techn…

Web interfaces aren't any better. They're designed to for aesthetics and not functionality. Not to mention the fact that they all have their own UI idioms that you have to pick up on.

Re: Why TUIs are back

#270
post #10

Earlier quoted context omitted.

I’m relatively certain it’s just this at the end of the day. Everything I see people doing in their custom built TUIs or claude/codex CLI can be done, likely even easier, in a simplified IDE or easier to scan UI, but it feels nice/cool/cyberpunk/work-like to look like you’re doing more. Everyone will have a “reasonable” explanation though for why they have to stay in the terminal even when they aren’t really coding a…

It is much easier to quickly generate a usable tui for simple monitoring and management than a usable gui. Go + lipgloss + bubble tea and a single prompt will give you whatever you need in a minute or two - much faster to compile and no platform specific issues. I can’t speak for anyone else, but I do a lot of work in the terminal still and I’d much rather stay in that context then open up yet another window

Can get a GUI with the same prompt if you tell it to use TCL/tk instead of Go + Charm stuff
Post reply on HN