From: Phlip Date: 2005-09-19T14:31:37+09:00 Subject: Re: you can't get in trouble with your boss for picking C# Martin DeMello wrote: >> If you all do indeed mean vim-like power without the f~~~ed up >> keystrokes, >> find another way to say it. CUA keystrokes provide the flattest possible >> learning curve for modern programmers... > > The "learning curve" is a red herring here. You're making the classic > mistake of confusing "easy to learn" with "easy to use once learnt". The root principle of Usability (as a discipline for designing human-machine interactions) is this: A GUI shall be easy for newbies to learn, and shall not interfere with proficient user repeatedly accessing advanced features. Vi fails both sides of the bargain, not because its keystrokes differ from the magic CUA, but because they are inconsistent within themselves. Only muscle memory permits proficient users to accomodate the many ways Vi cannot even make up its own mind about the nature of text editing. The editor is inconsistent even about simple concepts like whether a text cursor operates on the left or right side of its character. When you type A for Append, you move the right side, and I for Insert gives you the left side. It only does that because it doesn't always treat \n as a character, so A fails at the end of a line, and they added I to compensate. This would be almost harmless, except that after typing new text, Vi remembers its confusion for you, and Escape will move the text cursor to the left if Vi remembers you typed an A. Typing quickly without constantly readjusting your mental model of the editor's state requires you to subconsciously remember and accomodate many minor inconsistencies like these. 2 of my 4 years using Vi were with Vi classic, the kind that did not even support a modern keyboard's cursor keys. I have seen people type, faster than I ever could, in classic mode on modern Vim. It's a scary sight, and a reminder that complete Vi proficiency is inaccessible to many people, even if only in terms of their aptitude for menial keyboarding prowess. -- Phlip http://www.greencheese.org/ZeekLand <-- NOT a blog!!!