On usability, free software and perfection
by Ploum on 2012-11-16
For centuries, progress was about to make possible what was not. All the technologies, all the inventions were done with the very idea of « Make something that was never done before, that was considered as impossible ». It worked so well in the last decades that we faced an new challenge: things were now possible but incredibly hard to do. Only a few educated minority was able to use the technology.
One of the solution to that problem is to train people. That’s the solution we choose for cars. Driving a car is incredibly complex and dangerous. Yet, most of us manage to learn the basis in a few months. Some kill themselves (and sometimes innocent beings). But we don’t mind and don’t even consider it as a technical challenge, merely an educational one.
Another solution is making the technology easier, requiring less training. This is the path we are following with electronic devices. This became a brand new field of engineering: usability. Ten years ago, a three buttons dishwasher came with a hundred pages manual. Now, your full fledged computer come without any manual at all.
Not graphical design
Usability is often confused with graphical design. A lot of graphical designers consider themselves usability specialists. This is a very common mistake. Graphical design is about making things pleasant, pretty, cool. Graphical design follows trends or marketing hype. Graphical design is about taste. Usability is about making something as easier as possible for a target population. You can have something easy to use which is ugly. You can have something very cool and pretty but incredibly hard to use. The only intersection between the two is that people will pay more intention and will be more volunteer to learn when something is pretty and shiny. Graphical design can help usability but they are different fields.
Usability is now the major area of progress for consumer devices. The form factor of any new modern device is only shaped with the constraint of the user interface. A TV is a screen. A laptop is a screen and a keyboard. A phone is a touchscreen. There’s no real breakthrough that can be done on the technological level : a bit thinner, a bit lighter, that’s all. On the usability side, all has to be invented.
Historically dismissed by free software
Yet, usability is the most forgotten area in most free software projects. The reason is simple : technology is about making things possible for at least one person on earth. Like breaking the sound barrier in free fall. Usability is about giving it to as many people as possible.
Free software hackers are, in majority, an educated elite that does not need usability. They are trying to make possible something that was not. As soon as they can do it, job is done. They don’t understand that some people can’t follow them. They don’t realize that they are the one man free falling from stratosphere. Awesome but completely alone.
Sometimes, they care enough about graphical design. Because, like everyone else, they like pretty things. The free software is improved and, indeed, looks cool and shiny. The hacker feels that his software is better to use. He likes it more and, by mistake, he feels that he improved the usability.
But it’s not true. The technology is still out of reach for the vast majority of the population.
A mandatory requirement
The direct consequence is that most free software projects will stay confidential, with a very limited audience. The lack of success in the mass market will create many excuses: « people are dumb and lazy », « big monopolistic corporations are evil and killing alternatives », « people don’t understand the ethical implications ». More positively, it might be « We need to do more marketing ».
Famous examples are Status.net, Bitcoin, Diaspora or even Debian as a desktop. Those projects are all in their stratosphere. Just try to raise the usability point in those communities and you will always receive the same answer: « But it’s easy, you just have to do that and that. It cannot be more easy than that. » or, even worst, « we don’t want to become usable, we only target the elite ».
Those projects are either failing to understand usability or arrogant. They don’t make their technology available. Free software hackers are always complaining that the source are not available or that project X is not free enough. The truth is that not being usable is a lot worse. Because it means that your project simply don’t exist for the vast majority of mankind.
Perfection or enabling?
In that regard, Canonical, Google, Facebook and even Apple are more ethical than Debian or the whole GNU project: they make possible something that wasn’t for billions of people. Not in a perfect way but, at least, they do.
People are facing the choice « doing things in a far from perfect way » or « not doing anything at all ». Guess what? Progress rarely comes from « not doing anything at all ».
EDIT : it should be noted that, in French, « design » means « graphical design » and has no other meaning. It should be understood in that way in my post.
Picture by Giovanni