Should Operating Systems Be Intuitive?
How do operating systems and breastfeeding figure in the same discussion? One is intuitive and the other isn't -- or neither is, or both ought to be, depending on your point of view (and perhaps how your mother fed you). Intuitiveness shouldn't be the goal of all software, says Slashdot blogger Josh Ulmer, lamenting, "I for one miss the grizzled hobbyist who made Linux a fun toy years ago."
It's been a busy week in the Linux community, what with all the activities going on over the past few days.
Software Freedom Day, the Atlanta Linux Fest and the FSF's mini-summit on women in FOSS all took place last Saturday, and then LinuxCon started in Portland just two days later. Not to mention Russia's newly declared official holiday the week before: Programmer's Day!
This is definitely a much busier social calendar than Linux Girl is used to.
Interesting news and discussions have emerged on virtually all fronts, too, including the still-raging inferno of a debate over sexism in FOSS, word that Ubuntu 10.04 will be called "Lucid Lynx," and some pointed words about the Linux Foundation's first-ever LinuxCon.
Keep that caffeine coming!
'It's All Learned'
Despite all the action going on in the bricks-and-mortar world, however, Linux bloggers haven't been too busy to engage in discussions of a more theoretical kind.
Case in point: Carla Schroder's recent post on Linux Today contemplating the question of intuitiveness in computers.
"'Intuitive' has nothing to do with computers," Schroder wrote. "It's all learned."
Referring to the legions of Windows users switching over to Linux, she added, "our mission, for those who choose to accept it, is to understand that de-programming these proprietary refugees is Job One.
"Somehow we must communicate that some actual study and learning are required for all platforms and devices, and that whining and wailing in despair don't accomplish much."
'Limited Task-Set Mouse Clickers'
Nearly 20 comments had greeted Schroder's post by Wednesday on Linux Today, in addition to another 14 or so more on LXer.
"You nailed it," wrote techiem2 on LXer, for example. "All these silly people who have been told over and over and over that they shouldn't have to think or learn in order to use technology. *sigh*"
Similarly: "Today's average home computer (and many workforce computer users) are not users...they are limited task-set mouse clickers," agreed helios. "If only they knew the power at their literal fingertips."
'Nothing Is Intuitive'
Given the frequency with which the term "intuitive" is bandied about in the computing context -- particularly from the halls of Redmond and Cupertino -- it seemed to Linux Girl that this question was an important one.
Should computers be intuitive, requiring little to no learning or thinking? For that matter, is it even possible for them to be so? Linux Girl couldn't resist asking around.
"Nothing is intuitive," Montreal consultant and Slashdot blogger Gerhard Mack told LinuxInsider. "Think about it: We have to be taught to use a toilet, how to use a fork and how to drive. Why do we expect computers to be some magic thing that does not have a learning curve?"
The best we can do is keep things "following the same rules as much as possible so that people can extrapolate how new tasks are done and so people don't constantly have to relearn existing tasks," Mack added.
'Electrons Are Not Intuitive'
"There is nothing 'intuitive' about computers," blogger Robert Pogson agreed. "They are abstract machines with few moving parts. Electrons are not intuitive."
We can try to create more human interfaces with the desktop metaphor, but it is never intuitive, Pogson told LinuxInsider.
"Why would anyone click on an 'X' in the corner of a rectangular region to stop a process and close the region? That can never be intuitive because we do not think like machines," he explained. "We absorb information with our senses and interact with the world with our muscles. Thought is not at all like computing.
"People learn as children do," he added. "They start with hand-eye coordination and advance to abstract thinking. It takes time and effort."
'No Bloat Will Make the GUI Intuitive'
Providing the world with "PCs running that other OS and promoting it as intuitive has been one of the greatest disservices ever done in the name of IT," Pogson added. "We now have hundreds of millions of people convinced they need to fear links in emails, and that they need to buy software to protect their PCs from malware, when it is the OS they are using with its intuitive/user-friendly interface that is friendly to malware."
In short, "no amount of bloat, features or nomenclature will make the GUI intuitive," Pogson concluded. "Eventually, our computers might be robots and we will be able to use our social skills on them, but that is not happening today on PCs."
'I Don't Think Study Should Be Required'
On the other hand, "I don't see why they can't be intuitive," Slashdot blogger drinkypoo told LinuxInsider. "I don't think that study and learning should be required for consumer-oriented platforms."
While personal computers "have certainly gone in that direction, even-more-personal computers like cellular telephones are always reaching towards a simpler, more apprehendable interface," drinkypoo noted. "Even Intel's Moblin makes substantial strides in this direction."
Devices like the Kindle, however, are an ever better example, he asserted.
"There's no particular reason that the Kindle couldn't be the next application delivery platform which would require *no learning* to use," drinkypoo asserted. "In fact, it is relatively simple to run arbitrary programs on the system.
"If there's any reason these programs couldn't or shouldn't be intuitive, I sure don't know what it is," he concluded.
'Humans Dislike Change'
The problem with intuition is that "there is no general definition of what is intuitive 'to the masses,'" Slashdot blogger Josh Ulmer told LinuxInsider.
"Why do younger people tend to pick up new technologies faster than older people -- the classic VCR programming quip?" he noted. "Because they don't have any predefined expectations as to what the technology should do, or how it should work, or how they should interact with it."
While Linux Today's Schroder "has a point," he added, "the biggest reason people remain in any given situation, be it an OS or an apartment, is comfort. It is important for Linux proponents and developers to recognize that humans tend to innately dislike change."
The feeling of "intuition" that comes from "the latest and greatest in Redmond or Cupertino is the result of a natural evolution from an established system," Ulmer explained. "It's easier to use from an individual perspective because all of the basic concepts are already trained."
'That Means No CLI'
Indeed, the problem with the "intuitive" label "is that folks seem to miss the forest for the trees," Slashdot blogger hairyfeet told LinuxInsider. "The basic desktop, be it Windows, OSX, Gnome or KDE, all follow pretty much the same conventions on the surface," but that paradigm "falls apart" when something goes wrong.
"No matter how much sugar you put on top, as long as Joe User has to go CLI at the slightest glitch, it just ain't gonna sell," he explained. "If you really want to make this a three-way race between Windows, OSX and Linux, then the user HAS TO come before all. That means simple-to-understand GUIs, that means NO CLI."
Just the Nipple?
It was once said that "'the only 'intuitive' interface is the nipple -- after that, it's all learned,'" said Slashdot blogger David Masover.
On the other hand, "I'd suggest that anyone who is a pediatrician or has otherwise observed a new mother trying to teach her baby how to breast feed would classify the 'nipple as intuitive interface' line as not only an unquestioned assumption, but also one that's wrong," countered value_added in a recent Slashdot discussion. "Put simply, the nipple is a familiar interface. The familiarity happens very early, and there's a wealth of factors that motivate it, but still it's something that's learned."
When people say "intuitive," they tend to mean one of two things: "discoverable or familiar," Masover told LinuxInsider.
Discoverable vs. Familiar
"'Discoverable' has to do with how easy it is to learn an interface, especially without training," he explained. "For example, GUIs are more discoverable than the command line because you can usually see what options are available at a glance. Then you can click one of them to see more options."
A command line, on the other hand, "requires you to know which command you wanted ahead of time, and then to read the documentation on that command," he added.
"Familiar," meanwhile, "is how similar an interface is to other interfaces you've used," Masover noted. "It helps make an interface discoverable. For example, ctrl+i for italic is discoverable in OpenOffice Writer, and familiar, and often seen as 'intuitive'. I would argue this is mostly because that's how Word does it."
What Would Windows Do?
That's all "good and useful," he added, "but it's also dangerous -- sometimes there truly is a better interface out there, but it's seen as 'less intuitive' because it's not how Windows works."
Regarding package managers, for instance, "the Windows way is far less secure than a good package manager, and Linux would be worse off if it tried to be like Windows here," he said. "Yet people who don't understand package managers will wonder why they can't just download an EXE."
Computer technology can be easy to use, but it might not be intuitive, and it "certainly won't always be discoverable," Masover added.
An Impossible Dream
So, can any interface be intuitive -- that is, discoverable, familiar and easy to use for everyone?
"I don't think so," Masover asserted. "But it's still worth thinking about the tradeoffs involved. It's worth having 'intuitive' as a goal, even if it's impossible."
Providing alternative ways to do something is a step in the right direction, he suggested, as is making an interface customizable -- though that "had better be both powerful and idiot-proof."
In short, "the ideal interface would leverage as much as possible of what most people already know (make it like Windows), be as simple as possible (but no simpler), expose as much functionality as possible to those who know where to look, and be infinitely customizable by the end-user but impossible to accidentally screw up," he concluded. "This is why we have Human-Computer Interaction (HCI) specialists."
Companies should not spend time "trying to determine what the average values of intuition are and applying them to their new project," Ulmer said. "Mac fans will forever compare Windows' newest features to something that already exists in their own environment, your 'average' Windows user is terrified of the command line, and I for one miss the grizzled hobbyist who made Linux a fun toy years ago.
"I don't know if it's possible to appease all three groups with the same software," Ulmer concluded. "I for one would much rather have something that excels at being easy to use for one group than diluted for everyone."