β¨ Check out this insightful post from Hacker News π
π **Category**:
π **What Youβll Learn**:
This post has made it to the Hacker News front page.
See the discussion.
Last week I came across a post on Hacker
News that encouraged application
developers to stop making terminal user interfaces
(a.k.a. TUIs) and instead focus on graphical user interfaces (a.k.a. GUIs).
The post reached the HN front page and sparked a lively debate in the
comments section.
I think there is merit in both sides of the debate.
On one hand, I understand the GUI-positive arguments of the post author.
In theory, the capabilities of GUI application frameworks are a superset of the capabilities of
their TUI counterparts, so they should be preferred.
On the other hand, as a heavy terminal user, I also greatly appreciate all TUIs that allow me to
βstayβ in the terminal and fulfill all my needs.
But I want to oppose a recurring argument in favor of TUIs that in my opinion does not have a solid
foundation.
To paraphrase various commenters:
TUIs should be preferred because they are keyboard-driven.
While itβs true that if you randomly pick a GUI and a TUI application, the latter is more probable
to be fully keyboard-driven, this does not tip the scale in favor of developing TUIs over GUIs.
What it does is highlight the inadequacies of keyboard navigation in many GUI applications.
There is nothing preventing a GUI from being fully keyboard-driven just like β or even better
than β a TUI.
In fact, many GUI framework application guidelines explicitly encourage GUI application developers
to provide support for keyboard-driven navigation that covers the whole functionality of the
application.
For example, the GNOME Human Interface Guidelines state that just as it should be possible to perform every
action with a pointing device, every action should also be possible with the
keyboard
and that it should be possible to move around and interact with every part of your user interface
using the
keyboard.
This resonates with me as a user.
Being able to intuitively β and predictably β navigate around a GUI application with only my
keyboard gives me more incentive to choose it compared to its alternatives.
Knowing that, and when wearing my developer hat, I have to make sure that my
applications are keyboard-friendly.
For my first ever GUI application, Klisi, I invested some time
to implement keyboard shortcuts targeting the whole range of available actions.
Keyboard navigation is not that hard to achieve in most cases and results in an overall better user
experience.
It is not a matter of feasibility, but a matter of will on the application developerβs part.
The takeaway is simple.
Do not compromise on the user experience you provide with your application.
Strive to make it as intuitive as possible.
To that end, enabling full keyboard navigation should not be ignored.
β‘ **Whatβs your take?**
Share your thoughts in the comments below!
#οΈβ£ **#GUIs #fully #keyboarddriven**
π **Posted on**: 1788007799
π **Want more?** Click here for more info! π
