Chaos Enhancer
Anything that injects non-determinism into the software usage.
An example is a list of the last five documents you opened. Seems to be great if you want to reopen something right away, but if you rely on it and the document you need falls to number six, it is a problem. A small list is very different from providing a searchable history. Suggested items are another example, as are some auto-completion features. Use at your own risk.
Invisible Feedback
When you do something but there is no feedback for a long time, so you are left wondering whether it worked or not.
Dynamic Scrolling
An early attribute of browsers was that they would render dynamically as the page came in. That was because the medium was very slow, so some people thought that partially rendered documents were a reasonable preview. But now in the middle of page rendering the vertical or even horizontal scroll position changes erratically as the Ajax calls trigger. So the user starts to read something, but it moves. They fix that, try to read again, and it moves again.
Deceptive Ease
So, the software takes care of things for you, right up until it doesn’t, then you are screwed. The programmers coded some easy parts but then bailed on actually solving any real problems.
Convient Disorganizer
A feature that pretends to help you keep things organized, but is actually structured to funnel you into just throwing everything into a disorganized lump. You initially rely on the feature only to discover later that it made things worse.
Retrograde Change
A change that looks on the surface like it was an improvement, but really a whole lot of other useful stuff was quietly stripped away. Common with software rewrites. The new version claims to be better, but it ain’t.
Incomplete Feature
A feature such as being able to manage some data, but part of the functionality is missing, like not being able to delete stuff. To really implement a complex feature, you need to implement all of the functionality. It’s not a real feature unless it is complete.
Feature Swamp
A software tool that has every possible feature under the sun, but they're all so badly thrown together that they are impossible to find and use appropriately. It can do anything, but you can’t figure out how, because it is lost in the swamp.
Blunder Search
An organizational feature that entirely relies on searching, except that the searching itself is really crude and totally untrustworthy. Blunder searches have often replaced far better ways of keeping things organized, probably because someone incorrectly thinks they are cool.
Unintentional Disconnection
When a device built to steal focus successfully disconnects the user from the here and now. A person talking on a cell phone while waiting in line (the conversation is no longer private). Someone lost in a mobile app while in a crowd (lack of awareness).
Useless Distraction
Anything that forcefully grabs attention or pops up while you are trying to do something else. Dancing baloney was an earlier, crude predecessor. If the user is in the middle of doing something they should be able to do it.
Money Trap
Any software that tries to give away just enough free stuff so that later it can extract a lot of money. It’s not altruism, it’s just a shallow, deceptive, marketing tactic. Any sort of slimy pricing surprises should be viewed negatively. If they claim it is free, or won't tell you how much it costs, you should avoid it. It's a trap.
Upsell Hell
Similar to a money trap, where there are landmines everywhere that you can inadvertently select that will try to trick you into some upsell that you don't need.
Summary
Variants mislead users. They are similar to lying. It’s always been very bad in software to show the user any wrong information, but it is equally bad to do some form of bait and switch. We should stop allowing these types of behaviors to get added into the code.
Summary
Variants mislead users. They are similar to lying. It’s always been very bad in software to show the user any wrong information, but it is equally bad to do some form of bait and switch. We should stop allowing these types of behaviors to get added into the code.