mouse vs keyboard : Java Glossary
- mouse vs keyboard
When Apple released the mouse, GUIs (Graphic User Interfaces)
became all the rage and there was a mad dash to convert all applications to
mouse-based. This is not always a good idea. Consider:
Advantages of the Mouse
- Typically you don’t have to remember much to use a mouse-based interface.
One noticeable exception in the IntelliJ IDE (Integrated Development Environment)
which is crawling with tiny inscrutable icons many of which do not have tooltips.
- You can point to what you want to change. You don’t have to tab over to
- You can select from a list of options without having to assign and display a
short typing selector letter/name. You can just point to the one you want, e.g. an
entry in a phone directory.
- By hovering your cursor over something unfamiliar, this invokes tooltip help
which tells you what it is for. You do not waste screen space, or overwhelm the
user with detail by displaying such help all the time, the way is often done in
- Your screenshot is your main selling tool. It is your first impression. If your
app does not look sexy, people won’t even download a trial. It is your badge
for proving competence.
Disadvantages of the Mouse
- When you use a mouse-based application, you waste time moving from keyboard to
mouse back and forth.
- Your eyes have to say glued to the screen. You have to look at it very
carefully. You need excellent vision.
- It requires a steady hand, especially for doing tasks like inserting the cursor
between two letters or selecting a single letter. If I am ill, (or even just cold)
these task become almost impossible because my hands shake. To use a keyboard, you
need good typing reflexes, but not fine motor control. Precisely where on the
keycap you hit a key, does matter.
- Double click is ill defined. The computer often mistakes it for two separate
clicks, or as a single stuttering click.
- Mice are just one more thing you have to carry around to use a portable device.
No matter how compact the electronics they still hand to be hand-sized just to give
you something to hold onto.
- It is very difficult to give instruction to someone over the phone or in a
manual how to use a mouse-based app. There is no vocabulary for the icons you must
hit, or the places on the screen you must click. You pretty well have to create
little video tutorials which are fine for initial orientation, but not for
- Vendors usually won’t let you take a mouse for a test drive.
- Programmers spend more time on the fine points of the look and feel than they
do on what the app actually does. Programmers now have to be artists or to team up
with artists, even to write the simplest apps.
- Porting GUI (Graphic User Interface) software between operating systems, or even
environments on the same OS (Operating System)
requires almost a complete rewrite. Porting anything to do withboards is fairly
Advantages of the Keyboard
- A skilled operator can click a keyboard 100 to
200 times a second. You are lucky to get 1 click a second with the mouse.
- A keyboard operator does not need to look at the keyboard. He can look at the
screen, something or the desk to reference or transcribe or even close his
- Pure keyboard apps are about 5 times simpler to
write, i.e. much cheaper to develop, debug and maintain.
- Pure keyboard apps are more responsive and smaller. They will work fine on
- Data entry purely by keyboard is many times faster than using a mouse.
- Blind people with a software help can efficiently use keyboard-based apps.
Mouse-based ones are problematic because they require you to maintain visual model
of what is on the screen and precisely and I mean precisely, down to the pixel,
where the cursor is. It is a way to exclude the blind who don’t model the
world visually. Even a keyboard-based GUI
would be a problem. How are the blind to appreciate subtle information encoded in
fonts, type sizes and colours? Approaching a computer visually allows a torrent of
information to be unconsciously absorbed every second, but not for the blind.
- If the logic of your app changes frequently, or if you are doing a prototype,
you app will be much easier to change without the encumbrance of an elaborate
Keyboard-interfae is like painting your walls white, where a
GUI is like
hiring a mural painter to decorate all your walls. If you want to install a new
electrical outlet, you don’t want to have engage the mural painter
Disadvantages of the Keyboard
- Most keyboards have atrocious quality.
- Vendors usually won’t let you take a keyboard for a test drive.
- If you used to one keyboard, you might find it takes quite an adjustment period
before you are up to speed on another. Mice are pretty well interchangeable. If you
have to sit down at an unfamiliar computer, you will be up to speed using the mouse
much faster than using the keyboard.
- A keyboard is quite a large device. If you try to miniaturise it, or even
shrink it a bit, your typing speed plummets and error-rate soars. You have seen
people clumsily attempting to type with their thumbs on cellphones. A keyboard is
not that suitable for portable devices, even laptops. Perhaps we should stop moving
computers around. Make sure they as freely available as pens and simply move the
data around on thumb drives or via the Internet. To work properly it needs to be as
big as two outstretched hands separated by a comfortable
27.94 cm (11 in).
Of course you can do both mouse and keyboard, adding keyboard shortcuts for pretty
well anything you might do by mouse. This lets novices and power user alike feel
comfortable. When you design such an app, avoid forcing the user to flip back and
forth, back and forth between keyboard and mouse. Allow alternates so you can stick
with one or the other for long stretches of time.