Ask HN: My family business runs on a 1993-era text-based-UI (TUI). Anybody else?

320 points by urnicus ↗ HN
Is anybody still using TUI applications for business?

My family company is a wholesale distribution firm (with lightweight manufacturing) and has been using the same TUI application (on prem unix box) since 1993. We use it for customer management, ordering, invoicing, kit management/build tickets, financials - everything. We've transitioned from green screen terminals to modern emulators, but the core system remains. I spent many summers running serial and ethernet cables.

I left the business years ago to become a full time software engineer, but I got my start as a script kiddie writing automations for this system with Microsoft Access, VBA, and SendKeys to automate data entry. Amazingly, they still have a Windows XP machine running many of those tasks I wrote back in 2004! It's brittle, but cumulatively has probably saved years of time. That XP machine could survive a nuclear winter lol.

I recently stepped back in to help my parents and spent a day converting many of those old scripts to a more modern system (with actual error-handling instead of strategic sleep()s and prayers) using Python and telnetlib3. I had a blast and still love this application. I can fly around in it. Training new people was always a pain, but for those that got it—they had super powers.

This got me thinking: Are other companies still using this type of interface to drive their core operations? I’m reflecting on whether the only reason my family's business still uses this system is because of the efficiency hacks I put in place 20+ years ago. Without them, would they have been forced to switch to a modern cloud/GUI system? I’m not sure if I’m blinded by nostalgia or if this application is truly as wonderful as I remember it.

I’d love to hear if and how these are still being utilized in the real world.

P.S. The system we use was originally sold by ADP and has had different names (D2K, Prophet21). I believe Epicor owns it now (Activant before).

P.P.S. Is anybody migrating their old TUI automation scripts to a more modern framework or creating new ones? I’m super curious to compare notes and see what other people are doing.

108 comments

[ 3.3 ms ] story [ 91.8 ms ] thread
> This got me thinking: Are other companies still using this type of interface to drive their core operations?

Probably a big chunk of businesses that developed their core systems before the PC era. I don't know if they still use it, but Avis Rent-a-car's main application used by its front-line people was a TUI like that, and the front desk people could fly around int it (like you said).

But most developers ape current trends rather than actually figuring out what would work best, so I'd guess very few user-facing TUIs are being built now.

Lowes and home depot come to mind. Their POS/terminals are just a terminal into an TUI. John Deere, kabota and other ag equipment service & parts providers still largely use a TUI.
Reminds me of this story from 2021

https://hackaday.com/2021/10/06/atari-st-still-manages-campg...

I have also met some people who worked at large old insurance companies. They originally used old mainframes and TUI, and the companies still exist. They told me of various things that were done. Of course migrations happened. And interfaces were built so that modern systems could speak with the old, sometimes via terminal emulator. And of course, some old systems still in use far beyond their time.

Interesting. What sort of database are they running and what is the frontend? Dbase? Foxpro? Turbo Pascal with BDE?
Does linux count? 99% of linux use-cases don't include xwindows.
Both of the lumberyards in my city are still running on DOS (or DOS emulation) for their systems, along with quotes printed on dot matrix printers (and no online price sheet). They’re so low margin and old school, I don’t think they get tech upgrades more often than once every two human generations except for new capital equipment, which sucks most of their surplus.
(comment deleted)
TUI were great for many business applications, specially those in warehouses or factories. They were easier to write and modify. Many business applications were migrated to web for little gain. IMHO.
Sam Ash (recently defunct U.S. musical instrument chain) infamously used a system called GERS with a TUI, the components of which IIRC were adapted from either a furniture or carpet store. Well into the 2000s, receipts were still printed in full size carbon paper (triplicate) on dot matrix printers. You'd get a gift "card" that was a literal greeting card with one sheet of that dot matrix printout stuffed in it.
I worked on a PCI-DSS project at a major consumer electronics retailer almost 17 years ago as an AIX/Solaris specialist.

At that time their 'web store' just put paid orders in a queue and a room full of humans typed the orders into the green screen which had all the actual inventory.

I remember using a TUI for a Bank in the UK, and them switching to a web-based javascript system. Because the TUI forced keyboard interaction everyone was quick, and we could all fly through the screens finding what we wanted. One benefit was each screen was a fixed size and there was no scroll, so when you pressed the right incantation the answer you wanted appeared in the same portion of the screen every time. You didn't have to hunt for the right place to look. You pressed the keys, which were buffered, looked to the appropriate part of the screen and more often than not the information you required appeared as you looked.

Moving to a web based system meant we all had to use mice and spend our days moving them to the correct button on the page all the time. It added hours and hours to the processing.

Bring back the TUI!

I remember seeing how past people were in 1-2-3 for DOS using the / menu back in the 90's.
I'm in the distribution/manufacturing ERP vertical in the US for SMB clients... yes we see it. No - not often

Most people are running on 90s-2000s era stuff rather than TUIs.

For the most part, it works well, and is not very costly.

Check out Sage100... flexible, cheap, on prem... runs everything from job / work tickets to inventory, purchasing, financials, payroll, etc.

Aint sexy but it works!

If it’s survived this long, it likely because it has years of small fixes to make it reliable and useful, and more than anything—- predictable for the user.

Modernizing will roll some of that back; I would only consider it if there’s a plan to be around for the years it will take to get good again.

I used to work for a major greeting card company that had a TUI based ERP system from the 90’s until like 5 years go. People were insanely efficient using it, but quite the learning curve to learn all shortcuts and commands.
Count your blessings.

And if anyone suggests rewriting it, fire them.

Many (most?) older retail businesses still use TUIs. They're reliable, consistent, and orders of magnitude faster than GUI systems.

When I worked ar Sherwin Williams, I got good enough with the TUI that customers could rattle off their orders while I punch it into the computer in real time.

It's absolutely crazy that a well designed TUI is so much faster. It turns out that if you never change the UI and every menu item always has the same hotkey, navigating the software becomes muscle memory and your speed is only limited by how fast you can physically push the buttons.

The program had many menu options added and removed over the decades, but the crucial part is that the hotkeys and menu indexes never, ever changed. Once you learn that you can pop into a quick order menu with this specific sequence of five keys, you just automatically open the right menu the moment a customer walks up. No thought, just pure reflex.

UX absolutely peaked with TUIs several decades ago. No graphical interface I've ever seen comes even close to the raw utility and speed of these finely tuned TUIs. There is a very, very good reason that the oldest and wealthiest retail businesses still use this ancient software. It works, and it's staggeringly effective, and any conceivable replacement will only be worse. There simply is no effective way to improve it.

Edit: I will say that these systems take time and effort to learn. You have to commit these UI paths to memory, which isn't too hard, but in order to be maximally effective, you also have to memorize a lot of product metadata. But the key is that it really doesn't take longer than your ordinary training period to become minimally effective. After that, you just pick up the muscle memory as you go. It's pretty analogous to learning touch typing without trying. Your hands just learn where the keys are and after enough time your brain translates words into keystrokes without active thought.

It's a beautiful way to design maximally effective software. We've really lost something very important with the shift to GUI and the shunning of text mode.

> Once you learn that you can pop into a quick order menu with this specific sequence of five keys, you just automatically open the right menu the moment a customer walks up. No thought, just pure reflex.

This works because you can 'buffer inputs' as the gaming crowd says. You can hit the keys and the computer reads them one at a time and does what you asked at its pace. Often these kinds of systems do run faster than the input, but when they don't, it still works.

It's hard to do that with a GUI, you usually can't click (or tap) the button before it shows up and expect it to work... and when it does work like that, it's often undesirable.

> Many (most?) older retail businesses still use TUIs. They're reliable, consistent, and orders of magnitude faster than GUI systems.

What is sad is that is doesn't have to be that way. But you describe is not an intrisic characteristic of a TUI, but of using keyboard instead of a mouse. You can write a webapp that performs in the same way (modulo the resources needed of course), but it takes extra time and once it works with a mouse there little reasons to put more work for keyboard user (it is not a selling point in most cases).

The main advantage of a TUI is that it forces to write the UI in a certain way, so you get the result automatically.

"We've really lost something very important with the shift to GUI and the shunning of text mode."

I use text-mode every day

Cannot speak for others but I lost nothing. On the contrary I gained faster hardware and faster network

Anyone who has ever worked with legit 10-key operators understands why many companies were loathe to migrate to modern graphical interfaces.

Some of the fastest manual data entry I've ever seen was by operators entering claim information into a medical billing system based on MUMPS.

Keep all hands and feet away.

I wrote the main application for my wife's business — she's a psychologist. That was only a few years ago, but as a senior lecturer in the more theoretical parts of computer science, I never really needed fancy UIs with flashy graphical effects. So I built a core engine and used the classic dialog tool as the thin user-facing layer.

At first, my wife was pretty disappointed — as a computer science teacher, wasn't I supposed to know how to build a “real” app? But a few years later, she doesn't want anything else. I even offered to have one of my students create a nicer UI without changing the engine or database, but by now she's completely used to the terminal menus.

The tool keeps a database, collects data through dialog forms, generates PDF invoices with groff, and launches Thunderbird when needed (to send invoices, etc.).

Leroy Merlin (French multinational retail company, home improvement and gardening products) still runs these systems at the PoS, at least in Spain.
Wegmans’ cash registers still use a TUI. It looks quite clean and friendly compared to the GUI-heavy slop of, say, my time at a major retailer. Speaking of nostalgia, my old gaming store also used a TUI for transactions, and it was highly responsive for anything local (and a PITA anytime it had to communicate with the CO). Also been exposed to a number of businesses these past few years who still use old AIX/Unix/TUI boxes for critical business functions, and most seem happy with them.

And therein lies the rub: if the process works, and modern software doesn’t necessarily offer any better value proposition, then there’s no real reason to migrate. For a lot of companies, the status quo might literally be all they’ll ever need, and IT’s role is to just keep it up, available, and secure as times change. Sure, I’ll side-eye a theater using a Windows box as an intermediary for Ticketmaster to run transactions against their old AIX rig collecting dust in a corner of a closet, but if it works and it’s secure, well, more power to them keeping costs down.

The advice I’d give is not to knock something just because it doesn’t fit current narratives around technology. Our jobs - first and foremost - are to build and support solutions that amplify productivity of humans in a way they can use without external support; whether it’s an ancient TUI or a modern GUI isn’t as relevant as its efficacy.

It's been a while since I worked at a bank, but most there core stuff was running in a mainframe and while "modern" front ends exist, the core work uses terminal access.

A key thing modern replacements lose is the input buffer: One can type multiple screens ahead. In a modern GUI application I can enter a shortcut, but then have to wait till the corresponding view/popup/window appears and registered it's event handlers till I can put in the next command. In a mainframe-style TUI, if I remember the sequence, I can type ahead the shortcuts and input for next screen(s) before it's ready. For the experienced user, who runs the same sequence often this is really efficient.

Costco still runs its warehouse operations on a TUI application running on AS/400 machines. At least the ones in Canada but I heard it's the same for the US warehouses.
I built my own ERP system for handling my business. It's also an TUI and has been here on Hacker News a few times.

About training new staff, there's actually studies done on it: https://pmc.ncbi.nlm.nih.gov/articles/PMC2655855/

My 2 cents is that GUI is good for exploring new software, while TUI is wonderful if you already have a mental map of what you're doing. So for everyday used software I would definitely hope that more TUI's where used.

Are you taking on new customers? I know a few folks hungry for old fashioned, on premises accounting and task tracking now that Intuit is pushing everyone to cloud subscriptions.

Ideally it would be a perpetual license so we can never have the rug pulled on business critical data, but I like the "x years of updates and support" model

You can contact me at my username + gmail if you wouldn't mind discussing further