One of the quickest ways to increase your productivity on the computer is to go commando: stop using the mouse. When you stop relying on the mouse for everything, you're forced to learn the keyboard shortcuts. Jeremy Miller calls this the first step to coding faster. I agree.
Keyboard shortcuts are almost always more efficient than using the mouse to point and click your way around the computer-- but you'll never learn them if you keep leaning on your trusty mouse to do all the work. Stop for a moment, resist taking the easy way out with the mouse, and force yourself to learn at least one new keyboard shortcut per day. Yes, it's a tiny bit of extra work. But it will pay off down the road: you'll spend less time mousing around, and more time getting things done.
I'm not anti-mouse by any means. I remember when mice were new; I'd never want to go back to the bad old days of keyboard-only interfaces. But most people I've observed using the computer these days rely almost exclusively on the mouse, to the detriment of their overall computer experience. Here are a few examples of how even the simplest keyboard shortcuts can make your daily routine easier:
That's just the tip of the iceberg. Most applications have tons of useful keyboard shortcuts; you just have to put down your mouse long enough to discover a few of them. It's a shame more applications don't go out of their way to make keyboard shortcuts more discoverable. At the very least, I'd like to see Office 2007 type behavior where, as you press the keyboard accelerator key, all the possible keyboard shortcuts "light up".
Unfortunately, navigating through websites is nearly impossible without a mouse, due to the highly mouse-centric nature of HTML. I've given up on trying. But it is possible, if you're a die-hard. Unless you enjoy pressing the tab key umpteen million times, you'll definitely want to check out Jon Galloway's mouseless computing recommendations, wherein he conquers the HTML keyboard challenge.
For best computing results, try to use your mouse and your keyboard to the fullest. But to do that, you've got to actively wean yourself off the mouse. Try going commando every now and then. It will be awkward and painful at first. You'll be sorely tempted to switch back to your old faithful mouse to get things done. Resist this urge! I guarantee whatever you're trying to do is possible-- and ultimately quicker-- if you persist with the keyboard.
In my house, "going commando" means doing with out underwear.
Me: You do any laundry this weekend?
Wife: No, sorry. Didn't get to it.
Me: No, problem. I'll just go commando.
Tim Elhajj on March 27, 2007 12:19 PMThe best key to use for shortcuts are the F keys, and only a few programs actually use them. Only one key required. I wish that F1 wasn't always help, how many times have you pressed that by mistake? Generally, I would prefer that the first few F keys change what window or panel or dialog or field has focus, making them quick replacements for the mouse. Then it should be the most commonly typed (not neccesarily the most "important") actions.
One problem is that the range of keyboard shortcuts is pretty limited these days. Windows itself has taken up many of the ALT keys, and some of the F keys.
I've also set up some of those keys I never use (the windows key, right-ctrl, insert, home, end, scroll lock, printscrn/sysreq, pause/break) to do basic window management stuff like cycle the windows, maximize, close etc. faster than the normal key combinations, and so I can also remap the F keys to do more common application actions.
If you use Linux, try out the "ion" window manager: http://modeemi.fi/~tuomov/ion/ . (There are also a few others.)
"Lighting up" shortcut keys is an excellent idea, and really should be built in, requiring no extra programmer effort to enable.
Reed
BTW, Linux users-- try tilda. It pulls a terminal down from the top of the screen like the Quake2 console on a keypress. I have it configured to come down when I press F1. Then you can run programs maximized (no more stupid window micromanagement) but still have a terminal handy for any quick purpose.
http://tilda.sourceforge.net or apt-get install tilda. There's also a similar program based on KDE libraries instead of gnome libraries, that one might have a few extra features too.
Reed on March 27, 2007 12:37 PMAhem... http://www.asktog.com/TOI/toi06KeyboardVMouse1.html
The money quote:
"We’ve done a cool $50 million of R & D on the Apple Human Interface. We discovered, among other things, two pertinent facts:
* Test subjects consistently report that keyboarding is faster than mousing.
* The stopwatch consistently proves mousing is faster than keyboarding."
Esc, cancel whatever... Why don't programmers use this key for cancel?
It was cancel before the mouse and hopefully it will be cancel after the mouse.
rabid wolverine on March 27, 2007 12:49 PM"Unfortunately, navigating through websites is nearly impossible without a mouse, due to the highly mouse-centric nature of HTML. I've given up on trying."
You can navigate in Firefox by hitting "/" and then typing in the text of the link that you want to go to. It doesn't neatly solve the problem of more graphics-heavy interfaces, but when you're just surfing around pages with lots of text and a few links, /-typeahead-searching plus PageUp/PageDown is an improvement over the mouse.
Corey Porter on March 27, 2007 1:03 PMThe implied meaning of the image with the crossed-out mouse is 'Don't use mice branded Microsoft'. :)
nick on March 27, 2007 1:06 PMI can't wait for the day when the cursor follows my eye movements so I no longer need to waste my time switching between the keyboard and mouse. Hook up a camera that monitors where I'm looking and places the cursor there. Couple that with some basic voice commands and I'd be happy to get rid of my mouse.
Kevin Taylor on March 27, 2007 1:09 PMcoding with a mouse considered harmful =o)
http://ebersys.blogspot.com/2007/03/programming-with-mouse-considered.html
> BTW, Linux users-- try tilda. It pulls a terminal down from the top of the screen like the Quake2 console on a keypress. I have it configured to come down when I press F1. Then you can run programs maximized (no more stupid window micromanagement) but still have a terminal handy for any quick purpose.
And OSX users get the same with Visor. Very cool stuff. And there's also a dashboard terminal (also Visor's much better) so you can have 2 different terminals available at any time on fast-access shortcuts
> You can navigate in Firefox by hitting "/" and then typing in the text of the link that you want to go to
Or you enable typeahead and you don't even need to hit "/" ;)
Masklinn on March 27, 2007 1:11 PMI picked up the habit of keeping my left hand on the 'board and my right on the mouse from one of the best photoshop guys I've seen. This way, you always have access to whichever method is fastest.
max cascone on March 27, 2007 1:12 PM> Test subjects consistently report that keyboarding is faster than mousing, but the stopwatch consistently proves mousing is faster than keyboarding.
I have no doubt that for *certain activities* the mouse is faster. The problem with Tog's statement is that he doesn't qualify it at all.
HTML is a fine example of a UI that's much faster to use with a mouse. Navigating HTML via keyboard, even with the Firefox plugins that make it easier, is still quite painful.
But there's just no way you can tell me that this:
1. Move the mouse to the username field.
2. Click the mouse button.
3. Type a username.
4. Move the mouse to the password field.
5. Click the mouse button.
6. Type a password.
7. Move the mouse to the login button.
8. Click the mouse button.
is faster than this:
1. Type a username.
2. Press the Tab key.
3. Type a password.
4. Press the Enter key.
It's un-possible!
> navigate in Firefox by hitting "/" and then typing in the text of the link that you want to go to
That's not really navigation, it's incremental search. It is admittedly a fine line, but not quite the same thing. Try "finding" an image you need to click on, for example.
Jeff Atwood on March 27, 2007 1:15 PMTotally. I work with developers that use the mouse with toolbar buttons to step through code in the VS debugger. It absolutely pains me to watch it.
My favorite feature of Vista is the integrated search in the Start Menu, just because it makes it so much easier to launch apps using only the keyboard.
Kevin Dente on March 27, 2007 1:19 PMYou didn't read the Apple study. I went through it rather closely a while back, and from what I remember it has nothing to do with the actual speed of command execution - you're absolutely right, you can always put commands in faster with the keyboard - and everything to do with leaving your mind free to attempt higher thought. I like to think of it in terms of RAM - when clicking with a mouse, you're just clicking. You're not thinking, "Hm. Is paste-just-formats <ctrl><shft><p> or <ctrl><shft><alt><p>." You're thinking about whether the equation you're pasting is going to apply to the fifteen cells on your left. So your RAM isn't loading a whole bunch of (say) CISC operations. It's running a smooth UI you don't need to think much about.
So for mundane tasks you consistently repeat, you're completely right. Stop using the mouse and you will get faster. But if you're talking about memorizing every single key combo in the interface, well, that tends towards extremely specified knowledge. Which can speed you up, but can also limit you when choosing the next tool...
There's one particular co-worker of mine who claims to know every little trick and shortcut there is to know for working with Office. He might. But when you look at things he has actually attempted to accomplish, well, the results are not as effective as they should be. Know anyone like this?
Dylan Brams on March 27, 2007 1:25 PMYou know, I've been keyboarding around for a long time, now... but there is a danger: whenever an application forces itself to the fore and throws a message box with a dismiss button automatically selected. I hate dismissing those automatically. It's a lot of why I detest the MessageBox in general... Just a few simple measures... a few changes at the API level... and we'd never have the problem again...
Anyhow, back on topic: I didn't really start falling back in love with Mac OS until X came along and started letting me keyboard my way through. Now I use XP for the majority of my work, but I still hop into OS X for funsies every now and again. It's not a chore like it used to be.
Jae on March 27, 2007 1:26 PM
"It's un-possible!"
This is the mark of distinction between real engineers and psuedo-engineers.
Real engineers rely on science, and make their decisions based on science.
Pseduo-engineers try to emulate what they think makes real engineers real, and spread *opinion* based on logic such as "there's just no way you can tell me that" and "It's un-possible!"
Further, productivity is not measured in speed of "coding". Unless you're a monkey implementing pre-designed features without any creativity, speed of entering lines of code is the least factor for your productivity.
Are you a typist or an engineer? Are you a coder or a programmer?
If you are a VS.NET user, you can enable tooltips for menus that show the keyboard shortcut to the menu item.
Tools > Customize... > check "Show shortcut keys in ScreenTips"
Now, when I find myself needing to dig in the menu for a command, I make a point of learning the keyboard shortcut instead. Shift-Alt-Enter ftw!
Susan Warren on March 27, 2007 1:29 PMIt's easy to demonstrate the truth of Tog's report, which Ben pointed out. In fact, I often do this when I am helping someone out, and they are at the keyboard. I will use their mouse to highlight individual characters (and sometimes words) from adjacent lines/applications and right click (because I'm a power-mouse user, and don't need to travel up to the menu bar, which is a remnant of the days of keyboards) and choose Copy. Then I move the mouse to the destination window, right-click again (it's really easy) and choose paste. Usually by the fifth character, the person I'm helping says I am just moving too fast to keep up, and asks me to please use their keyboard, so I will be slow enough they will understand what I'm doing. It's great fun and helps in reductio ad absurdum contexts, too!
--dang
Unix developers have been doing it this way since the beginning.
mike on March 27, 2007 1:39 PMThought I'd add my personal favorite for any coders using VS. If you use the General Development Settings in VS2005, CTRL+i does an incremental search (it searches as you type one character at a time), and if it doesn't get what you want the first time, press CTRL+i again and it'll search for the next instance of it. If later on you want to search for the same thing, pressing CTRL+i twice will automatically search for the last thing you searched for.
I use it all the time.
Ari Roth on March 27, 2007 1:41 PMNot all appls follow a standrd keyboard shortcuts. The most evil one, I think, is ctrl+y. Mordern appls redo while many oldies delete the current line!
I prefer the Eclipse way. You can choose your keyboard shortcuts.
Jay and Dylan, you seem to see this entry as disavowing the mouse. That's not my intent. I want to see people balance their use of the mouse with use of the keyboard, too.
> when clicking with a mouse, you're just clicking. You're not thinking
Really? So when you mouse over something you know *exactly* what that thing is going to do before you click on it? Or maybe you mean thinking in terms of "which mouse button do I click" versus "which of these 104 keys do I press", but even Raskin himself admits the one-button mouse was a huge mistake in retrospect.
> speed of entering lines of code is the least factor for your productivity
Well, obviously if someone is typing "All work and no play makes Jack a dull boy" into an editor at 200 wpm, that isn't getting us anywhere. *Yes*, we are all typists as well as programmers. The faster you make your mistakes, the quicker you can correct them.
Speed and efficiency aren't the only factors, but they're still important. Consider speed of iteration..
http://www.codinghorror.com/blog/archives/000788.html
Jeff Atwood on March 27, 2007 1:58 PMfor VS.NET users - Visual C# 2005 Keyboard Shortcut Reference Poster
"Further, productivity is not measured in speed of "coding". Unless you're a monkey implementing pre-designed features without any creativity, speed of entering lines of code is the least factor for your productivity."
I'm sorry, I have to disagree here. Everyone is different. I think in words, not in images or sounds. The most efficient mediums to express my particular creative thoughts are an IDE, notepad, email, chat etc. I can be extremely productive and do great things if I can get those thoughts down and out. Pausing to use a mouse or pick up a pen disrupts my thought process. It's too easy to be distracted at that point, I've lost my focus. While I'm mousing towards a button, I'll notice I've got new email or I'll hear a side conversation, and that genius idea fighting to get out has just disappeared into the ether. To me at least, using the mouse is like an artist stopping a masterpiece to go to the back and find the right shade of green. Forget productivity, what if the whole vision is lost in that time?
Steve Jackson on March 27, 2007 2:04 PMUnfortunately, using keyboard shortcuts can be _literally_ painful. Keep in mind the small number of us that are genetically doomed to suffer through keyboard pain when using what I call "the claw". Any two key combo done on the same hand will send incredible pain into my wrist. Well, in all honesty, the first one is fine, but after about 10 cycles of ctrl+c and ctrl+v, I'm screaming for my mouse (or my reprogrammable gamepad). When I need to do a two key press, I have to hold down the meta key with one hand and then press the key with the other hand, loosing the benefit of keeping one hand on the mouse.
It may be hard to believe, because it doesn't seem that hard, but repetative stress syndrome is a real thing.
The only reason I bring this up is that I've heard nerds mocking people for not using keyboard shortcuts. Not that anyone really cares what obnoxious nerds do, say, or think. I just like putting them in their place.
You wouldn't make fun of someone who used a crutch to walk (or would you?)
Daniel D on March 27, 2007 2:16 PMJeff spake thusly:
> Try "finding" an image you need to click on, for example.
If the page's author used proper /alt/ (?) tags, then you just have to mouse over the image...oh. ;^)
Tarkin on March 27, 2007 2:16 PMInstead of using Internet Explorer or FireFox, use Lynx -- the text based web browers -- for browsing (http://lynx.browser.org/).
I don't know what the current state of development is, and it doesn't work with a lot of the websites. But, one of the nice features was the way you could quickly zero down to a particular part of a webpage without tabbing through the whole thing. It was great for filling in forms.
I still use VIM as my editor of choice for development. I have yet found another editor that's faster. Version 7 does syntax highlighting and smart syntax indenting. Plus, VIM uses regular expressions in its find and replace function. What more could you want?
David on March 27, 2007 2:24 PMAnother obstruction to productivity just as big as ONLY using a mouse is a qwerty keyboard. ...although a switch to dvorak is somewhat more painful than learning the basic keyboard shortcuts.
Brendan on March 27, 2007 2:38 PM> You wouldn't make fun of someone who used a crutch to walk (or would you?)
No, but it's sort of amusing since Jon moved to the keyboard precisely because the *mouse* was causing him RSI pain.
http://weblogs.asp.net/jgalloway/archive/2006/06/14/Mouseless-Computing.aspx
And voice interfaces will make us hoarse. I guess you can't win.
Jeff Atwood on March 27, 2007 2:46 PMGo vim. I'm 5x more productive than in VS. I've created a script that'll even do my laundry. It's pretty gnarly. out.
joshua on March 27, 2007 2:53 PMMouseless browsing is very well possible on most websites when using the Opera webbrowser. It has 'spatial navigation', this means that you can focus links and form elements by holding Shift and pressing the arrow keys. Opera then finds the next focusable item in the arrow direction. Not as fast as using the mouse, but much more usable than the endless Tab parade.
Opera uses the Tab key only to move focus between form elements - this makes it much easier to navigate forms that contain lots of links with the keyboard. Like, for example, a webmail interface with checkboxes for each message.
Rijk on March 27, 2007 3:05 PMI'm not a programmer, but as a tester I've looked up certain keyboard shortcuts in order to make my life easier since I test web applications that require a lot opening/closing browser windows and a lot of logging back in and copying username/passwords from another program.
Sarah on March 27, 2007 3:16 PMMy favourite shortcut by far is alt+tab to quickly switch between windows. You can navigate to any open window by holding alt and pressing tab the required amount of times but the nicest thing about it is that alt plus tab once will bring you back to the last window in focus.
For example I'm working in editplus on a website and I have the page open in my browser to view the changes. Press alt+tab I'm at the webpage, alt+tab again I'm back in editplus.
I just wish there was someway to set it so that it either worked for all open windows or tabs within a single window, like firefox or editplus.
I know in firefox I can ctrl+tab through my open tabs and in editplus I can use F12 to toggle back and forward through the last tab in focus, but I am so used to hitting alt+tab that I do it constantly when I mean to switch application tabs not active windows.
Aaron Bassett on March 27, 2007 3:24 PMWhen it comes to web surfing I'll go the opposite route. Try to use your mouse only, but use it effectively. Use FireFox and download the All-In-One-Gestures add-on and start using mouse gestures instead of pressing those navigation buttons.
Kent Larsson on March 27, 2007 3:42 PMA friend has shown me some mouseless software that makes the life easier.
For example the Conkeror extension to/modification of Firefox. I think its the most elegant way to navigate a website without the mouse. Every link on the page gets a little number you just type the number and the browser brings you there. Textfields and buttons also gets a number so its easy to get to them too. (get it at http://conkeror.mozdev.org/).
Also Emacs and Ratpoison can make the day a lot easier. There is simply no need to use the mouse when you use these.
At the end of the day it's just an interface mechanism. I'm all for agile physical interface mechanisms - but at the same time - the number one problem in software development is poorly thought out code spew. I have seen too many poor programmer's proud of their ability to pour out mindless code at mind-numbing rates.
Even though the question of optimized physical interfaces is fun in itself; I have never seen a situation where keystrokes over mice have slowed down/sped up the time needed to hit a milestone. Programmers could also learn touch-typing, but this wouldn't help them get their job done any faster.
The basic point is that thinking and reading code are what good programmers spend most of their time doing. If a programmer is creating several hundred new lines of code each day this is generally way too much.
Any time a programmer is proud of the sheer mass of code they have written you can be sure they have completely missed the point of programming altogether. And any belief that physical interface mechanisms are helping get your job done faster as a programmer is probably equally unsound.
Programming is one area where less is very often more.
For all of you that like using the keyboard, checkout Launchy (www.launchy.net). It lets you pick a directory to index (typically your start menu) and then you can press alt+space and type something in and it will search for it (as you type) and you press enter to launch. It's open source, too.
amazon10x on March 27, 2007 4:09 PMEver fat finger your copy/paste and wind up copying nothing? One of the best "mouse" things I did was get the Microsoft Trackball (<gasp/> people still use those?!) and configure the small outer buttons to copy and paste, skip this navigation stuff. It's made working with code insanely easier.
That said, I'm all for more keyboarding between the virtual desktop hot keys, Qliner hotkeys and Launchy to fire off applications, and the hotkeys within applications themselves, I think I give people eye twitches when they watch me work. 8^D
Sean Patterson on March 27, 2007 4:10 PMThat's nothing, they do it on tv shows on movies all the time. Ever watched CSI ?
- "could you zoom in on that part of the photograph ?"
- "sure."
(clickety click)
- "there."
Konqueror browser has a nice feature called Access Keys for keyboard navigation of websites. If you press and release ctrl without any other keys the first 36 links and form elements on the page get a small rectangle with a letter or a number displayed beside it. When corresponding key is clicked that element receives a click event. (see http://www.flickr.com/photos/pip/81113206/ for a screenshot) It could use some improvements in both the usability and eye-candy department, especially for the sites that try to fit the sitemap on the sidebar, but it's actually quite nice to use.
(This post is brought to you by the letter P)
Ants Aasma on March 27, 2007 4:38 PMVery interesting....and I use commando tactics all the time. However, for web sites thats quite annoying.
For instance, try going to "October 2005" in your archive when you first load your site.
Now thats a lot of tabbing. If only the Tab "boundary" was clearer then maybe it would be easier to just hold down tab until you see it go to some place.
Also if you want to go Navy Seal - Black Ops, try turning your monitor off and running a screen reading software like Jaws. NOW THATS TRULY HARDCORE!!! (I used it a lot for research and I liked it so much I would use it for reading text at a really fast speed).
A company called Humanized makes a great program for Windows that makes working without a mouse easier: http://www.humanized.com
It works a little like Quicksilver, but it's a lot more, too.
Stephen on March 27, 2007 5:41 PM
Leaving the mouse/keyboard argument alone for a while (Plan 9 lovers also trot out the Apple study cited above, and given the programming interface in Plan 9/Inferno (Acme) was designed around a three-button mouse, it's worth checking out if you're curious to see a completely mouse-driven programming interface).
I find a Wacom pen interface to be much faster than a mouse -- the tablet maps well to a widescreen monitor, so there's a very strong physical association between position with the pen and position with the cursor. You can hold it in your hand (the pen, not the tablet) while you type some keys, so hybrid tasks are easier.
Therac-25 on March 27, 2007 5:45 PMSuch a pity Web pages are absolutely not sutable for mouseless browsing. I've planned once a plugin for the browser, which would associate each link with a number, let's say after pressing a special magic key. Like Win+G --> all links gain numbers --> you type the number. Alas, it's still a dream. Maybe anybody else can make it?
MaS on March 27, 2007 5:48 PM@MaS:
https://addons.mozilla.org/en-US/firefox/addon/1341
https://addons.mozilla.org/en-US/firefox/addon/2317
(Someone already has....)
Therac-25 on March 27, 2007 6:02 PMI second the ratpoison comment. It's a great wm. That plus gnu screen and vim results in very little mouse usage. The only things I use it are for using my browser and my mail reader (although I've been meaning to get around to using mutt)
E on March 27, 2007 6:02 PMOops! Should have read all the article first and check the links. Anyway, no such plugins for Maxthon yet AFIAK.
MaS on March 27, 2007 6:04 PMIn firefox you can hit your ' key (the single quote) to only search through the links on the page.
Damien on March 27, 2007 6:09 PMAlso important is touch typing. I've been coding for about 8 years now, and only learned to touch type last year (after several false starts). While I've seen dramatic improvements in raw productivity, it's the less tangible benefits that have surprised me.
I find I'm more likely to learn and use the keyboard shortcuts discussed here. My ergonomics are better. I feel more comfortable with lightweight, keyboard-centric text editors. I am much quicker in a terminal now which I find more productive than gui based shells (particularly on unix/cygwin).
My coding has improved too; cumbersome things like documenting and unit testing your code become less of a burden. I learn faster because I can prototype code quickly and feel out language features. Interactive shells like irb become a playground where you can introspect the code at close to thinking speed.
cheers
Tim
That's the thing about searching for something, every program has a different way of doing it. A few possibilities: Ctrl-F, Alt-F, Ctrl-E, / (slash), ' (single quote).
That being said, I'm all for keyboard shortcuts, however, I hate the "default input" mode where you have to use key modifiers like the Control, Alt, Windows, Meta, Alt-Lang, et cetera to do extra functions. I would rather have input be more modal like it is in vi. Modal keyboard interfaces are going to be faster still than non-modal key modifier based interfaces.
Whoops, I forgot my main point. I was going to suggest a keyboard like this one:
http://www.cdw.com/shop/products/default.aspx?EDC=461017
It is a desktop keyboard based on the Thinkpad notebook keyboards, so it has the Trackpoint thing in the middle. If you haven't used one lately, there have been a couple of improvements. When you hold the middle mouse button (down by your thumb) it causes the track pointer to go into a scroll mode that you can use to scroll around documents.
Brendan Dowling on March 27, 2007 6:24 PMBrendan Dowling wrote:
> I hate the "default input" mode where you have to use key
> modifiers like the Control, Alt, Windows, Meta, Alt-Lang, et
> cetera to do extra functions.
Agree 100%. That's why I loved XTreeGold. C = copy, etc.
MaS on March 27, 2007 6:28 PMI use the keyboard for almost anything, but two things consistantly bite me:
* In Windows Explorer, there is no keyboard shortcut for New Folder.
* In MacOS, Apple-Q is quit, and Apple-W is close a window. You have no idea how many times I've accidentally quit an application trying to close just one window of it.
In firefox, there is actually a better search key over "/" if you're looking for navigable links. You can use the "'" key and firefox will do an incremental search only for anchor links. When it's highlighted, you can just hit enter to navigate it.
This doesn't solve the problem that Jeff points out for images that you want to click, but it solves 80% of the links that I want to click on.
With either search type, you can use cmd-G to find the next occurrence of it's type (on OSX, I'm sure it's probably alt-G or ctl-G on windows/unix) and cmd-shift-G to do a reverse search.
cmd-1 through cmd-9 can also be used to select different tabs (this works in a number of other programs besides firefox as well).
Ted Naleid on March 27, 2007 7:55 PMIf you switch to the Dvorak keyboard layout, Apple-Q and Apple-W end up on separate hands. So, just learn to type all over again and your problem is solved!
Jerry Kindall on March 27, 2007 8:09 PM@ Ben Hollis
For a new folder in windows explorer you can do alt + F, alt + W, alt + F and it will create a new folder. (this is assuming no file is highlighted)
Josh on March 27, 2007 8:19 PMThe pathetic fact is that every other application uses different shortcuts for the same functionality.
What do you guys have been countering for getting a "Find" in different applications? I've a few:
Ctrl+F
Ctrl+E
Ctrl+L
F3
F5
F12
It's annoying when I hit Ctrl+F and I get an email to be forwarded in Outlook. What a shame.
Kevin Lee on March 27, 2007 8:35 PMI must agree that VIM is amazing, and you'll never touch another fancy-pants IDE once you've gotten over the horrible learning curve.
But the best VIM tip ever has nothing to do with VIM:
http://www.vim.org/tips/tip.php?tip_id=75
The caps lock key is the biggest waste ever of keyboard real estate, and re-mapping it to CTRL is almost as big a leap in productivity as giving up your mouse.
Dan on March 27, 2007 8:55 PM> In Windows Explorer, there is no keyboard shortcut for New Folder
Alt+F, W, F? Or use the right-click equivalent menu (ctrl+f10) key.
Jeff Atwood on March 27, 2007 9:12 PMIn our C++ class, one student suggested No-Mouse-Fridays (the teacher is cool like that). We were about to do it, except changing files in VC++ 6.0 doesn't work.
Also, I found it helpful to create a quick "run" program with custom commands, much like the new one in the start bar of Vista. I tap scroll lock (because I can't tell that it does anything anyway) and up pops the dialog. I type it in and move probably 30% faster on a long session.
Perhaps Linux can help eliminate the "Windows syndrome" and lead to a better GUI system... One can only hope.
Cameron B on March 27, 2007 9:23 PMStill waiting for that eye-controlled computer. Until I get an eye cramp or blink at the wrong time or something. Maybe a brain-controlled computer? Then what happens when my thoughts stray, as they inevitably do? *sigh* Can't win for trying.
Jae on March 27, 2007 9:31 PMIs it possible to navigate through different links in blog posts using only keyboard?
Harharan Ragunathan on March 27, 2007 10:05 PMA great example of software that uses the "light up shortcuts" is Inkscape: http://www.inkscape.org/
What an awesome piece of UI...
Edward Ocampo-Gooding on March 27, 2007 10:08 PMJeff, Opera has a tutorial dedicated to those who'd like to browse without a mouse.
http://www.opera.com/support/tutorials/nomouse/
Many people are reluctant to try Opera though. If it had AdBlock, it would be perfect.
dfs on March 27, 2007 10:14 PMI definitely don't recommend going commando. Using just a handful of shortcuts is enough to boost productivity by a huge margin. It's the usual Pareto Principle. If you try to remember a lot more than these, you are entering the region of diminishing return: allocating your precious memory for shortcuts infrequently used.
This is my policy for choosing shortcuts:
- Used very frequently (obvious)
- Consistent on most platforms you use
- Consistent on most applications you use
- Easy to remember (no more than 2-key combination)
- No need to remember shortcuts for tasks that immediately requires you to use the mouse anyway.
For me, remembering about 20 shortcuts is enough (did you say I need memory upgrade?) At the top of the list are these generic shortcuts:
ctrl-z undo
ctrl-x cut
ctrl-c copy
ctrl-v paste
ctrl-a select all
ctrl-f find
Cheers,
From Ben, ages ago:
>* Test subjects consistently report that keyboarding is faster than >mousing.
>* The stopwatch consistently proves mousing is faster than >keyboarding."
Mousing may "be" faster. Although, I'm skeptical about what the tasks were, I'll concede that mousing is probably faster for selecting text unless you type 80+wpm. However, "feeling" faster isn't useless, particularly when you are storing large chunks of some mental model in your head(like maybe a program). I'd bet that CONSTANTLY solving visual search tasks induces enough of a cognitive load to muck with serious programming tasks.
Alex Fairley on March 27, 2007 11:04 PMI think it's a great idea to use shortcuts, or at least use the keyboard and mouse *together*.
Heh, I didn't even realize that I was learning new shortcuts for my Start Menu:
(Windows Key) (P) (M) (N)
Opens Start Menu, goes to all programs, goes to misc, then starts Nero Burning ROM.
I've even started using the keyboard to navigate Explorer too, with the same idea as the Start Menu.
Russ on March 28, 2007 12:17 AMJeff, your assertion that filling in a form on a website with the keyboard is usually correct. Of course, there are far too many websites where the tab ordering is screwed up.
Enter First name
tab
Enter last name
tab
Enter email
tab
notice the email has gone into the password tab and your last name is now the first line of your address,
Shift-tab, shift-tab
Re-enter everything slowly to make sure that you're entering the right stuff. Or, just use the mouse for that too.
Generally though, everybody who uses a computer should be learning the shortcuts for the most common commands in their most common applications. Developers in VS shouldn't be using the mouse to step through the debugger. Although, it is faster in VS to double-click the variable you're interested in and then drag it into the watch window, rather than highlighting the watch window and carefully typing it in making sure the case and everything's the same. And then, if you expand the watch and find a member 10 levels in, just drag and drop it to a new cell in the window to get VS to enter all of the dereferencing and brackets.
Basically, learn shortcuts and use them whether they're keyboard or mouse shortcuts.
jon on March 28, 2007 12:39 AM"[...]If you try to remember a lot more than these, you are entering the region of diminishing return: allocating your precious memory for shortcuts infrequently used. "
You shouldn't try to learn a bunch of shortcuts which are likely to be interesting at once and then try to remember those shortcuts later. Instead you should use shortcut for functionalities that you actually use a lot and use those shortcuts until you don't even have to use your brain when using the functionalities.
I was surprised when I read the article basic textbox shortcuts http://www.codinghorror.com/blog/archives/000563.html : I use most commands without realizing it!
If I have to select text from the beginning of the text to the cursor position i'll use the shortcut for it without even thinking about it but if someone would ask me how to do it I'd be unable to answer, maybe I'd say that I don't know if it exist!
Bram Moolenaar, the maker of vim, has a nice presentation about using keyboard/editors everyone should see: 7 Habits For Effective Text Editing 2.0
video : http://video.google.com/videoplay?docid=2538831956647446078
text version : http://www.moolenaar.net/habits.html
A sample :
"There are three basic steps:
1. While you are editing, keep an eye out for actions you repeat and/or spend quite a bit of time on.
2. Find out if there is an editor command that will do this action quicker. Read the documentation, ask a friend, or look at how others do this.
3. Train using the command. Do this until your fingers type it without thinking. "
It correlates well with the second advice from the book code complete : Think about your work. Don't just do something. Think about what you are doing and find a better way to accomplish it.
In fact, keyboard browsing HTML page work very well with the Mouseless Browsing extension for Firefox.
https://addons.mozilla.org/fr/firefox/addon/879
To my surprise, after a few minutes, I was even able to browse faster with the keyboard than the mouse.
sebsauvage on March 28, 2007 1:18 AMJust a quick tip: for faster navigation in firefox, there's an easy extension called Hit-a-Hint (https://addons.mozilla.org/en-US/firefox/addon/1341).
Michel Grootjans on March 28, 2007 1:56 AMOne of the quickest ways to feel more productive while actually being less productive is to stop using the mouse. Nuff said.
http://asktog.com/TOI/toi06KeyboardVMouse1.html
http://www.asktog.com/TOI/toi22KeyboardVMouse2.html
http://www.asktog.com/SunWorldColumns/S02KeyboardVMouse3.html
Brenden, whilst modal interfaces are faster for those who know how to use them, for novices and people who generaly use computers they are a pain. Take the modal Caps Lock key; most people I know hate it because half of their text ends up capitalised. Consider that a lot of people need to look at the keyboard to type, so aren't looking at the screen. By the time they've typed a sentance with the Control modifier accidently left on they've closed the document, not saved it and created 3 shortcuts on the desktop. Woops.
I personaly use the web with a combination of mouse and keyboard. To navigate, it's pretty much all the mouse (with gestures or context menus and whatnot). I only ever really use the keyboard to fill out forms. I find it much quicker (without masses of training, all of which would be ruined when I move from one browser at home with x feature to a browser at somewhere like college that doesn't have it) to use the mouse to navigate.
[ICR] on March 28, 2007 2:27 AM@ Jeff:
IBM makes (or used to make; not sure what has gone to Lenovo and what hasn’t) keyboards with a trackpoint. I’ve contemplated getting one… for those times when using the mouse is effective. It would mean not having to take any hand off the keyboard in order to operate the mouse. I was surprised at how precisely I could point with a good trackpoint (like the ones on modern Thinkpads) even without any practice.
@ Daniel D:
> Any two key combo done on the same hand will send incredible pain into my wrist.
Use vim (or any vi clone you like). It’s an occasionally mentioned factoid in Emacs-vs-vi wars that all the major Emacs gurus suffer from RSI. The vi gurus, not so.
@ Ben & LKM:
> * Test subjects consistently report that keyboarding is faster than mousing.
> * The stopwatch consistently proves mousing is faster than keyboarding.
That’s fine and dandy, but it simply doesn’t apply to all tasks.
For apps you only use rarely, the mouse is almost always faster, since you spend a lot more time in discovery/exploration mode, which is awkward to do with the keyboard.
If an app has good keyboard support and you’re proficient enough with it to have committed a large set of shortcuts to muscle memory, there’s no way someone with a mouse will beat you. This applies overwhelmingly to text editors. And yes, this is based on fact not conjecture. There are enough editor fanatics who have actually timed various tasks using the keyboard, mouse, or some combination thereof where applicable (primarily I know of Emacsians and vi-ers who’ve done so, unsurprisingly, but I bet there are BBEditors, Textmateys and maybe Ultraediters who have done the same).
Other tasks, like webbrowsing or image manipulation, are intrinsically pointing-heavy and therefore slow and awkward to operate with a keyboard, no matter what. I find I’m fastest in such a case if the app also offers lots of single-stroke shortcuts, particularly if they’re on keys on the left half of the keyboard. Then I can use my right hand to operate the mouse for pointing and selecting and my continue to use my left to interleave keyboard-based triggering of actions. That combination lets you can go dizzyingly fast.
In both cases the key generally seems to me to be single-stroke keyboard commands. (Small wonder my weapon^W editor of choice is vim.) Or at least you should be able to keep the same modifier key(s) depressed – as in Emacs’ mostly-exclusive use of Ctrl. Having to sprawl fingers from modifier to modifier costs a lot of time. That might explain Tog’s results – from casual use, it seems to me that the gratuitous extra Cmd modifier requires more monkey-fingering while keyboarding on the Mac as compared to other systems. Although that might just be an impression; I haven’t used Macs enough to know for sure.
Aristotle Pagaltzis on March 28, 2007 3:36 AM@ [ICR]:
> whilst modal interfaces are faster for those who know how to use them, for novices and people who generaly use computers they are a pain.
Sure, how is that topical? I didn’t think the subject was how to be more efficient as a casual user who can’t even type without looking at the keyboard. (There’s a pretty obvious drastic win available to such people, if they do want to become faster: *learn to type without looking at your hands*.)
Aristotle Pagaltzis on March 28, 2007 3:44 AMSeriously in regard to the tilda and ratpoison comments, you can't go wrong with ion3. It was designed for keyboard use. The scratchpad is so nice and intuitive for imitating tilda. Easily modified and just a great design.
OK admittedly there must be a line where you get maximum efficiency out of of using not just the keyboard or mouse but a combination of the two. Jeff loves using examples where you start off in the username field and the next field is the password field and the form has been setup for a default submit. NOT REAL WORLD FOR MOST PEOPLE!
Go to the Washing Mutual Bank website: www.wamu.com
Do you by default end up in the login form elements? NO
Number of TABs to get to the username: 19
Once in the username field I am able to type my username, press TAB, then my password and then press return.
So what's faster, pressing TAB 19 times or using my mouse.
OK Jeff - so now your saying let's not bring the web into it because of the way HTML works.
The fundamental shift that needs to occur is the way shortcuts are used. Primarily in the past they are a combination of some special key like CTRL or ALT with a 1 character such as an alphabetic or numeric key. However, some of the larger applications have a massive amount of options and features.
It would be insane to have to type something other then Ctrl+B for Bold. But what if Ctrl+B was already taken. Well is it any faster to type Ctrl+H (hotkey command) to get the app to wait for longer input and then type BLD and then return.
Hmmm what's the timing on that....
Ctrl+H BLD ENTER
or
Mouse to the B on the toolbar
Tough call there, there are some pretty fast mousers out there.
But what if that "Bold" option was in some sub-menu somewhere that wasn't easily accessible?
I say five me MEANINGFUL hotkey commands and I will use the keyboard. Make me remember weird shortcuts per application, I don't think so.
Tim on March 28, 2007 4:05 AMnot a big deal, use the internet with Lynx, it will teach you a lot.
live tv on March 28, 2007 4:32 AMI like using the Z and X keys in Opera to go back and forward between pages. Makes sense, since it's for the left hand. Firefox uses Alt and the arrow keys. This makes it 2 a handed operation and slows down the navigation.
5h4m on March 28, 2007 4:59 AM"I can't wait for the day when the cursor follows my eye movements " Thank you for that. Now lookup "Nystagmus"
http://en.wikipedia.org/wiki/Nystagmus
for example. May that never be the default!
As for web browsing, what happened to accesskey?
http://www.w3.org/TR/WCAG10-HTML-TECHS/#link-accesskey
What browsers actually support this? I know of no way to find out if this is supported in a document in any of IE, Firefox or Opera.
As a result I have not bothered to provide it anything I have written.
And what if thee are more than 36 links in a document? I'd love to know how to support that properly.
Really, who cares? Even if it's faster working without the mouse, I am more comfortable using the mouse. Who wants to go back to the days of DOS (remembering commands for performing actions)?
Now if this was advice for developers in order to test their keyboard shortcuts, that's great. But for everybody, not going to happen. Some people don't even know about CTRL-C for copying!!!
Bart on March 28, 2007 5:37 AM>> Alt+F, W, F? Or use the right-click equivalent menu (ctrl+f10) key.
I use that all the time. The only nuisance is the (now extremely rare) event that I am on a Win9x machine. Then I think it is ALT+F, W, W (or something like that).
Eric D. Burdo on March 28, 2007 5:47 AMHow on Earth would NOT using your mouse enable you to figure out that control and enter will add www. and .com to the URL for you? I could stop using my mouse until the end of time and I would not figure out that out unless I read it somewhere.
But now that I have read it here... I'll start using it :)
Billkamm on March 28, 2007 5:50 AMI guess I should have researched this further. All this time, I thought I was the only one who believed using a keyboard is faster than using a mouse.
Long live vi!
Great article, I'm bookmarking it.
David H. on March 28, 2007 6:00 AMHonestly, I think it's just up to the individual... There are certain shortcuts that are almost instinctive. Others feel simply unnatural to do -- where I'd rather enter a Cheat Code into a game of Contra than save a couple mouse clicks in some apps...
I will admit, though, that I've needed to know the keyboard shortcuts in the past for troubleshooting and whatnot. Sometimes it was mandatory because a disgruntled hourly-employee had taken the mouse ;) But for coding... eh... to each their own, I suppose.
P.S.- I couldn't live without basic Tab+Enter control these days. I find myself loathing any interfaces that don't support such simplicities.
Kevin F. on March 28, 2007 6:14 AM@ hgs:
Both IE, Firefox and Opera support access keys (and I guess Safari and Konqueror as well). Press Shift+Esc in Opera 9 to see a list of links with access keys on a page (and then use the defined key to access them). In FF2, press Alt+Shift+key to activate the access key, in IE press Alt+key. Of course, the IE method (also in FF1.x) clashes with browser menu access, and both IE and FF don't offer a method out-of-the-box to discover the defined access keys, so you have to rely on the page describing them. All in all this is not the most succesful accessibilty help, no matter how the W3C promotes it.
Rijk on March 28, 2007 6:19 AMForget controlling the cursor with eyes What we need is a focus-follows-thought option in the window manager. :)
It's actually not all that science fiction as it sounds, there is lot's of work going on on brain-computer interfaces. On a rudimentary level it already works.
Ants Aasma on March 28, 2007 6:29 AMMy best keyboard speed trick is using "alt" to highlight a drop down menu, and then press the appropriate hotkeys for the menu option I want. So saving in most apps becomes alt,F,S. It speeds up ALL KINDS of operations in almost every application out there. I get more comments of "holy crap, what did you just do?" doing this trick than anything else. Plus, it's a sequence rather than a combo, so you don't get "claw pain" as someone mentioned earlier.
JayRF on March 28, 2007 6:49 AMSometimes a mouse just won't work.
Use a screen reader, close your eyes and you will soon feel the need to learn keyboard shortcuts. Thanks to a friend I had the opportunity to do just that. She needed to keyboard her way through documents, email as well as websites. I managed to learn a few shorts cuts from her. I believe she sees things better than most even though she has extreme vision loss. She is my inspiration.
Wendy on March 28, 2007 6:54 AMis there an alt-d equivalent on OS X?
Don't forget the space bar for page down while browsing, and shift - spacebar to page up
Nick on March 28, 2007 6:55 AMThe alt-d equivalent on OS X is cmd-l. And for Firefox on Windows it's ctrl-l.
Rörd on March 28, 2007 7:15 AM"Unfortunately, navigating through websites is nearly impossible without a mouse"
Not so! Firefox has the "find as you type" feature (renamed in current version to "search for text when I start typing"). This feature is the only reason I still use firefox: The page loads, you see a link you want to activate, just start typing the first few letters of that link. It will find and place focus on that link - now hit enter.
You can navigate rapidly through web pages this way. Don't know what I'd do w/o it.
DudeNumber4 on March 28, 2007 7:57 AMI had a friend, Duane, that used to call me a 'mouse cripple' because I couldn't work without it.
Doug Karr on March 28, 2007 8:07 AM" "It's un-possible!"
This is the mark of distinction between real engineers and psuedo-engineers.
Real engineers rely on science, and make their decisions based on science...."
This burns me up. No, in this specific case (that Jeff described) Jeff is using common sense. You sir, are just being arrogant. A double blind peer reviewed scientific experiment is not required in all cases and may sometimes do nothing but cloud the issue and make scientists feel superior.
DudeNumber4 on March 28, 2007 8:10 AMI have to back up the comments about the Dvorak keyboard. I'm disappointed only two people have made it so far.
It's really hard at first, just like learning to type again, but very much worth it.
One problem: it makes using the mouse even harder. Keys under Dvorak are positioned so that you use a finger on your left hand then a finger on your right, alternating, as much as possible. If you're forced to type with one hand while keeping the mouse in the other (pretty rare, but it happens when I play online crosswords, which are all terribly designed) your left hand jumps from one side of the keyboard to the other all the time. A real pain. Also happens if I've got a cup in my hand.
Apparently there are Dvorak-type layouts optimised for either left- or right-hand usage also, which would be great for amputees.
One final problem: you'll eventually lose your qwerty skills which is inconvenient when you're forced to use someone else's machine. I could actually quite comfortably use both for quite a few years, but over the last couple I've finally lost my qwerty skills.
Magnum on March 28, 2007 8:18 AMAs a touch typist I avoid anything that would make me hit two keys simultaneously unless one of them is shift. Using unfamiliar combinations of two or even three keys fast and frequently is asking for finger joint problems or RSI later in life. (I do use ctrl-X, ctrl-C and ctrl-V, though.)
I am also not in any case going to clutter up my brain with dozens of cryptic key sequences for every combination of application and operating system I use.
I very much liked the GOLD key (hit GOLD and the next key is magic) from VAX and VT-220 days and have customised emacs so that the keypad-minus key behaves similarly for some common functions.
Thanks to those posting about the use of normal keys such as / or ' in Firefox - those I may well start using.
I exclusively text-edit with Vim, and use ViEmu in VS2005. I have gvim.exe mapped to CTRL+ALT+V if I need to do some "heavy editing" on the current file in the IDE. I also use the Dvorak keyboard layout with some modifications.
I switched to both about 3 years ago and it was really painful, but the benefits have far outweighed the initial discomfort.
LukeB on March 28, 2007 8:42 AMWhat I've noticed is that it's the context switch (taking my hand off the keyboard to grab the mouse or vice-versa) that's expensive. So my tendency is to minimize the context switches.
For example, I've memorized all the MSDEV shortcuts so I never use the mouse while I'm coding (the VC6->VS2005 transition for me was quite painful; now I know the default keyboard shortcuts for both !).
Similarly, when I'm browsing, my hand's already on the mouse, so I like to have sites I visit regularly on the toolbar.
I don't agree that learning "a shortcut every day" will help increase productivity. I think one should learn the most important shortcuts, like CTRL+C and CTRL+V etc.
My brain can't handle CTRL+P+F, F12+D, or any other shortcuts that are specific to a product etc. and are not *universal*.
My only other point here is that if you are designing an application that takes in data from 1 or more set or forms, there should be keyboard shortcuts to move from screen to screen and to make filling up the forms possible without a mouse. Data driven applications are fastest when no mouse involved.
Dvorak keyboardist here, too. Taught myself to type on it 15 years ago, when I reached the limits of hunt-and-peck, so I can't compare it to QWERTY.
Mac OS offers a Dvorak keyboard layout with command keys in the QWERTY locations (e.g. undo-cut-copy-paste in the bottom-left corner of the keyboard), but that would make it more work to discover and memorize shortcuts in new programs. In Dvorak, these four shortcuts are all on the right hand, so I think it encourages keeping both hand on the keyboard and learning more shortcuts, especially text-editing navigation.
The MacBook's two-finger drag scrolling on the trackpad is also great for reducing dragging and clicking, in both vertical-scrolling text windows and free-scrolling graphic windows (and over the iTunes volume slider!). When I have a mouse plugged in on the desktop, I still often use the trackpad for certain operations. I'd like to see a desktop keyboard with a trackpad built into the wrist rest.
The other quick way to increase your productivity on the computer is "Think about what you're doing, before actually doing it".
I prefer to use my (few) precious brain-cycles to think about the code I'll be writing in the next hours, and find a way to "write less code" instead of "writing code more quickly". I use some shortcuts for the actions I perform more often (no more than 10, I think), and my mouse for everything else.
Honestly I've seen system administrators and developers "going commando", and eventually they all seem under a schizophrenia attack :-)
By the way... if someone decided that the mouse was a good idea, maybe it's because learning dozens of shortcuts was slowing users down...
filini on March 28, 2007 10:41 AMThe superiority of the Dvorak keyboard is a myth that was debunked long ago. QWERTY was never designed to slow people down. There's never been any demonstrable evidence (i.e. by an RCT) that Dvorak is a better layout. Most of the so-called field success of Dvorak - and there is precious little - tends to be because the testees never learned properly how to type on a QWERTY.
Off-topic, I just saw this...
Steve Riley: "If a programmer is creating several hundred new lines of code each day this is generally way too much."
This is a joke, right?
Aaron G on March 28, 2007 10:42 AM"Another obstruction to productivity just as big as ONLY using a mouse is a qwerty keyboard"
It took me about 3 weeks before I was sufficiently competent in dvorak. Now I'm faster (although I never did time tests and it was quite awhile before I got really fast) and there's much less finger and hand movement.
You don't have to get a new keyboard:
http://www.mwbrooks.com/dvorak/dvorcaps.pdf
You can teach yourself:
http://www.mit.edu/people/jcb/Dvorak/dvorak-course
Dvorak Background:
http://www.dvorak-keyboard.com/
This is one of the reasons I love Vista*: the new Start menu is like this new super-shortcut / command-line thing. If I want to launch the Windows SDK documentation, for example, I hit the windows key, type sdk, and then enter (don't wait for the search results, it figures it out automatically and just launches the first result). Want Firefox? Windows key, type F, then enter.
The quicklaunch area is much more awesome now too, since you can use Windows key + a number to launch shortcuts. So if I have a link to Wikipedia as the 4th quicklaunch item I just hit Win+4 and I'm there.
* Full disclosure: Remember, I work for Microsoft
Rick Brewster on March 28, 2007 11:09 AMas i said on the shahine.com site in regards to browser url input, i didn't know about the alt-d shortcut, but hitting F6 does the same thing (focuses and highlights the location bar) in ie and firefox.
also, you can not only do ctrl-enter for .com websites, but also shift-enter for .net and ctrl-shift-enter for .org. this only seems to work with firefox and not ie though. :(
cowgod on March 28, 2007 11:18 AMThe debunking of Dvorak consists of bean-counters asserting that the cost of re-training people will never be recouped by a marginal (about 2%) speed gain. It ignores the undeniable fact that QWERTY requires a lot more finger travel, thus probably more hand strain, thus quite possibly more injury. (Note that I explicitly went from what is proven to what seems probable there -- I have no hard evidence that QWERTY causes more injuries than Dvorak; Dvorak haytuhs don't have any hard evidence that it doesn't.)
If the debunkers have any concern for typists' comfort, their articles don't show it. Me, I care about my comfort, and am very glad to have learned Dvorak for that reason.
I couldn't agree more. I luv using keyboard shortcuts and seeing people's reaction when I use one and I get a "How'd you do that?!". However, I dislike the fact that my laptop doesn't have a windows key on it for using windows shortcuts like ctrl-l, ctrl-e etc.
Tim on March 28, 2007 11:24 AMGreat post, Jeff.
I wanted to point your readers to an excellent interface related to this idead. Can you resist the urge??
Seth Root on March 28, 2007 11:38 AM"The debunking of Dvorak consists of bean-counters asserting that the cost of re-training people will never be recouped by a marginal (about 2%) speed gain. It ignores the undeniable fact that QWERTY requires a lot more finger travel, thus probably more hand strain, thus quite possibly more injury. (Note that I explicitly went from what is proven to what seems probable there -- I have no hard evidence that QWERTY causes more injuries than Dvorak; Dvorak haytuhs don't have any hard evidence that it doesn't.)"
That's patently absurd. I don't even know where to begin - perhaps with your ad-hominem referring to respected economists as "bean counters", or by people who haven't drunk the Kool-Aid as "haytuhs". If you want your profession to be respected then perhaps you should start by respecting others'.
You even admit that you don't have evidence of these injury rates, so how can you say in the same paragraph that it's "undeniable"? It's completely deniable! My fingers and hands don't "travel" at all on my QWERTY keyboard (except using the home/end/pgup/pgdown/arrow keys but a Dvorak won't help me there). I think one would have to use the hunt-and-peck method in order for that to be true.
All we have to go by is your personal testimonial. It's your word against mine, and your word against the market's. If QWERTY really is so much more uncomfortable and injury-prone than Dvorak, why does almost nobody use it? I really hope your reason isn't "because everyone else is ignorant". Whether it's Dvorak keyboards, Mac OS, Beta or LaserDisc video, it's always the same thing: a lot of posturing and subjective statements without any evidence.
What was your typing speed on QWERTY? Were you ever really trained on it? Did you ever injure yourself on it? Do you know anybody else who was injured, who then switched to Dvorak and reported being fine? Is it not remotely possible that the improvement in "comfort" is psychological?
Aaron G on March 28, 2007 12:08 PMThis seems like the right place to ask a question that’s been on my mind for a while: How do I switch between remote desktop (mstsc) windows when they’re in full screen mode using the keyboard?
Stephen Turton on March 28, 2007 12:10 PM"Go to the Washing Mutual Bank website: www.wamu.com
Do you by default end up in the login form elements? NO
Number of TABs to get to the username: 19"
I literally will type "user{TAB}" to place the focus in the correct field in these cases (using aforementioned FF option).
DudeNumber4 on March 28, 2007 12:46 PMThis is the first article I have read here that is just flat out wrong. In addition to the links given above, I would add:
http://plan9.bell-labs.com/wiki/plan9/Mouse_vs._keyboard/index.html
If you still think that the keyboard is faster than the mouse, do as the linked article suggests and "time yourself".
"One final problem: you'll eventually lose your qwerty skills which is inconvenient when you're forced to use someone else's machine."
XP allows you to place a layout switching icon on the taskbar. I set this option on all my relative's machines (they don't mind the icon and each newly opened application defaults to qwerty if you want).
"If QWERTY really is so much more uncomfortable and injury-prone than Dvorak, why does almost nobody use it?"
Doesn't this go w/o saying? 99.99% of the world's keyboards are qwerty, and when any person undertakes the task of learning to type, they know nothing of dvorak. Once qwerty is learned, it's very difficult to switch.
Can you disprove the fact (not saying you can't) that the original layout was designed with the idea to discourage fast typing so that the mechanical arms wouldn't get hung up? Or that there is much less hand/finger movement using dvorak? That was enough to make me switch when (I thought) I had carpal tunnel...
> 1. Type a username.
> 2. Press the Tab key.
> 3. Type a password.
> 4. Press the Enter key.
I agree, keyboard short-cuts certainly make life easier... but are Tab and Enter keystrokes seriously considered "short-cuts"?
Even my mom uses Tab filling out forms!!
Kevin on March 28, 2007 1:19 PM@Seth Root,
That is an unqualified disaster of an interface. It might be entertaining as a game or a demo or a "Media Information Studies" term project, but it's bad for a whole pile of reasons as a real interface.
It combines the worst aspects of keyboard interfaces that have been discussed here (high level cognition, determination of context) with that of mouse interfaces (moving hand, precise motion, switching your motor skills to another mode), while managing to be brutally unforgiving in practice (oh, you didn't want to open that menu? too bad you moved the mouse there by accident). That doesn't even consider accessibility...
Therac-25 on March 28, 2007 1:26 PMI'll give this a shot, as soon as I can, but for now my theory is that mouse+keyboard is faster and better than mouse-only, or keyboard-only.
The log-in example seems quite slow with a mouse-only approach, but I usually use both mouse and keyboard:
1. Move mouse to username textbox and click it, ONLY if the username box does not have focus by default;
2. type username;
3. tab to get to the password textbox;
4. type password;
5. tab to get to the 'login' button (sometimes redundant, e.g.: the 'login' button is the only button on the login form, for web application/sites).
I don't know.. I like the idea of going key-mmando (sorry, going commando brings to mind bad images for me) to see if I can learn new stuff and find better ways to do things I am currently doing with my mouse+keyboard combination, but in the end I think a more 'holistic' approach is the better answer.
F.O.R.
>It may be hard to believe, because it doesn't seem that hard, but repetative stress syndrome is a real thing.
Actually, using the *mouse* causes me repetitive stress pain. Something about how my fingers hover over the buttons.
I prefer to alternate mousing with using keyboard shortcuts for relief. Programs should give you the choice.
Phil M on March 28, 2007 2:54 PMHere's the granddaddy of Dvorak-debunking articles, that all the rest quote:
http://wwwpub.utdallas.edu/~liebowit/keys1.html
You can see that, whatever issue one may take in my use of "bean-counters" and "haytuhs", my specific characterizations are correct. It credits Dvorak with being at least 2% faster (the smallest result from several studies cited); it doesn't address comfort whatsoever; their conclusion that Dvorak isn't superior stems from considering the only relevant issue to be whether it's sufficiently superior for a business to recoup an investment in retraining its staff.
"It's completely deniable! My fingers and hands don't "travel" at all on my QWERTY keyboard"
One wonders how you imagine typing occurs without the fingers traveling. Here's a Mac program to facilitate calculating the difference:
http://www.integrity.com/homes/tomandkaren/Keymileage/
The portion of my statement I was submitting as undeniable is the greater finger travel required with QWERTY. It's well-established, but, as you demonstrate, it's not actually undeniable, if one is sufficiently creative in one's denial.
That additional finger travel would engender additional strain seems inescapable, but, as I said, I don't have evidence. It's conjecture. My own experience constitutes anecdotal evidence; I submitted it anecdotally.
"If QWERTY really is so much more uncomfortable and injury-prone than Dvorak, why does almost nobody use it?"
I said that it "probably" caused more hand strain and "quite possibly" more injury. I said explicitly that there isn't hard evidence. Your straw man doesn't resemble what I actually said.
There are many, many things we do in daily life for which there are alternatives that engender less strain. Most people, most of the time, can take the additional strain without noticeable effect, and never bother thinking about alternatives. I did a decade of QWERTY typing without feeling strain. If it weren't for a lot of other bigger things I was doing wrong, that might well have continued to be the case.
Ubiquity is self-maintaining. In popular thought, learning to type means only learning to type QWERTY. Most people are never exposed to a keyboard labeled in Dvorak (I've never had one); no one would want to learn to type on a mislabeled keyboard. And once one has learned to touch-type, it would take a dramatic reason to consider re-learning.
"What was your typing speed on QWERTY? Were you ever really trained on it?"
Somewhere around 110 wpm. I took a typing course in high school, and had correct form. I worked my way through college as a typesetter, much of which work was straight typing, so I had plenty of practice.
"Did you ever injure yourself on it?"
I had a debilitating repetitive stress injury that left me in non-stop pain from fingertip to shoulder in both arms for months. A dozen doctors told me I'd never work 40 hours a week at a computer job again, and that I'd be substantially impaired for the rest of my life. I've proved them wrong.
Switching from QWERTY to Dvorak was one of very many changes I made in my recovery. I absolutely do not claim that it is discretely the case that QWERTY caused the injury, or that Dvorak cured me. I also absolutely believe it was one of many things that helped. Not the biggest, almost certainly not sufficient to have made the difference between pain and its absence, but something that helped.
"Do you know anybody else who was injured, who then switched to Dvorak and reported being fine?"
I know several people with stories like mine, in which switching to Dvorak was one of many changes made while recovering from injury. All of them feel switching was helpful; I'd be very surprised if any of them ascribed primacy to it.
"Is it not remotely possible that the improvement in "comfort" is psychological?"
I used to be in non-stop pain. Now, I'm not. Is it remotely possible you'll believe me when I tell you that the difference isn't merely psychological?
We're on the same side that the question could and should be resolved by study and evidence. And, as we've both said, neither of us have it.
Zed on March 28, 2007 3:04 PMUpdate for those who use Maxthon and want to navigate with the mouse, there's such a plugin - LinkClicker:
http://forum.maxthon.com/index.php?showtopic=26380
Not brilliant, but better than nothing.
well, I think, that apple-study is not correct.
Imo you cannot say "Mouse > Keyboard by stopwatch, discussion dead."
At first, I think,, there are applications optimized for mouse usage and there are applications optimized for keyboard usage. As everyone states, try web browsing without a mouse. sick. Or try playing quake without a mouse. Mechwarrior2 anyone?
However, take a look at those hardcore-editors. vi and emacs. Those are optimized for keyboard usage.
I use vim very much myself and I do NOT think what key I need to do stuff. I know it. I do not need seconds to find the keys to kill that line and insert another one. thats just caps-dd-i. With caps = esc. At least, iirc. Usually I just do not know what I type really, I just type what I want to be in that code. Who cares what the precise commands look like?
However, I usually have major problems with my mouse, especially if it is about text-editing and a little squiggly editors. Usually it ends up with something like "ok, selected 2 characters too many, gotta get them off, darn, one short, ok, right again, ok, have it all, ctrl-c, scroll...".
Thus, I think there are not only keyboard-programs and mouse-programs, but also mouse-*people* and keyboard-*people*. As I said, I just know what I want and my fingers somehow tell vim what to do. Same goes for my brother, btw.
Btw: usually, vims shortcut fit my way of thinking way more than the mouse could ever do. I rather think "ok, take that 10 lines, paste them somewhere else and wrap a function around that." (refactoring) ok? what happens? 10ddGO, type function header. done. with a mouse, Id have to select all that 10 lines, carefully watching to get that 10 lines, scroll down, paste it, remove the cursor and type. Ok, maybe that is faster, but I dont really think so.
Thus, I think, there are 2 factors always.
The user: is he a mouse-user or a keyboard-user?
The program: is it optimized for mouse-usage or keyboard-usage?
And THEN you might say:
if you put a keyboard-user into a mouse-optimized program with several half-hearted shortcuts, a mouse-user might be faster in a keyboard-optimized program with some half-hearted mouse-support.
However, an experienced keyboard-user in a keyboard-optimized program will be faster.
Just for fun:
Today, at highschool, we had to apply a quick fix to some exercise. no problem, vim it, use regex to jump to problem, kill problematic line, insert solution, write, close vim.
After that, I asked some mouse-fanatic wether my fix whould do the job and all he said was "I dunno, that file was closed again when I just realized it was open already". ;)
The free market's choosing the "best" is a canard. Being charitable, the statement is a tautology; being uncharitable, it is not as universally correct as it sounds. Like any hill-climbing system that doesn't distrust what it finds, it suffers from picking local minima -- and getting stuck. QWERTY is one example.
Local minima aren't necessarily bad, they're just... locally minimal. Pick some other metrics (like, staying on topic, percentage of vowels on the home row, and degree of per-keypress alternation between use of left and right hand when typing English), and you may well find some other spot (probably over some enormous dirty great bump in your original graph) that minimizes them better.
That Dvorak keyboard layout looks pretty interesting, especially since it's free and easy to try out.
From http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard -
As of 2005, Barbara Blackburn is the fastest typist in the world, according to The Guinness Book of World Records. Using a Dvorak Simplified Keyboard, she has maintained 150 words per minute for 50 min, 170 word/min for shorter periods of time, and has been clocked at a peak speed of 212 word/min. Blackburn failed her typing class in high school, first encountered the Dvorak layout in 1938, quickly learned to achieve very high speeds, and occasionally toured giving speed-typing demonstrations during her secretarial career.
Jarrod on March 28, 2007 6:54 PMConspiracy trivia:
Typewriter is the longest word you can spell using only the top row of a qwerty keyboard.
Jarrod on March 28, 2007 6:59 PMThe problem with the tog site is that it doesn't list the specifics of the study, or I at least I couldn't find them. At one point he said they compared the speed of using the cursor to change all the e's to |'s using the keyboard and the mouse. This is a ridiculous test, because if you have an ounce of brain you would search and replace. If you do that a lot and have the shortcut well-learned enough to touch type it then using keyboard is faster, otherwise mouse over the menu. If the entire 50million dollars was spent on useless tests like this, the study is worthless.
david on March 28, 2007 7:16 PMFor games and general navigation I agree, but I am absolutely certain that if anything to do with input speed is slowing down your coding, you are just not thinking enough.
Refactoring (which you should probably be spending as much time on as coding) even works better with a mouse for the most part--as does any selection-based task,
This also goes for languages that let you save a few lines of code here or there. Not that I'm in any way in favor of redundancy, I just think that using default values and skipping declarations is going in the wrong direction.
Code needs to be 100% declarative. It should set out exactly what is going on, and the flow should be obvious (as opposed to things like C++ overloaded operators). It should read more like a book than some terse summary.
Browse through Sun's Java library classes sometime to see "Good code"--It's written to be understandable, it's simple and it's very obvious what is going on. Where the code may not be obvious the comments are.
Jeff,
>> In Windows Explorer, there is no keyboard shortcut for New Folder
>Alt+F, W, F? Or use the right-click equivalent menu (ctrl+f10) key.
Not sure what you slaved ctrl-f10 with, but on a default layout it's equivalent to an alt press. Unless that's what you meant. (I usually use the context-menu key for that, keeps mousing and keyboarding mentally in tune.
Plus alt-F, W fails if some other bull%# adds a shortcut with &w to the context menu for any files. Ugh.
Foxyshadis on March 28, 2007 8:45 PMI happily browse the web most of the time without touching a mouse, using Hit-A-Hint and SurfKeys. The only thing SurfKeys lacks is the ability to change focus between frames for scrolling, but you can fake that with Hit-A-Hint. Highly recommended!
Anon on March 28, 2007 11:01 PMYeah, I don't count Alt-menu shortcuts as "real" shortcuts - they're long, and they can be stolen like Foxyshadis says.
Why not Ctrl-N? It isn't used for anything else in Explorer.
Ben Hollis on March 28, 2007 11:47 PMI once wrote a Browser Helper Object (BHO) for Internet Explorer 6 called KeyboardAccess. It does the link enumeration thing (like the Firefox addons mentioned here before in the comments) with almost all click-able elements in a web page and it works very fast.
When I switched to Firefox I pretty much stopped developing KeyboardAccess, but you can take a look if you're interested:
http://keyboardaccess.sourceforge.net/
Enjoy.
p.s.
It should work on Internet Explorer 7, and it's open source so if you have any suggestions, be sure to implement them too :)
How about changing to Dvork Keyboard. It's likely to speed up productivity even more over mouse... once you get over the learning curve.
Mark Stair on March 29, 2007 4:00 AM> You wouldn't make fun of someone who used a crutch to walk (or would you?)
I would make fun of a person who thought they where going to be a running back in the NFL if they needed a crutch to walk.
Are you an IT professional or are you a casual web surfer/blog troll?
I'm constantly tell people how to quickly find things in eclipse or with google desktop (ctrl-shift-R/T) or ctrl-ctrl and they actually refuse. It's seems some people like to click around in GUIs and make up fantasies about how somehow the extra time isn't important.
mike on March 29, 2007 5:20 AMthe windows key + r opens the run command window and can be your best friend for weening yourself from the mouse.
type the following in the run command window to open the following programs:
winword - opens ms word
excel - opens excel
www.website.com - opens website in default browser
mstsc - remote desktop
....and on and on.
there are tutorials for creating your own keywords for opening programs through the run command window.
i find using windows key + r to be a big timesaver.
JRock on March 29, 2007 6:52 AMI use a logitech vx revolution and i have many keyboard shortcuts programmed into it, such as alt+Tab is the second center click and ctrl+tab/ctrl+shift+tab is the zoom +/- button. i also have many others for specific applications. the mouse is pricey but honestly its made things incredibly convenient.
ive been yelled at by fellow programmers for being too "mouse-centric," as im new to the field. however i still use keyboard shortcuts like crazy. its just sometimes youre using the keyboard and sometimes youre using the mouse. so i think i have the best of both worlds.
> navigate in Firefox by hitting "/" and then typing in the text of the link that you want to go to
theres also a setting in firefox 2.0 that when you start typing it starts searching for the first occurance. its not on by default though.
x's on March 29, 2007 8:34 AMI am a big fan of using the keyboard as much as possible. I have found that over the years I have formed "modes" in my brain for the different types of editors I use:
Mode # 1 - "Everyman" Editing:
This is my brain mode for when I am in a standard windows text box, a notepad window, or editing something on someone else's editor and I want to have the best chance of things just "working". No fancy, feelin' cool editing tricks here. Just get the job done and use the experience to remind you of how much nicer the other mode's are.. (This message typed in Mode # 1).
Mode # 2 - "Faux Emacs"
Ah, old school emacs. This is my favorite, because if you are trained right you can keep both hands on the keyboard for just about everything. No lifting your hand up to search for arrow keys or the home/end. Just keep those palms flat on the keyboard ergo-bench and type away. Emacs uses the CTRL and ALT keys as modifiers for all the basic editing commands, and has no qualms about, say, using Control-F to mean "move cursor forward" and Control-d to mean "delete character". There are some interesting conflicts that arise when you bring the default emacs commands to windows. The one that really freaks people out is when I have Page-Down mapped to Control-V. Heaven help the poor soul who tries to use my Visual Studio while its emacs profile is still engaged. They go to paste a bit of text and the *entire screen changes!* Heh heh... if I had a dime for every time a coworker yelped in dismay...
I do have a somewhat hybrid set up for those apps that I can configure to use emacs key bindings - things like Shift + Control + F = Extend selection forward one char, Shift + Control + A = Extend selection to start of line, and Control + U = Page Up (took that from vi). I am actually more in tune with this "bastardized" hybrid than true emacs, but drop me in real emacs editor and I only start to choke when I have to remember those funky double-sequence commands like Control-X Control-S to save and the like. Or heaven help me if I need to remember how to manipulate kill regions or run a Meta-X search-for-string...
Mode # 3: "To The Pain" (g)VI(m)
Long ago I lived in worlds where sometimes emacs was not available. I bit the bullet and learned VI. It is just as powerful as emacs in its ability to let you keep those palms flat on the keyboard, but it does it in a different way. VI is a "mode-based" editor - meaning that you press a key ('i') and then everything you type until you hit the ESCAPE key is treated as text input. If you are not in 'insert' mode, then you're in 'command' mode, which is where you can move around ('ijkl') and enter "colon" commands like ':w ~/myfile.txt', ':wq' (write file then quit), or ':q!' (quit without saving, dammit).
After literally years, I eventually reached the point where I could effortlessly switch into "vi" mode and do quie well. These days, I am even able to do basic search and replace without having to look it up. Don't believe me? Check this out:
':1,$s/foobar/Snickers/g'
Looks like Sendmail control codes, or Perl gone right, eh? No sir, it is my version of "Replace every occurence of the word 'foobar' with 'Snickers' in the file. My mind tells me that this command is essentially broken down like this:
':1,$s/foobar' - this part tells vi to search for the string foobar anywhere from the 1st line of the file to the end of the file '$'.
'/Snickers/' - If you find a foobar, replace it with Snickers please...
'/g' - Oh, and do it globally for all matches you find. (Snickers really satisfies...).
It turns out that depending on which vi you are using you may not need the 'g' part at all.. and frankly if you use me as your canonical reference for how to break down the vi command above you should have your brain checked for lesions.
Well, anyway, that's my brain on editors after well over ten years of programming in Unix, Windows, and other seedy locales. Thank you for listening, and for the opportunity to expound at such great length. :)
-Michael (http://yevaud.blogspot.com)
PS - I accidentally posted this comment in response to a much older article linked by this post that described the common keyboard shortcuts, so forgive this repost.
PPS - My blog has this post as well if you want to read it with better formatting.
Michael Moore on March 29, 2007 10:49 AMLaunchy is the sh*t! I rarely use the mouse to start any program. It's the best thing I've used for many years.
P on March 29, 2007 2:11 PMHow about the Layout menu of the Organize drop down in Vista's file explorer? I wanted this in XP too but had no luck. I would love to be able to flip the Navigation Pane on and off with the keyboard.
This seems like such an obvious keyboard shortcut but I can't seem to find a way; has anyone else?
mhardy on March 29, 2007 2:25 PMI'm with mhardy. That would make that feature a lot more useful. I'm pretty happy to have found the Ctrl+N to open a new window in explorer.
TheGeoff on March 29, 2007 5:13 PMAbout keyboard browsing: maybe you should try "Caret Browsing" (F7) from Firefox. Along with Tab/Shift-Tab and incremental search, it makes almost anything possible (erm.. except drag'n'drop?)
b100dian on March 30, 2007 2:23 AMwow. didn't know anyone cared this much. I use the keyboard all the time. I'm doing it now in fact! Any boost in productivity gained by my skillful use of my non-dvorak keyboard is immediately squandered by people stopping by and talking to me about non-work matters. Stop IT!!!
spanky on March 30, 2007 9:56 AMTo get started in a mouse free world you can start with these ingredients:
- An application launcher, like Launchy or Google Desktop.
- WinKeys for global keyboard shortcuts.
- Total Commander. Never use lame Windows Explorer again. TC has keyboard shortcuts for everything. It pains me to watch people navigate with Windows Explorer.
- UltraMon if you use more than one monitor.
Cheers.
Diego on March 30, 2007 5:55 PMWow how about this??
http://www.youtube.com/watch?v=AtmwQnUlEmc
use a webcam to track your hands to act like a mouse!
I've wanted this forever. its the best of both worlds. you dont waste time moving your hand off your keyboard to your mouse, and back.
beautiful
mt256 on March 31, 2007 6:21 AMHit-a-Hint is indeed *the* solution for mouseless browsing:
https://addons.mozilla.org/en-US/firefox/addon/1341
I highly recommend it.
@Therac-2
You're an idiot. I posted that link because it provokes thought, not because I want to replace the keyboard with mouse gestures.
In terms of UI dev, it's f'ing fantastic. Do you really think there isn't a market for high end interaction design?? Are you THAT committed to accessibility that you deny the chance for UI engineers to explore new spaces? Should a user be forever limited in the ways they are able to communicate with an application?
pshhh. i think not.
For anyone else, this is what we are talking about:
<a href="http://www.dontclick.it/">http://www.dontclick.it/</a>
Heh... this is why I always get pwned in strategy games :)
Jasmine on April 6, 2007 2:41 PMAmen.
A while back I wrote a similar post about how keyboard shortcuts can help you save a considerable amount of time per day.
http://www.webdev101.com/tips/most-helpful-thing-i%e2%80%99ve-ever-learned/
Doug on April 9, 2007 4:13 PMHellalooyah!!
Good job Doug! See my post above...
Everyone else. Super duper job as well. I wish I could work with people as smart as you. I work with a bunch of morons who actually touch their mices & use two monitors! Eek! Gads! Imagine having to watch someone mouse over two screens. (I imagine heads exploding even as I type this on my keyboard (without the help of a stupid mouse))
On second thought, maybe I'll try and come up with a way of using two mice at the same time & eliminate the need for the keyboard altogether. I do have a lazy eye, after all, so tracking them both should not present a problem. and you non-lazy eye suckers could probably get surgery to fix your problem/short-comings.
spanky on April 10, 2007 9:12 AMMouse-weary Mac users might like to try an application called Quicksilver
http://quicksilver.blacktree.com/
It's a graphical but keyboard driven application launcher and search tool -
it looks up applications, documents, address book entries and other things
(a bit like Spotlight) and then lets you build up sort of graphical 'commands'
like 'Open', 'copy to clipboard', 'email to' etc. Honestly, it pains
me to watch other Mac users still hunting for applications in folders they've
hung off the Dock.
One other tip - most Cocoa text widgets accept a subset of Emacs bindings:
Ctrl-D delete, Ctrl-E end of line, Ctrl-K kill to end of line, etc.
Here's the question of the day:
Is writing bad code faster better than writing little or no code at all?
I use firefox and the best way to surf IMO is the ' key.
It does the same as / or Ctrl+F but only for links.
So, you just press ' type some characters from the link you want to go and then Enter. You can even press F3 to repeat the last search (great for automatically pressing this "next" link).
Voila! You are on your next site with no effort (try it in the google results, it is amazing :) )
in firefox, if you type the apostrophe, the search as you type only searches through links.
wozza on July 10, 2007 4:28 PMCtrl-Shft-Escape
The best keyboard shortcut by far.
boelwda on October 29, 2007 11:54 PMdontclick.it is possibly one of the best looking yet worse UI I've come across.
1. It's fully flash.
2. Error rate of opening up unwanted links is extremely high.
3. Most of the links are forced in the content to fill up space.
4. Internal content conforms to "mystery meat" style of navigation. Your mouse opens something without you planning to. Outside of the navi-bars, you have no idea what it is you're opening or why. It's opening just because.
3. Works best as a standalone/demo and not as a UI.
4. Works best for maybe a Cola type product demo, delivered on CD-Rom.
As a designer, my opinion is that's not experimenting. That's taking well known usability no-nos and trying to work it into something it can never be.
Consider also that the site is fully vector with mostly basic shapes which makes the animation a joy to behold. However, in a real world scenario, with media and images added, that smoothness and snappy interface animation will suffer pretty badly even when viewed using broadband.
It ends up being gimmicky at best. A nice looking gimmick...and knowing the brain-dead way that the design & advertising world operates (most big ad agencies wouldn't know UI from fish), it will probably win some kind of award for "most innovative UI". UI is expressed in millimeters and not broad sweeping kilometer-length strokes.
ounkeo on January 11, 2008 11:46 PMThe Firefox users in this blog don't seem familiar with the features of the app.
Enable Caret Browsing; an accessibility feature.
Parse the web page like an editable document using cursor keys. Similar to Opera's spatial navigation.
ibguru on January 17, 2008 4:05 PMQuick note: You can also use Shift+Enter (.net) and Control+Shift+Enter (.org) in addition to Ctrl+Enter. Oh, and Ctrl+L is my preferred way to get to the location bar because of its similarity to Ctrl+K for the search bar. :) Alt+D just seems out of place, but I guess whatever works.
Jake on January 21, 2008 7:38 PMThe Colemak keyboard layout ( http://colemak.com/ ) is slightly more efficient than Dvorak, and *much* easier for QWERTY-users to learn. And it puts ZXCV in the right place.
By the way, the anti-jam features of QWERTY aren't all about slowing the typist down—the other technique was to separate common digraphs so that the first hammer could get out of the way of the second quicker.
It's interesting that the main thing people here are mentioning about Vista is the search field in the Start menu, and no-one's yet mentioned that in Mac OS you can do the same thing by pressing Cmd+Space. (Except it appears in the opposite corner of the screen, as a certain snarky YouTube video reminds us.) And by the way you can press Cmd with a thumb without taking your fingers out of the typing position.
I think I'd like dontclick.it if it was presented as art, rather than as a practical experiment.
A few remarks on Vim:
Remap Caps Lock to CTRL. ^[ is Esc, ^H is Backspace, but easier to reach (not just in Vim, but also in bash and Cocoa (although in the latter it's occasionally overridden by website access keys—ugh!)), and in insert mode ^P can save typing when you're using long identifiers. A few other control-keys also come in handy, but I find ^[, ^H and ^P are the most important ones in insert mode. And in normal mode ^F and ^B scroll by a screenful.
The modes are easier to deal with if you get into the habit of hitting Esc (or ^[ ) whenever you stop typing. Then whenever you don't remember what mode you're in, assume it's normal mode. (If you forgot to press ^[, you'll insert some garbage which you can get rid of with ^H—much less problematic than the opposite mistake.) And don't always use 'i'. Learn IaAoOcCsS as well. And maybe gi and gI. I've even had occasion to use 'r'.
Don't rely on hjkl to get around. (Colemak is good here, as it puts them out of the way. Ignore what the Colemak FAQ says about Vim.) For long movements, cursor keys (including hjkl) are slower than the mouse, even if you don't notice. Learn to use fFtT; for horizontal movement (I even find comma useful, although I gather that's unusual), and /?nN{} for vertical movement. Learn *#%() too. I find 'hlsearch' handy during a search, but it's distracting when I'm done searching, so I've :nmapped \\ to :nohlsearch<CR>.
I'd say learn to use marks, but they require too much thinking ahead.
Sam on February 4, 2008 6:02 AMI agree, and here's a little anecdote supporting it.
I once worked on a big-arsed mainframe, and we wanted to find all users running scripted workflows. Have you used mainframe terminals? You know, green screens TAB keys. NO GUI!!
Well this bloke's name came up as pumping through a huge number of transactions. We assumed it must mean he's running a script. And you know where this is heading don't you. He had a big pile of paper, and a good old fashioned keyboard.
No mouse clicks in sight.
Rod T on February 26, 2008 6:42 PMI believe the Apple study to be extremely dated; it was written in 1989 and even references the Lisa. At the time, keyboard shortcuts were different than today such as the WordPerfect shortcuts that were indeed quite complex and challenging to remember unless you used it all the time.
With the advent of the menu (which was still not universal in < 1989), keyboard shortcuts also have visual feedback when used for menu items which helps reinforce the keyboard usage. There are certainly applications that are more efficient through the keyboard, some through the mouse, and some through both.
Saying the mouse is faster than the keyboard is somewhat akin to saying the average age in a country is 40 and then assuming there are no deviations and therefore everyone is 40. There are far too many variables to make that broad of a statement.
Ryan on March 6, 2008 10:43 AMYou can use vi keybinding on firefox. No more mousing around. :) Download vimoperator at http://www.vimoperator.mozdev.org. Current version supports only firefox 2.
It really is faster to use the keyboard shortcuts. It does feel nice to move the pointer around the page sometimes, especially after typing for a long time. http://www.whatisgoingonblog.com
What is going on, blog on July 29, 2008 7:49 PMIn Firefox, there is a useful shortcut that helps browsing without the mouse: ' (single-quote).
When you press the single-quote key, Firefox lets you incremental search for some text in the links only.
It is similar to find-as-you-search using the / (forward-slash) character, but only finds matches in links.
Vimperator's been out for Firefox 3 for quite a while now, you should give it a shot.
Patr on October 31, 2008 2:55 PM=~n
b on November 16, 2008 7:56 PMAs an avid mouse hater, this is a bit of a "duh" moment.
If you're going to put down the mouse, you might as well make it easier on yourself and switch to a window manager that is keyboard-friendly. For our Mac friends this might be impossible, for windows users it's hard but not un-heard of (when I was stuck on a windows box I replaced the shell with blackbox), and for linux users its stupidly simple.
My favorite so far is xmonad, there are others such as stumpwm and ratpoison.
The benefits are incredible. No more sorting through windows trying to "find" "where" you put something. You know you opened that window and it should be immediately infront of you when you need it. All information in all visible windows are -- VISIBLE! Beautiful, full-screened, and no fussy animations, borders, or decorations.
Be warned though, some tiling window managers are terrible at dealing with modal windows (ie: pop-up dialogs).
In combination with a good text editor (emacs, vim, take your pick) and FF + vimperator (or emacs keybindings if you're so inclined) and you'll never have to touch the mouse ever again.
Become a touch typist and have a multi-head set up and you'll be whizzing. I've had moments where the interface to the computer melted away and I was manipulating systems and coding at the speed of thought. The mechanics should be removed as much as possible -- this is afterall, an intellectual job and not a manual one.
Looking forward to a mouseless world.
j_king on November 19, 2008 9:46 AMAnother vote for the Firefox addon Vimperator here. I can go flying through websites faster than people can understand what's going on, as it's designed to be very vim-like.
Izkata on January 17, 2009 8:48 AM"Programmers could also learn touch-typing, but this wouldn't help them get their job done any faster."
While I agree that sheer speed of code entry isn't the mark of a good engineer, don't think that the reverse is true: that a good engineer can't be improved by learning to enter code faster. I took touch typing in high school because none of the other classes offered at the same time were interesting, and it turned out to have the greatest impact on my software career.
Sure, I had gotten to the point of two-finger-per-hand-hunt-and-peck-without-looking by that time (and had to unlearn it), but I still hit the wrong keys often and had to stop and reorient myself sometimes. But with touch typing my speed increased greatly, and my ability to put thought to screen shot up.
That doesn't increase the value of what I put on the screen, as you said, but it means I have that much more time to evaluate what I've done and make it better. You'll also be more likely to write clear comments that you'll find useful when you can type prose faster.
David Harkness on January 18, 2009 1:02 PM"Jeremy Miller calls this the first step to coding faster."
Who gives a rats about coding faster? - I play Sonic the Hedgehog fast, I don't try breaking the record books when producing code, even less so when producing good code.
goatslayer on January 19, 2009 2:53 AMI have gone a step further, every program that I use are choosen because of how easy their are to use with keyboard, vim for file editing, opera for browsing, ratpoison for window managing, and so on... and specially with linux it is quit easy to manage the file with the shell. sad that windows make use of the keyboard so hard.
Augusto Hack on February 6, 2009 4:17 PMI have gone a step further, every program that I use are choosen because of how easy their are to use with keyboard, vim for file editing, opera for browsing, ratpoison for window managing, and so on... and specially with linux it is quit easy to manage the file with the shell. sad that windows make use of the keyboard so hard.
Augusto Hack on February 6, 2009 4:18 PMActually, when you're using Firefox there is a way to go mouseless. First enable the search as you type feature. Then install the Conkeror addon for firefox. Now you're all ready to go.
bg on May 7, 2009 3:22 AM">> In Windows Explorer, there is no keyboard shortcut for New Folder
>Alt+F, W, F? Or use the right-click equivalent menu (ctrl+f10) key.
Not sure what you slaved ctrl-f10 with, but on a default layout it's equivalent to an alt press. Unless that's what you meant."
Right-click equivalent is Shift+F10, not Ctrl+F10
cthrek on June 1, 2009 3:36 PM| Content (c) 2009 Jeff Atwood. Logo image used with permission of the author. (c) 1993 Steven C. McConnell. All Rights Reserved. |