tags:

views:

146

answers:

11

After years of frustration with the function lock on my keyboard constantly launching unwanted applications, I am left wondering: What peripherals or accessories can make a programmer more productive? Or on the same note: What peripherals or accessories really harm productivity?

+4  A: 

A good keyboard and mouse, together with a dual monitor setup is very productive for me.

Soo Wei Tan
+2  A: 

Multiple Monitors will be a popular suggestion I'm sure.

Having a comfortable chair, a nice clean desk also help clear your mind of unwanted stress.

Obviously a decent mouse and keyboard that you can successfully touch-type on will help too.

Daniel May
+1  A: 

Software accessory - f.lux http://www.stereopsis.com/flux/

psychotik
A: 

A comfy chair, good speakers, good music.

If you have ADD like me a TV nearby helps too. (This is also a good way to make sure you don't keep focus on the screen for too long and kill your eyesight.)

Spencer Ruport
A: 

I cannot believe that no one said that yet: a fast computer and a reliable internet connection.

redtuna
+1  A: 

A grand piano.

So, I work in academia and the group I work with has a big common room. Basically all the people here are musicians of some sort, and when we got the chance to put our hands on a piano.... I let you imagine that.

How does it improve my productivity ? Sometimes I get really stressed on how to design things. So I take a break and crank the tunes out of the piano.

Although you would claim that it's not a peripheral, I actually have a USB piano at home as well, for the same purpose.

As for harming, one thing harms me the most: non US keyboard layout. I standardized my fingers to US, and every country I worked in expected me to work with a different layout. I count French, Danish, German, and Italian. In some cases, I ended up BYOK (like with the mac mini, you know?)

Stefano Borini
+1  A: 

Good to have

  • A good help/reference library for your code
  • Well thought out and planned design documentation
  • Good co-workers who are willing to help you with any issues you may have
  • Comfortable environment to develop in
  • Good equipment (keyboard, mouse, PC, monitors [dual would be nice])

Bad to have

  • Incomplete/inconsistent/everchanging requirements
  • Lack of management/co-worker support on your project
  • Outdated or shoddy equipment and/or lack of support
Scott Vercuski
A: 

For programming (as opposed to gaming) I really like having an ergonomic keyboard. Microsoft used to make really good ones. Sadly, now all their Ergonomic keyboards come with tons of extranious "application" buttons. You rightly point out what a hazard they are. Keyboard system power buttons are the worst.

These days you have to search for more obscure brands that don't have all the little moron buttons.

T.E.D.
A: 
  • One large display (I use a 30 inch Apple Cinema Display), so you can keep a few editor windows, documentation, etc. open simultaneously
  • A fast enough machine so having these things open won't slow you down even by a hair (RAM is incredibly important here
  • Great speakers (with subwoofer) or great headphones
  • Most important, if you're like me (easily distracted), a way to block outside distractions when you really need to get to business. I like the Mac app Concentrate. It lets me block websites and apps from running for a given duration of time. Great for crunch time.
jbrennan
A: 

No one has mentioned a good coffee machine yet? And good coffee of course.

cheers,

Rob Wells
A: 

A laptop. Nothing helps me get back into a programming groove better than just picking up my computer and moving somewhere else (coffee shop, spare bedroom, prison - whatever).

MusiGenesis