interesting article : Linux is Not Windows

5 Aug 2007 - 5:06am
507 reads
Jarod Tang

I remember cooper says similar opinion in his famous book.

> Problem #5: The myth of "user-friendly"
> This is a big one. It's a very big term in the computing world,
> "user-friendly". It's even the name of a particularly good webcomic. But
> it's a bad term.
> The basic concept is good: That software be designed with the needs of the
> user in mind. But it's always addressed as a single concept, which it
> isn't.
> If you spend your entire life processing text files, your ideal software
> will be fast and powerful, enabling you to do the maximum amount of work for
> the minimum amount of effort. Simple keyboard shortcuts and mouseless
> operation will be of vital importance.
> But if you very rarely edit text files, and you just want to write an
> occasional letter, the last thing you want is to struggle with learning
> keyboard shortcuts. Well-organized menus and clear icons in toolbars will be
> your ideal.
> Clearly, software designed around the needs of the first user will not be
> suitable for the second, and vice versa. So how can any software be called
> "user-friendly", if we all have different needs?
> The simple answer: User-friendly is a misnomer, and one that makes a
> complex situation seem simple.
> What does "user-friendly" really mean? Well, in the context in which it is
> used, "user friendly" software means "Software that can be used to a
> reasonable level of competence by a user with no previous experience of
> the software." This has the unfortunate effect of making
> lousy-but-familiar interfaces fall into the category of "user-friendly".
> Subproblem #5a: Familiar is friendly
> So it is that in most "user-friendly" text editors & word processors, you
> Cut and Paste by using Ctrl-X and Ctrl-V. Totally unintuitive, but
> everybody's used to these combinations, so they count as a "friendly"
> combination.
> So when somebody comes to vi and finds that it's "d" to cut, and "p" to
> paste, it's not considered friendly: It's not what anybody is used to.
> Is it superior? Well, actually, yes.
> With the Ctrl-X approach, how do you cut a word from the document you're
> currently in? (No using the mouse!)
> From the start of the word, Ctrl-Shift-Right to select the word.
> Then Ctrl-X to cut it.
> The vi approach? dw deletes the word.
> How about cutting five words with a Ctrl-X application?
> From the start of the words, Ctrl-Shift-Right
> Ctrl-Shift-Right
> Ctrl-Shift-Right
> Ctrl-Shift-Right
> Ctrl-Shift-Right
> Ctrl-X
> And with vi?
> d5w
> The vi approach is far more versatile and actually more intuitive: "X" and
> "V" are not obvious or memorable "Cut" and "Paste" commands, whereas "dw" to
> delete a word, and "p" to put it back is perfectly straightforward. But
> "X" and "V" are what we all know, so whilst vi is clearly superior, it's
> unfamiliar. Ergo, it is considered unfriendly. On no other basis, pure
> familiarity makes a Windows-like interface seem friendly. And as we learned
> in problem #1, Linux is necessarily different to Windows. Inescapably, Linux
> always appears less "user-friendly" than Windows.
> To avoid #5a problems, all you can really do is try and remember that
> "user-friendly" doesn't mean "What I'm used to": Try doing things your
> usual way, and if it doesn't work, try and work out what a total novice
> would do.
> Subproblem #5b: Inefficient is friendly
> This is a sad but inescapable fact. Paradoxically, the harder you make it
> to access an application's functionality, the friendlier it can seem to be.
> This is because friendliness is added to an interface by using simple,
> visible 'clues' - the more, the better. After all, if a complete novice to
> computers is put in front of a WYSIWYG word processor and asked to make a
> bit of text bold, which is more likely:
> - He'll guess that "Ctrl-B" is the usual standard
> - He'll look for clues, and try clicking on the "Edit" menu.
> Unsuccessful, he'll try the next likely one along the row of menus:
> "Format". The new menu has a "Font" option, which seems promising.
> And Hey! There's our "Bold" option. Success!
> Next time you do any processing, try doing every job via the menus: No
> shortcut keys, and no toolbar icons. Menus all the way. You'll find you slow
> to a crawl, as every task suddenly demands a multitude of
> keystrokes/mouseclicks.
> Making software "user-friendly" in this fashion is like putting training
> wheels on a bicycle: It lets you get up & running immediately, without any
> skill or experience needed. It's perfect for a beginner. But nobody out
> there thinks that all bicycles should be sold with training wheels: If you
> were given such a bicycle today, I'll wager the first thing you'd do is
> remove them for being unnecessary encumbrances: Once you know how to ride a
> bike, training wheels are unnecessary.
> And in the same way, a great deal of Linux software is designed without
> "training wheels" - it's designed for users who already have some basic
> skills in place. After all, nobody's a permanent novice: Ignorance is
> short-lived, and knowledge is forever. So the software is designed with the
> majority in mind.
> This might seem an excuse: After all, MS Word has all the friendly menus,
> and it has toolbar buttons, and it has shortcut keys. . . Best of all
> worlds, surely? Friendly and efficient.
> However, this has to be put into perspective: Firstly, the practicalities:
> having menus and toolbars and shortcuts and all would mean a lot of coding,
> and it's not like Linux developers all get paid for their time. Secondly, it
> still doesn't really take into account serious power-users: Very few
> professional wordsmiths use MS Word. Ever meet a coder who used MS Word?
> Compare that to how many use emacs & vi.
> Why is this? Firstly, because some "friendly" behaviour rules out
> efficient behaviour: See the "Cut&Copy" example above. And secondly, because
> most of Word's functionality is buried in menus that you have to use: Only
> the most common functionality has those handy little buttons in toolbars at
> the top. The less-used functions that are still vital for serious users just
> take too long to access.
> Something to bear in mind, however, is that "training wheels" are often
> available as "optional extras" for Linux software: They might not be
> obvious, but frequently they're available.
> Take mplayer. You use it to play a video file by typing mplayer filenamein a terminal. You fastforward & rewind using the arrow keys and the PageUp
> & PageDown keys. This is not overly "user-friendly". However, if you instead
> type gmplayer filename, you'll get the graphical frontend, with all its
> nice, friendly , familiar buttons.
> Take ripping a CD to MP3 (or Ogg): Using the command-line, you need to use
> cdparanoia to rip the files to disc. Then you need an encoder. . . It's a
> hassle, even if you know exactly how to use the packages (imho). So
> download & install something like Grip. This is an easy-to-use graphical
> frontend that uses cdparanoia and encoders behind-the-scenes to make it
> really easy to rip CDs, and even has CDDB support to name the files
> automatically for you.
> The same goes for ripping DVDs: The number of options to pass to transcode
> is a bit of a nightmare. But using dvd::rip to talk to transcode for you
> makes the whole thing a simple, GUI-based process which anybody can do.
> So to avoid #5b issues: Remember that "training wheels" tend to be bolt-on
> extras in Linux, rather than being automatically supplied with the main
> product. And sometimes, "training wheels" just can't be part of the design.
> Problem #6: Imitation vs. Convergence
> An argument people often make when they find that Linux isn't the Windows
> clone they wanted is to insist that this is what Linux has been (or shouldhave been) attempting to be since it was created, and that people who don't
> recognise this and help to make Linux more Windows-like are in the wrong.
> They draw on many arguments for this:
> Linux has gone from Command-Line- to Graphics-based interfaces, a clear
> attempt to copy Windows
> Nice theory, but false: The original X windowing system was released in
> 1984, as the successor to the W windowing system ported to Unix in 1983.
> Windows 1.0 was released in 1985. Windows didn't really make it big until
> version 3, released in 1990 - by which time, X windows had for years been at
> the X11 stage we use today. Linux itself was only started in 1991. So Linux
> didn't create a GUI to copy Windows: It simply made use of a GUI that
> existed long before Windows.
> Windows 3 gave way to Windows 95 - making a huge level of changes to the
> UI that Microsoft has never equalled since. It had many new & innovative
> features: Drag & drop functionality; taskbars, and so on. All of which have
> since been copied by Linux, of course.
> Actually. . . no. All the above existed prior to Microsoft making use of
> them. NeXTSTeP in particular was a hugely advanced (for the time) GUI, and
> it predated Win95 significantly - version 1 released in 1989, and the final
> version in 1995.
> Okay, okay, so Microsoft didn't think up the individual features that we
> think of as the Windows Look-and-Feel. But it still created *a*Look-and-Feel, and Linux has been trying to imitate that ever since.
> To debunk this, one must discuss the concept of *convergent evolution*.
> This is where two completely different and independent systems evolve over
> time to become very similar. It happens all the time in biology. For
> example, sharks and dolphins. Both are (typically) fish-eating marine
> organisms of about the same size. Both have dorsal fins, pectoral fins, tail
> fins, and similar, streamlined shapes.
> However, sharks evolved from fish, while dolphins evolved from a
> land-based quadrupedal mammal of some sort. The reason they have very
> similar overall appearances is that they both evolved to be as efficient as
> possible at living within a marine environment. At no stage did pre-dolphins
> (the relative newcomers) look at sharks and think *"Wow, look at those
> fins. They work really well. I'll try and evolve some myself!"*
> Similarly, it's perfectly true to look at early Linux desktops and see
> FVWM and TWM and a lot of other simplistic GUIs. And then look at modern
> Linux desktops, and see Gnome & KDE with their taskbars and menus and
> eye-candy. And yes, it's true to say that they're a lot more like Windows
> than they used to be.
> But then, so is Windows: Windows 3.0 had no taskbar that I remember. And
> the Start menu? What Start menu?
> Linux didn't have a desktop anything like modern Windows. Microsoft didn't
> either. Now they both do. What does this tell us?
> It tells us that developers in both camps looked for ways of improving the
> GUI, and because there are only a limited number of solutions to a problem,
> they often used very similar methods. Similarity does not in any way prove
> or imply imitation. Remembering that will help you avoid straying into
> problem #6 territory.

-- Jarod
IxD for better life style.

Syndicate content Get the feed