Live data from Hacker News

Stop Making TUIs

sockpuppet.org

541–550 of 579 posts

Re: Stop Making TUIs

#541
post #513

Earlier quoted context omitted.

> 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. We are users. > Why can't developers understanding that GUIs and TUIs both have their usage, it just depends on the task? Isn't that the case for most TUI apps? They tend to serve quite specific purpos…

> We are users. In a dual role, I would say that the most impactful aspect (being a developer) matters more. > Nobody writes a WYSIWYG word processor in a TUI. But at the same time people write all sorts of other apps that could hugely benefit from a GUI. I seems like if the output itself is not graphical, TUI-enthusiasts won't acknowledge the advantages of a GUI layer, while only bringing in arguments why they can i…

I don't think a TUI is easier tbh. It's certainly more economical on resources, that's for sure. Really amazing programs running in 35k or so, compared to hundreds of MB for a whole electron stack. The more decent platform native and Qt apps are nicely in the middle but they are kinda becoming extinct. Even Microsoft is just serving us electron slop these days (though they call it something else)

But a TUI needs dedicated understanding of terminal toolkits. That's not easy. A GUI is much more easy mode with electron, a bit of javascript and a GUI toolkit to design the UI, easy peasy. To me the TUI is the hard option.

I really enjoy TUIs though. I wish there was something like vscode in TUI. I like the responsiveness and the no-nonsense. No logos and other commercial bullshit, no huge amounts of whitespace that UX designers consider "best practice", just highly dense data.

Also, I've worked with some of these designers and their holy best industry practices have nothing to do with anything that benefits the user. They're all like: "Is the logo clear enough", "Does the user get drawn to the parts that make us the most money (like ads or premium articles)", "Is the user finding the thing we want to promote".

To me all websites should look like Hacker News does. Not like a "modern" newspaper site does.

Re: Stop Making TUIs

#543
Here's the part that makes the most sense to me:

> Meanwhile, if I build a TUI, I can be reasonably sure that Linux users are going to get the same experience I have. That’s not nothing. But remember: I’m not really building applications for other people to use. I’m building them for me. TUI affordances are an awfully big hit to take to get Linux users of programs I don’t even want to publish.

If we're just talking about personal or throw-away apps, yeah I'd probably just go native. But for things that I plan to use across platform, via remote shell, and for many years to come, TUIs has a huge advantage. I also think there's something powerful about the constraints of a terminal and the type of solutions it's led to. Constraints breed creativity, and in the case of terminals they also naturally steer towards high-performance, low-latency, and rapid interaction by experts. The fact that these things were born out of the limitations of early computing doesn't automatically make them outdated, to the contrary, it gives them staying power and portability.

In my mind there are crystal clear advantages to GUIs, TUIs, and raw CLI. I've used all of them extensively over the decades, and I've been impressed with the advancements in each over that entire time. I would never presume to tell somebody how to solve their own problems—if you're excited about something just go build it in whatever way makes sense to you.

Re: Stop Making TUIs

#544
TUIs are great and I shall continue to write and use them while I can still see a screen! My use case is to mainly use Termux on my ruggedised Android tablet, simply because I can't install a native Linux on it. I like the speed and efficiency of a TUI as well as the fact that I can maintain it with vi or nano. I've installed XFCE4 on it for fun but the extra, necessary library baggage isn't really worth it, TBH. It also means I can use the same stuff on my Onion Omega 2 SBC with minimal tweaking.

Re: Stop Making TUIs

#546
post #470

Earlier quoted context omitted.

Of course there is, waypipe, ssh -X, wayVNC on a headless cage (or sway with appropriate config) session.

Again, we have the technology but it's not how things are done, usually. What do you run like that day to day?

I use waypipe casually if I have a project on my desktop that I want to work on from my laptop. I even use if I just want to get a Bookmark or Tab from the Desktop PC, since I never bothered to set up any syncing service. Only for nvim I use it's own client/server implementation, it's a bit less latency-affected by the 1%s.

Waypipe is production ready & easy to use. If there doesn't exist a program making use of it for the average user, then it's because nobody saw a it as a solution for any occurring problem yet.

Re: Stop Making TUIs

#547
post #208

Earlier quoted context omitted.

No, but I want to click to place the cursor in my 10 line prompt wherever I want. I want to double click to mark words. I want to use a scroll bar. I want to copy paste properly and not "23 lines pasted". I don’t want to read docs to find all keystrokes the TUI supports to achieve what I want.

You can handle mouse events in a TUI https://ratatui.rs/concepts/backends/mouse-capture/

And I want to read proportional fonts, like just about anything except terminals already uses.

Re: Stop Making TUIs

#548

Earlier quoted context omitted.

> To get a good terminal UX, I think the answer to this is probably to throw all that compatibility mess away and redesign a modern terminal protocol that bakes in accessibility, regions, scrolling, selection, proper keyboard, etc. Why not just… a GUI framework or layout that’s meant to be keyboard driven and information dense?

It’s trivially easy to run a TUI in a container. Not so much with GUIs. And, since I run as much as possible in containers, and as little as possible on my host machine, I much prefer TUIs.

Wayland runs over a UNIX domain socket you know.

And if you meant "virtual machine" or "cloud" by saying "container", `waypipe ssh myhost`.

Re: Stop Making TUIs

#549

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…

You can make a bad UI with any of TUI, GUI or WebUI. There's no real reason a GUI app couldn't take the exact same keyboard input as a TUI app did.

Consider this: Grocery store cashier interfaces are graphical these days, yet they're still optimized for fast input.

Re: Stop Making TUIs

#550

Earlier quoted context omitted.

What you're comparing is really "keyboard-driven" via "mouse-drive". A GUI can be keyboard-driven and as fast as a TUI. The sad truth is that the status quo for GUIs is absolutely terrible, and most were rushed out and not properly tested to check if they're really usable without a mouse.

> The sad truth is that the status quo for GUIs is absolutely terrible, and most were rushed out and not properly tested to check if they're really usable without a mouse. This is the key point. No platform UI paradigm focuses on keyboard navigability and speed, all focus on mouse and visual effects for discoverability in a pursuit to dumb down the user experience enough to make it usable for everyone, breaking power…

They used to. OS/2 and Windows both implemented the very keyboard-oriented CUA and focused on that style of use.

https://en.wikipedia.org/wiki/IBM_Common_User_Access

I think the real problem is as computers have become more mainstream, they've become more subject to whims of fashion. Consumer-focused companies don't want to be seen wearing last season's UI paradigm. Just watch Apple change things around...

Post reply on HN