IMPORTANT: DON’T USE KISS!
I know it sounds right. But the philosophy has a huge problem, that only comes out with time. But many people are too short-sighted (most businesses unfortunately), and will not notice it, before it is too late.
See, the original basic goal is/was, to make it as efficient
to use as possible. Meaning that you can do the most with the least effort.
The problem is, that some people oversimplified
this, by saying “simple
” instead of “efficient
The key difference is, that higher efficiency is always better, while higher simplicity can make it worse too.
That’s because you can simplify things, while making them less
See your users as a Gaussian distribution curve on the intelligence scale.
Now psychologically, the more intelligent people simulate more possible outcomes in a shorter time, and hence are not so sure of themselves. They know in how many ways the could be wrong. While the less intelligent ones usually are very sure of themselves, despite not having any clue at all. They need to, to be able to survive at all. So it’s not anybody’s fault.
But people who are very sure of themselves, also act more confident. Or in other words: They are louder!
(Which intelligent people are too, if they are very sure of something even after all the thoughts.)
This results in the developer getting a lot louder and more feedback on the negative side from the lower end of the Gaussian curve.And here is where the error in most people’s behavior happens: They think that if they just make it simpler, those people will be happy.
But what they don’t see, are the side effects of this:
1. It will become less efficient (=slower, more dumbed down), and hence harder to use, for the upper end of the curve.
2. People who were even below the lower end, now start using it, and complain too. (“Nature just invents better idiots.”
So in essence, the whole curve moves downwards, and the amount and source of complaining stays the same.
What that results in, in the long downwards spiral, are horrible things like the well-known Clippy, the hated “Assistant” from MS Office and MS Bob. But also things like the iPad not even having a file manager, and Windows hiding all its system folders etc. Which works, until something happens that you did not expect. Then they are completely stuck, since they never understood what they are actually doing.
That doesn’t mean that interfaces like VIM or Emacs are any better. They are just as horrible for “normal people”. Only in the other direction.The simple thing is, that the interface has to match the users’ experience. And transform itself over time, when the skill of the user grows and decays again. But no matter where in the curve (and even beyond) the user is: The interface should always be the most efficient one possible.
Especially for experienced people (remember: they are underrepresented), who no longer want to click trough a dozen stupid wizards to do, what would only require two shortcuts, filling in a couple of values in a ini text file, and no mouse at all.The solution
is, so have multiple levels of functionality and options. Where there are always 3 levels „active“:
• One level as the current used level.
• One more experienced level, that as only hinted and does not clutter the interface. So the user can pick up on it, in case he needs it. (A good example are: Shortcuts everywhere! Show them in the menus etc!)
• One simpler level, that is visually a bit separated (e.g. more colorful and bigger than the rest) and prominently placed. (A good example are big buttons that run wizards. Another good rule is: Explanatory (longer!) tooltips everywhere!)
But that is only half the deal. What’s required on top, is a mechanism that helps the user, to switch between different levels. Preferably allowing different levels for different sets of tasks that your app offers. Conclusion: Keep It Efficient, Not Stupid!
P.S.: I’m sorry that this landed in a separate thread previously. Fixed now.