These truths seem to touch upon a some aspects of usability and UX principles, but its clear they were written from a personal perspective. Some fall into the false consensus effect: assuming everyone thinks and behaves the same as Ross.
The best ones are simplifications of usability heuristics or accessibility standards.
Lets Go Through These One by One
The GUI Should Look nice enough so that you never get sick of it
A daunting task. Design trends evolve over time as individuals and societies seek variety. Look at interior design of the 60s, 70s, 80s, and 90s. Many of these well-designed homes look dated and, while well designed, people will get sick of them.
For a designer to achieve this is the equivalent of a chef creating a nutritious recipe that people are willing to eat for every meal. "Never get sick of it" is overly ambitious.
There is no perfect GUI for Everyone
Agreed. The perfect GUI for a single individual will be defined by:
- Their experience with GUIs all their life
- Their knowledge of interaction (digital and physical)
- Their upbringing and culture. And exposure to other cultures.
- Their behavioral preferences
- Their critical thinking skills and fixed mindsets
- Their ability to perform free assocations
There are no individuals who exist that are identical in all of these aspects. (Maybe identical twins? That would be worth investigating...)
A perfect GUI is achieved only by building it for one person while ostracizing all others.
There are lots of things that are ideal for the majority of users
This is vague so it's hard to prove or disprove. Many interactions are useful for users as those interactions meet the users' expectations. Typically those expectations are met by convention: the majority of users have seen radio buttons so radio buttons are easy to use. "Ideal" would presume perfection of task efficiency and satisfaction for a user. You can achieve this individually, but not for a majority of people (see previous rule).
The GUI should get out of the way when you don't need it
Agreed. Center stage design patterns exist to promote the content over the GUI. There are various ways to have a GUI "Get out of your way". Hide/show on demand is an obvious one, but placement is important also. Likely while reading this you forgot the sections navigation on the left exists (until I pointed it out). This is using selective attention and placement to have the GUI get out of the way without any movement.
The GUI should be as efficient as possible if you know what you are doing
Hard disagree. Task efficiency is often very important, but there are cases where inefficiency is a necessity for user goals.
- Inefficiency Example: Digital slot machines could easily display "WIN" or "LOSE" without the spinning icons. But where is the fun in that? The inefficiency brings joy. There are many other entertainment examples where inefficiency is appropriate.
- Inefficiency Example: A user has to type "Delete" to permanently delete an object. This inefficiency is designed to slow a user down and prevent mistakes.
Also, the "if you know what you are doing" is a bit of a loaded statement. A user should be able to get the task accomplished instead of having to learn to use the tool.
The GUI should activate when you want it and NOT when you don't
What? I don't know what activate means in this context. I will simply say that nearly every usability heuristic evaluation includes a section about the user being in control of the system over the system controlling the user.
It shouldn't be easy to do something you don't want to by accident
Agreed. A lot of error handling, input restrictions, input placement, and other interaction design patterns exist to prevent accidents.
I would recommend an addition to this "truth" with this: errors should easily be undone. Even a perfect GUI cannot prevent mistakes, but it can offer a way to undo them.
If your not typing, switching between the mouse and keyboard should be kept to a minimum
Disagree. Switching between these inputs does take time and asks users to change how they think (you don't physically move the keyboard the way a mouse is moved). That said, there are better input efficiencies than avoiding switching:
- Pure keyboard use should be possible. For accessibility reasons and for physical availability reasons
- Gamers use mouse and keyboard, one for each hand. No switching is involved. Personally, I often browse the web with my mouse, but keep a hand on the keyboard for changing windows or tabs quickly.
You need multiple mouse buttons for maximum efficiency
Disagree. With each input tool added, the design increases in complexity.
Consider touch devices. They are one "mouse button": the finger. It can press, long press, swipe, double press for various actions. Yes, those actions besides press will have to be discovered, but the GUI should either teach these or make them optional for more experienced users to work more efficiently.
This "truth" appears mired in personal preference leaning towards more expert users.
Having text against a low contrast background is a terrible idea, same goes for solid white spaces mixed with really dark colors
I don't understand "solid white spaces mixed with really dark colors" so I won't address that here.
Otherwise, this is touching on the basics of accessibility. There are plenty of color contrast checkers out there that will validate acceptable foreground and background contrast for WCAG AA or AAA criteria.