Mouse vs Keyboard: Is Mouse Bad for Programer?

,

Every time i post about mouse, a lot hacker type of coder will say programer don't need mouse, or something similar. (best exemplified by the naming of the Linux X11 Windows manager Ratpoison)

SpaceExplorer3D mouse 43392
“3SpaceExplorer 3D Mouse” (phone by Haukur Herbertsson img src ©) 3D SpaceExplorer 3D

if you consider mouse vs keyboard, they are different input devices, and for some operation, the mouse is simply the more efficient tool. There are lots different types of input devices, different ones have different input characteristics. For example:

position
When the application is complex, such as 3D modeling, a mouse becomes essential. 〔☛ Xah's Second Life Build Tutorial

Mouse is better than pen tablet for free positioning, such as clicking on links in browser, or casually browsing emacs info doc. 〔☛ Emacs: Info-Mode Keys, Adding Web Browser Backspace Key, Mouse Back Button

Why is Mouse Important for Programer Too?

here's one tip why n-button mouse is good. Suppose you are browsing the web. Your hand is on the mouse. Now you need to go back to previous page, or switch tab, or close a tab. You need to switch your hand back to keyboard. Or, you move mouse and aim, which can take 2 seconds and requires eye-balling, and require some hand coordination. But if you have n-button mouse, you don't have to.

Razer Naga hex gaming mouse
Razer Naga hex gaming mouse amazon

for example, on the Razer Naga Hex mouse:

〔☛ Why You Need a 9 Buttons Mouse?

You Should Never Use the Mouse, Not!

how often do you hear hackers or emacs fanatics telling you that you shouldn't use mouse?

what a idiocy!

the hacker type of coder love to chant the mantra of banning the mouse. You see it perennially, in online forums, I have a hard time to consider that a good advice. I study efficiency quite obsessively. All i can think of, of the programers (especially emacs users)'s mantra about not using mouse, is that don't use mouse to do selection, position point, copy/paste, basically something like that. But still, using mouse as part of coding activity, is essential and make things more efficient, and less Repetitive Strain Injury risk! 〔☛ Celebrity Programers with RSI (Repetitive Strain Injury)

perhaps, there are 3 levels of keyboard enlightenment:

first of all, let's get this basic point out. Browsers. The mouse, is the most efficient way to quickly place cursor in a specific position on screen. (and also touch screen, trackball, pen input)

even if you are a programer, but these days you will have to spend at least 50% of your time in browser, to read docs.

Now, for example, in emacs. When you browse info doc. Sometimes you want to spend some time to casually read the emacs manual. One hand holding a cup of coffee, and the other hand on the mouse, is the most efficient way to navigate the info doc.

but mouse isn't just more efficient than keyboard in a 2D/3D environment. There are fine details. Here's one.

In coding, often you need to page up/down, or move cursor backward/forward. The nature of the keyboard input device is such that, you can either hold down a key and have it fire repeatedly rapidly in a constant rate. Or, manually repeatedly hit a key, at about 5 times per second.

the mouse wheel is far more efficient than any page up/down or other means by key. Because, if one consider the nature of the input, mouse wheel is such that it can generate variable speed of input signals, in 2 directions. And, this variable speed can be controlled easily in real-time. While keys such as page up/down (or other chord you use in emacs or vi), is such that either you repeat in a fixed rate, or have to press the button about at max of some 6 times per second and is extremely hard on the hand and cannot be maintained for longer duration. Also, wheel allow immediate reversal direction. With keyboard, jumping from one key to another is perhaps 10 times slower than your finger can reverse direction on wheel. And, it require much more hand coordination or energy.

so, ban your {⇞ Page △, ⇟ Page ▽} keys. Ban your {【Ctrl+f】, 【Ctrl+b】}, ban {【Ctrl+v】, 【◆ Meta+v】}. Instead, use wheel in combination with {Ctrl, Alt, ❖ Win, ⌘ Cmd} to prev/next {paragraph, code section, screen, buffers, tabs, windows, virtual screens}❕

here's tips on using the mouse, for extreme efficiency nerds.

here's tips on choosing a mouse.

blog comments powered by Disqus