GUIs should be fully keyboard-driven
A recent Hacker News post suggested that application developers should abandon terminal user interfaces (TUIs) in favor of graphical user interfaces (GUIs). The article generated significant discussion in the comments section. The author acknowledges the validity of both perspectives, recognizing that GUIs offer more capabilities than TUIs, but also appreciating the convenience of using TUIs.
However, the author challenges a common argument in favor of TUIs – that they are inherently keyboard-driven and thus superior. While it's true that many TUIs are fully keyboard-driven, this fact alone should not determine whether developers should create TUIs or GUIs. The author points out that there's no reason why a GUI cannot also be fully keyboard-driven.
In fact, many GUI frameworks actively encourage developers to create keyboard-driven interfaces. The GNOME Human Interface Guidelines, for instance, state that every action in an application should be accessible using the keyboard, just as it would be with a pointing device. This reinforces the author's belief that keyboard navigation in GUIs can be just as intuitive and efficient as TUIs.
The author, as a developer, has implemented keyboard shortcuts in their first GUI application, Klisi, to ensure full keyboard accessibility. They emphasize that achieving full keyboard navigation is not necessarily difficult and significantly improves the user experience. The challenge lies in developers' willingness to prioritize this feature.
The author concludes that developers should not compromise on user experience and strive for an intuitive application interface. They suggest considering text-based user interfaces as an alternative to GUIs, as they can offer equally efficient keyboard navigation.
Written by urgent.news from Lobsters's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.
This story
This is one outlet's version. Read the fullest account.
- GUIs should be fully keyboard-driven ckardaris.com