Live data from Hacker News

GUIs should be fully keyboard-driven

ckardaris.com

361–370 of 510 posts

Re: GUIs should be fully keyboard-driven

#361
post #48

Agreed, but what "prevents" it is that making a good keyboard-driven UI takes a lot of taste, extra effort to build it, and it must be revisited any time the UI changes. It's duplicated work. Ideally all GUIs/TUIs are usable with keyboard and mouse independently. A good example of this is when you have a fancy keyboard-driven workflow yet you can't even do the most trivial task without placing two hands on your keybo…

> extra effort to build it Also extra effort to use it. This is why we have the “how do I exit vim?” meme. A good user interface needs escape hatches so users can keep their head above water while they learn to swim. Most of what people want when they say keyboard-driven is closer to a cockpit (requires expert knowledge) than a general purpose UI.

> This is why we have the “how do I exit vim?” meme.

How to exit is literally the second thing `vimtutor` teaches you, after hjkl cursor movement.

Re: GUIs should be fully keyboard-driven

#362
post #123

Earlier quoted context omitted.

>That sort of design has fallen out of favor with newer frameworks, unfortunately. The new preferred style seems to be a wireframe that the dev chooses which parts fill in, and often only the barest of essentials makes the cut. Which ones, besides web frameworks pretending to be desktop ones? Most if not all frameworks I know support keyboard navigation.

I know of at least 5 different UI frameworks in different languages which are partially accessible or completely inaccessible. Some include Dlangui, Tkinter (although this is getting better), DearImGui... Really any UI that decides to draw it's widgets by frame. QT also has some accessibility problems. In apps made with any of these, they are either impossible to use with assistive technology (and therefore the keybo…

Dlangui is so niche that I am amazed to even see it here. DearImGui is intended for thowing together some slap-dash UI widgets for debugging things like interactive rendering.

Do Qt built-in widgets have huge problems? Inwould assume that custom widgets invariably do because approximately nobody writes any accessibility handling for them.

Re: GUIs should be fully keyboard-driven

#363
post #322

Earlier quoted context omitted.

So in none of the cases they do - it shouldn't depend on any tags, that's the whole point of bypassing the app devs! (not that the tags shouldn't exist, they can make customization easier, just that they shouldn't be necessary for any framework menu components) What complicated designs do you have in mind?

Maybe not complicated, but unorthodox. A developer who is not familiar with the correct design patterns may, for example, create a dialog using a FrameworkWindow instead of a FrameworkDialog. In that case the framework can not provide any automation, because the developer is not following the guidelines. I would argue that any sufficiently powerful framework also provides more ways to diverge from the "proper way", s…

But a framework can provide user keybinds conditional on that Dialog-As-Win being shown so users could reclaim some of that lost automation

And more pressure from more options doesn't follow, you only need to study if you actually want to diverge

Re: GUIs should be fully keyboard-driven

#364

Earlier quoted context omitted.

Another way to think of this is that everybody occasionally needs to do something unusual. But some people, due to their life circumstances, always need to do something unusual. And making things better for the always-odd folk is also a positive to the occasionally-odd folk. Which like, we're all eventually gonna be odd folk! That's what age does to us. But we should understand these accommodations as being a net pos…

Yep. In accessibility research, they call these "situational disabilities". When you need to open a door with your arms full of groceries, you aren't so different from someone who is never able to open a door. Accommodations that help people with permanent disabilities also help other people in the right situations, too.

My touchpad broke and I couldnt download the touchpad driver to fix it on the spot because there was no way to get to the download button with tab and enter, you had to click it.

Re: GUIs should be fully keyboard-driven

#365
post #177

Earlier quoted context omitted.

I had to keep accessibility in mind a lot in my previous job (web development for a university). The thing that I consistently found was that, the more accessible a website was, the better the experience for everyone , not just people with disabilities.

I 100% agree. I've been working on a component library rebuild at work and accessibility is a key focus, granted I don't think that would be the case if some of our contracts didn't mandate it but it's fiiiiiine I'm someone who enjoys this kind of work, especially when the target is a stylized drop down - I got to spend a week with the MDN page for the ARIA combobox open, trudging through all of the ins and outs of k…

My go to when implementing custom controls that can't be achieved in native HTML is the ARIA Patterns (https://www.w3.org/WAI/ARIA/apg/patterns/) site. That has clear documentation on the roles, states, and keyboard interactions for common UI controls. I've used it for things like a search bar with an autocomplete dropdown to get the keyboard interaction right.

Re: GUIs should be fully keyboard-driven

#366

A lot of comments on VIM here. Vim is a terrible example and a pretty bad design overall, objectively. Legends of great productivity with vim is highly legendary, i.e. fiction. Classic Notepad/Word and similar Guis that have been widely adopted in Linux windowing systems are clearly superior and that's why they're so widely and silently adopted. Not a lot of fanfare for hierarchical GUI menus with keyboard shortcuts.

This style of flamebait is at least as old as Vim itself.

Re: GUIs should be fully keyboard-driven

#367

Earlier quoted context omitted.

I worked on Microsoft’s Windows QA team long ago. My team used to have “No-mouse Tuesdays”: you were supposed to do all your normal work but only using the keyboard.

I guess that team was dismantled some time ago, with no on carrying the flag anymore. Modern windows is impossible to work on using just keyboard. Some mods & extensions do help. But the native experience is abysmal.

My touchpad doesn't work anymore. Why is it so difficult to connect a bluetooth mouse without a mouse? The "mouse detected, want to connect?" notification shows up ON THE SCREEN but I need to enter a bunch of shortcuts and navigate through multiple items just to be able to click yes.

Re: GUIs should be fully keyboard-driven

#368
I have really come to think that most GUI's are misguided, they seek to be easy and intuitive to pick up from the get go hugely at the expense of of speed of the user once they are familiar with the software.

Although where possible software should be easy to learn for lots of programs the user can expect to use the program lots those ones would improve productivity of the user by focusing on speed of use for the user not discoverability and intuitive. Again there is plenty of intuitive design that is also fast once the user becomes familiar with the system but the discoverability and intuitive aspect is weighted higher then speed of a knowledgeable user.

I do think lots of programs would benefit from being more CLI accessible and allowing users to build scripts that lots of modern propriety programs do not allow you to do, at best they have some script engine running in the program that you can call with more effort then it should.

Re: GUIs should be fully keyboard-driven

#369

TUIs are an abomination and most GUIs should just be web. CLIs should be preferred when available. Learning them pays you back when it's time to write a script or pipe massive amounts of data.

Doing GUI on web is obnoxious for people who want to stay offline for things that clearly don't benefit from a network connection (and where a network connection can really only introduce dark patterns). TFA is all about how GUIs should do the things that TUIs just do natively. If you don't like the aesthetic, it's just an aesthetic after all. If you want to use the mouse, you typically can in TUIs.

CLI pipelines are obviously not a real solution to, for example, arbitrary text editing, especially if you don't know what you want to change until you see the text.

Re: GUIs should be fully keyboard-driven

#370

I work on ADA a lot for my company. Please put on some headphones, turn on the voice assistant of your OS, put on some blinders, and run your app or website… no mouse, just keyboard. 1. Democracy is about access; make sure everyone has access to your software. 2. The keyboard allows folks with disabilities and power users to fly through your website/app… that being said… the second a tab is off, the person with a dis…

I have a traditional desktop app/GUI app, where I have a table (treeview) of words with their translations and pronunciation (like a dictionary). There can be thousands of words in there. Also there is a filter/search field, where one can input any string to filter the table while typing, or confirming pressing enter/return. The words in the table can be in any language, if the configuration of the application is adj…

[deleted]
Post reply on HN