Terminating a Bad Assumption
(Original post here.)
Earlier today (as I write this), our esteemed tuxchick made a very bold statement:
If people don’t want to learn an unfamiliar environment why do they stick with windows? Win 95 was radically different from 3.1, and it was a huge success. XP was way different from 2000, and everything was moved around and stuffed into different places. Vista was even weirder, with the added free bonus of new extreme annoyances like UAC. Windows 7 is organized differently yet again, and the tech press are all swoony over it and hailing it as The Best Windows Evah.
This touches on something I’ve been shopping around privately for a couple weeks now: Why do we in the “Linux community” assume prior experience with Windows, or any WIMP interface? At its core, this is a bad assumption for absolutely everyone, proprietary software houses included.
I know a fellow who, in his mid-60’s, has been using Windows for about 3 years, and still had no clue what I meant by “double-click,” “drag-and-drop,” or “select.” He already knew about double-clicking, but didn’t know what it was called. The notions of “copy-paste” and “clipboard” were totally foreign to him. (So is “don’t click that blind link,” but that is for someone else to explain. That battle is already being fought by those who actually have something to lose.)
Putting a total-beginner tutorial in the on-line help pretty well defeats the purpose of having such a tutorial in the first place. After all, how does one reach the tutorial? By using the mouse and on-screen menus.
The GNOME and KDE implementations of such a “tutorial” are bad to the core, anyway. A quick perusal of the basic mouse and keyboard skills sections in GNOME 2.22.3 reveals lots of textual explanations, but the only graphics present are twelve mouse pointers, presented in isolation from their pertinent contexts.
For example, the help page about resizing a window mentions the “resize pointer,” but presents it as a hyperlink to the list of mouse pointers. Why isn’t the pointer shown in the context where it matters? The basic keyboard help also talks about the Alt and Ctrl keys, but as far as I can see, does not explain that they are used similarly to the Shift key. Brand new users don’t know this!
The assumption in KDE4’s on-line help is much more explicit: “We assume that you are already familiar with at least one graphical user interface, for example CDE™, Geos™, GEM™, NeXTSTEP™, Mac®, OS/2™ or Microsoft® Windows®. So we will not explain the usage of the mouse or the keyboard but concentrate on hopefully more interesting things.”
How preposterous. Do the KDE team have no aspirations to lead? Do they want always to follow, to let some other desktop become the first comfortable environment for new computer users? Without even a rudimentary introduction to the WIMP interface, KDE is totally inappropriate for retail sale. It will simply be “the other woman” that some users may dally with, but few fully commit to.
I think there should be a Linux-based “total beginner” tutorial that explains these basic GUI concepts. They’re pretty platform-neutral (except maybe right- and middle-clicking on an older Macintosh) so nearly everyone learning to use a computer needs to know them. Of course, launching it shouldn’t mean using these skills. We need something different. We need an interactive presentation, with video or animation, which launches on the first boot, automatically, or at least as easily as possible from instructions in a “quick-start” guide.
It should present a quick demonstration of the fundamental WIMP interface vocabulary: F-keys; the Shift, Ctrl, and Alt modifiers; left- and right-click (or “primary” and “secondary,” to avoid handedness assumtions); double-click; click-and-drag; selecting text and desktop icons; and the clipboard operations, cut, copy, and paste. Maybe it should even include shift-click, to show how modifier keys work not only with other keys, but also with the mouse buttons.
Each step should include an interaction, in which the new user can demonstrate an understanding of the new vocabulary. If I’m talking to my sixty-some year-old friend over the phone, and tell him to “press F8,” does he know that I’m talking about the keys in the uppermost row? After taking a tutorial which prompts him to “Press F8,” the odds are better that he will.
In this day and age, in which even a tiny, underpowered netbook or a ten-year-old desktop system can play Ogg Theora videos, there is no excuse for not having such an introduction. We have the computing power. We have the programming infrastructure to use any human language in the world. It doesn’t have to use Ogg Theora; it could use simple animated MNG’s or some other free format.
Every year so far in the 21st century, we’ve heard something like, “This is the year of the Linux desktop!”. No year yet has been The Year Of The Linux Desktop. As long as we assume desktop users have prior experience elsewhere, Linux will always be a geek toy, with the desktop simply an afterthought.”
“That may fly in tech centers like Silicon Valley, but would it work in a retirement community in Florida? Without a basic introduction to the GUI, a fifty-year-old farmer in Ukraine or Argentina will see Linux as being incomprehensible. He’ll go learn something else, on some other more-common platform, because the tutorials are already available.”
“And we all know which two platforms are the most likely for him to learn.”