The reason is that once you know the codes, you can navigate and enter data at a genuinely incredible rate. If you've ever watched an experienced operator on one of these applications you'd be amazed. For one loan processing application, the terminal was an order of magnitude faster than the Web-based interface that was being deployed.
The key here though, is "experienced". This is someone who has developed the knowledge and muscle-memory to operate at that speed. This also makes the system more brittle (and often harder to change). Critically, it also means it takes a lot of training and time for people to be productive.
The reason many big organizations dropped the terminals - they wanted to be able to train people quicker, not because it was more productive.
The other key is that those people and those "POS" style apps do very little things -- mostly a single task like e.g. bank accounts management.
Yes, it's very fast to someone experienced with it.
Yes, the learning curve is incredible.
No, it will never change because the stakeholder (ie. the developer) is happy with it.
Good modern UI design uses common metaphors that make it easier to learn new systems that are used with mouse if you are familiar with metaphors. They are designed for the beginner. There is nothing that prevents modern UI designer from learning the lessons from old terminals and carefully crafting the application so that experienced users can use different screen layout with fast keyboard navigation. It's just very rare.
I don't think we've even begun to develop optimal user interfaces, and we won't as long as the "common metaphor" idea holds sway.
Think what it would be like if we applied that idea to the real world, so (e.g.) hammers, can openers, toilets, and bulldozers all had to operate using a common set of widgets. It's hard to envision, but I would bet a very large sum of money that the result wouldn't be optimal for any of those jobs.
That's what we've done with computer UIs.
Unfortunately, I don't see any real way out of the trap.
Some new device or application will introduce a new metaphor or technology that eventually trickles into existing software. Unfortunately, last time this happened that new tech was touchscreens, and I fear voice is next. These are both regressions in efficiency for lots of tasks.
Only apps don't do that. Paint apps use brushes and canvases, spreadsheet apps use cell grids, music apps use notation views and piano rolls, writing apps use document screens, games use whatever invented controls and worlds, etc.
What is common is that a lot of stuff we do involves mere text and symbol manipulation (buying tickets, reading news, checking sports scores, entering customer data, etc). For those we use the same widgets, yes.
But in the real world we do build all kinds of stuff, from cars to boats, and from skyscrapers to bulldozers, to pinballs with nuts, bolts, screws, wires, glass panels, etc., too. A hammer is as useful for hanging a frame as it is for building a house.
No, they use skeuomorphic simulations of those things.
(edit, to expand a bit)
We have the capability to put anything on the screen that we can imagine, but we're not doing that. We're limiting ourselves to bad simulations of real-world tools. The "brushes" are just more of the same thinking that gave us "desktops", "file folders" and "trash cans". As others have noted, those things do make it easier for newbies to learn the system, and yeah, that's a point in its favor. It's just disappointing to me that we haven't come further than we have with respect to truly innovative interfaces.
You even see it in VR! You get the same menus, buttons, and whatnot, but, hey, now the components are rendered as high-resolution stereo images. Yay! I guess?
No, they don't. You don't paint moving some virtual drawn brush gizmo, taking to some "virtual water box" to wash it out, etc.
You paint moving a cursor (whether it has a brush icon is irrelevant and not skeuomorphic in the UI sense), and you control properties of the underlying line (color, spread, width etc) with some of them going far beyond what a real world brush can do.
>We have the capability to put anything on the screen that we can imagine, but we're not doing that.
That's because it's not convenient. Except if you have some cool new idea we haven't tried.
How does a user interface? For a web site, primarily with a mouse. So, single touch input. For green screen they have an array of dedicated individual simultaneous input devices (known as "keys"). In addition, green screen often provides near-immediate response, whereas touchscreens can suffer from lag either in the physical interface or the unfortunate multiprocess operating system. Finally, green screen was designed to step quickly through the interface, where web requires lots of hunting around for what you want to do.
You simply can't interface better with an application than a single process dedicated application using fixed multiple inputs with immediate response. It's like web pages are a cart and horse and green screen is a race car.
Anyway, the place still used green screen terminals in 2006 (Mmm, with mechanical keyboards attached). In most cases, the only input required was a single number for each response, so once I'd memorized a script and the responses, I could get through a survey without looking at either the screen or the terminal.
Eventually the company shut down, and needing another job right away, I went to another polling company, who used a web interface for some reason. So there I had to use a vintage mouse (...which obviously did not bring the same joy as a vintage keyboard) to click radio buttons and check boxes and was, frankly, just a painful experience all around.
So, yeah, I agree, there are a surprising number of instances where an old terminal UI is significantly better.
1. Multi-column layout with independent updates. Useful for presenting prompts and help information beside the main transaction window.
2. AJAX-style dynamic updates on data-selection.
Other than that there were few advantages to Web UI. In fact we had to spend some time developing Javascript functionality such as tab-order and F-key capture that are elementary, 'free' features with green-screen and which greatly improve transaction speed.
Any 5250 terminal emulator from the 1990s onwards offered copy-and-paste and multi-session capabilities so a Web UI didn't offer advantage there.
So, if it's an application where the end user spends a lot of time, a green screen can be more efficient. Things like a call center, or the check-in counter at an airport, etc.
It does depend on a good text and boxes ui though. Green screens had things like pulldowns, copy/paste, etc.
Until you get carpal tunnel syndrome.