A mouse is a secondary tool for a programmer. Depending on your development environment, you may barely use your mouse at all!
Most of us work in a corporate environment where we still rely on the mouse quite a bit, especially for all the general overhead tasks we have to complete like project planning, answering emails, surfing for what that cryptic error message means, etc.
That’s why it’s still important that a programmer has a reliable mouse to go along with their keyboard. The more accurate, comfortable, and useful a mouse is, the more efficient and happy we’ll be programming.
Let’s dive right into the different features of a mouse you should consider, and any special considerations programmers should factor in to a purchasing decision. Here’s a preview of our top choices based on the type of mouse you may prefer –
[table id=6 /]
Trackball vs Mouse – Which is Better for Programming?
Similar to our article on the best keyboard layout for programming, we’re again going to challenge the status quo. The computer mouse you’re using today is likely pretty similar to the mice that shipped with the first home computers of the 80’s.
Certainly today’s mice work better and are somewhat more comfortable with more curved surfaces, but they still are far from optimal. Any design that has your hand in a pronate position (palm rotated down towards the table) is putting your wrist and forearm in a strained position.
Let’s take a look at how trackballs offer some advantages over your standard mouse.
The Trackball Advantage
A trackball is a pointing device which allows you to move your cursor by rolling a ball which spins, but remains stationary on your desk. If you’ve never seen a trackball used at a computer, you may have seen one used in “Golden Tee”, a popular golf arcade series.
Trackballs have been around as long as standard mice, but for whatever reason have never quite gained the same mainstream popularity. Today, trackballs typically come in 2 sizes. A smaller option that looks more like a standard mouse, but has a trackball where the thumb rests. With this design, you control the cursor with your thumb.
The other option uses a larger trackball, and you use any combination of your fingers to roll the ball around. Most people find the pointer, middle, and sometimes ring finger most accurate. On these types of trackballs, you typically have a “scroll ring” around the perimeter of the ball that you can spin to scroll a page up and down quickly.
Here’s some of the advantages a trackball has over a mouse –
A trackball remains stationary. This means there’s no need to pick up your mouse and reposition it when you need the cursor to go further than the bounds of the mouse pad. This means more free-space on your desk.
A trackball (may) be more comfortable. Each person is different, but many people find using a trackball to be much more comfortable for long-term use than a mouse. What’s nice about a trackball is you can find the optimal place for it on your desk, and then your arm and hand never have to move around, which means less strain.
A trackball gives you more control over your input. While this may not be true while you’re still adjusting to moving the cursor around with the trackball, once you’re experienced you’ll have a higher degree of control over your cursor. You’ll also be able to do things like click or double-click without having to worry about the cursor moving off your target.
Another nice advantage of a trackball is it can be used in a variety of situations where you don’t have a flat surface. Whether that’s on a couch, in bed, or even while standing, you don’t need to rely on a flat surface that’s compatible with your mouse in order to move the cursor.
Now that we’ve covered some reasons why you may want to look at a trackball, let’s look at the vertical mouse.
The Vertical Mouse – A Programmer’s Ergonomic Alternative
While the standard mouse has buttons laid out in a horizontal fashion, the vertical mouse is built with a vertical twist. As we said before, pronating your wrist to the surface of the desk is not an ergonomic position. The vertical mouse remedies this by keeping the same core functionality of the mouse, but allows your hand and wrist to be in a much more comfortable placement.
A vertical mouse will take a few days of use to really get fluent with. Clicking and moving the cursor around will feel strange and inaccurate at first, since you’re likely used to using more force than is necessary with a vertical mouse. Eventually it becomes just as accurate as any other pointing device, but so much more comfortable.
The trade-off between a vertical mouse and a trackball is an interesting one. You might need to try both and see which is more comfortable for you.
If you have larger hands, you may find that a vertical mouse doesn’t give you enough room, and your fingers feel cramped. Some manufacturers make mice that come in different sizes to accommodate larger hands, while others have recently made their mice a bit larger to fit more people.
The Most Important Mouse Features for Programming
Now that we covered the three main types of mice, lets cover specific features that you should look for regardless of which type you end up choosing.
Wired vs Wireless
You’ll probably know right off the bat which is more appealing to you. A wireless mouse is great in that it’s one less wire you need to worry about. Most wireless mice today require such little power that they batteries can last a year or longer. Wired mice still have their advantages, though.
For one, you’ll never need to worry about it being disabled due to a battery dying. You wont need to worry about losing the tiny USB receiver, which may or may not be an issue depending how mobile you plan on being.
Another annoyance some people find with wireless mice is a noticeable lag on the cursor when they move it around. This can usually be fixed by moving the USB receiving closer to a port closer to your mouse or minimizing radio interference in your house.
Most non-trackball mice nowadays are sold with rated “DPI”, or “dots per inch”. This setting basically lets you adjust how sensitive your mouse is – more dots per inch means more sensitivity.
If you’ve ever gone to move a mouse and found the cursor went shooting out to the corner of the monitor, the most likely culprit is that mouse’s DPI was much higher than you’re used to.
If you’re someone who likes to fine-tune their DPI setting or if you’d like a different sensitivity for different tasks, then you may want a mouse with adjustable DPI. Many mice come with 3 different settings.
Another feature that you may or may not find useful is if a mouse has extra buttons which can be mapped to different functions. Many programmers are fine with just left and right click, while others may find it helpful to map a macro to a mouse button.
The Scroll Wheel
A scroll wheel is likely a huge part of your daily workflow as you traverse source code and other documentation. While there’s no real standard you can use to compare scroll wheels, you may want to skim some reviews to make sure other people find it to be high quality for heavy use.
Best Vertical Mouse for Programming
When it comes to ergonomics, the Evoluent 4 Bluetooth Vertical Mouse is the top of the line. It utilizes a patented “handshake grip” which puts your hand in a more ergonomic position than even most other vertical mice.
When it comes to features, this mouse has 4 adjustable cursor speeds and LED indicator lights to show you which is the current setting. There are two extra thumb buttons on this mouse, one above and one below, which can be mapped to a variety of different functions using their driver.
You can find the Evoluent 4 in a variety of colors as well as wired or Bluetooth varieties for whatever suits your preference. They also make a left-handed model.
Best Mouse for Programming
If you’re fine with the ergonomics of a standard mouse, then why not take a look at this Logitech MX Master Wireless Mouse which will increase your productivity.
The MX Master has innovative features like a thumb wheel which allows for fast horizontal scrolling which can be a godsend for some programmers.
Another amazing feature for programmers with multiple workstations is this mouse can be switched between up to 3 different computers with the press of a button on the bottom of the mouse.
The battery is built-into the mouse and can’t be removed. Logitech claims you’ll get about 40 days of battery life on a full charge. The mouse charges via a USB port on the front of the mouse, and the mouse can remain in use while charging.
On the side of the mouse there are 3 battery life indicator LEDs that let you know when your battery is getting low.
Another great feature of this mouse that will up your productivity is the Gestures button. By pressing down the area where your thumb rests and moving the mouse, you can send commands to your computer like show the desktop or maximize a window.
There’s also a front/back button above the thumb rest.
Best Trackball for Programming
If you’re looking for a large trackball mouse for programming, look no further than the Kensington Expert Trackball Mouse. Available in wireless or wired, Kensington is the industry leader in trackballs.
The Expert Mouse will save space on your desk and keep your hand stationary through the work day. This trackball has 4 customizable buttons, and a scroll ring.
This mouse runs on 2 AA batteries and comes with a detachable wrist rest for increased comfort.
Many converts who switch to the Kensington Expert Mouse say they’ll never go back to a regular mouse and they felt tremendously more comfortable throughout the day.
Best Thumb Trackball for Programming
If you’re looking to stick with the design of a traditional mouse but still want to make the move to a trackball for any of the many benefits, then you should check out the Logitech M570.
The M570 places a trackball under your thumb, and provides the otherwise standard layout of a mouse with a left and right click, scroll wheel, and a front/back button.
Using only a single AA battery, this trackball can last up to 18 months!
Your cursor speed is adjustable and the USB receiver can be stored in the button of the mouse when not in use.
Have any other questions, comments, or opinions on mice? Let us know below!