Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I've been tasked with creating a fun and relaxing environment, one thing I know that I want is ergonomic mice and keyboards, others have suggested exercise balls and bands.

What is it that every programmer needs while working? What might not be necessary but would be nice to have anyway?

Note: this question was asked previously, but has been recommended to be posted here. See this link for the previous responses: http://stackoverflow.com/questions/3911911/stuff-every-programmer-needs-while-working-closed

share

locked by Yannis Rizos Mar 13 '12 at 20:41

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

3  
Wow what company is that, treat there employees so well! :) Wish I am able to join such a company too! –  Jiew Meng Oct 13 '10 at 8:04
38  
Why don't you ask your developers what they want? –  Thomas Stock Oct 13 '10 at 11:54
7  
Conjugal visits –  Greg Nov 4 '10 at 0:29
1  
Nice salary!!!! –  Amir Rezaei Nov 18 '10 at 10:50
1  
Something that may not have been mentioned - good temperature/humidity/air quality control and nice bathrooms. I, for instance, get more hungry while working during hot summers than cold winters, because the temperature inside is negatively correlated to that of outside. Ideally the correlation should be slightly positive, but still be close to zero. –  Job Dec 12 '10 at 15:49
show 5 more comments

90 Answers

Many people have mentioned a quite or silent workplace which is often not only impossible but is actually almost as bad as a noisy one. I can't stand utter silence, it's creepy, so here is my inexpensive suggestion:

A white/pink noise generator

Like a clock that has a white/pink noise generator in it. A lot of them have additional sounds but the beaches have annoying bird noises and rivers make me have to pee so the best ones are the sound modes that simulate rain. My favorite is rain on a tin roof.

share
add comment

Stimulating, not intrusive music.

This is my work playlist

share
add comment
  1. Dual Monitors (I got that, yay me.)
  2. Access to newsgroups (me no have it:/)
  3. Free coffee (I got that, too, yay me.)
  4. Blackboard.
  5. One or more bookshelves.
  6. Laptop.
  7. In-house training on software engineering processes, tools, etc.
  8. Ability to create your own "helper" tools (if they help you get the job done) in any language of your linking (which is different from using any language outside the official ones for developing the main products you are getting paid for.)
  9. Part-time student assistance.
share
add comment

Memory upgrade

because sometimes the model I'm building in my head just won't fit.

share
add comment

Fast (i.e. 10000+rpm) disks!

Nothing frustrates me more than waiting for I/O, where I find my computer can't keep up with my thinking.

share
show 1 more comment

For me a gym. I'm a physical guy and I know a lot of programmers are not, but I need to go and work out or i'm just not as productive. It doesn't have to be much but a place where you can do pull ups or sit ups a chin up bar and a punching bag. however I would do this after you have 2 monitors and a place where ideas are debated but those have already been mentioned.

share
add comment

A Water Cooler

I don't have one and I bring two water bottles with me every day.

Many other answers have covered things like dual monitors and recreation areas (music and the like).

share
add comment
  • Lighting that doesn't make you feel like your on a supermarket floor.
  • Some nice big green plants
  • High performance pcs, Dual 22" LCD screens
  • A developer wiki
  • Sectional dividers so everyone can have their little privacy and not look at each other all day. Avoid cubicles though... there still has to be an interaction environment.
  • Ample workspace
  • Game room witha pool table/Ping Pong table, nice tv, PS3/XBox/Wii with some multiplayer games.
  • A nice kitchen
  • Balanced snack/drink machine that caters to healthy and non healthy eaters.
  • Nice outside area that is cool in summer where people can sit and relax and eat.

The work is the most important aspect. You can have all these things but still feel like your stuck in a terrible job. Work ahs to feel like fun, and the fun stuff has to be a bonus.

share
show 1 more comment
  • A fast Computer

  • A good internet connection( can't see that loading sign for too long )

  • Liberty to wear what I want ( ofcourse in a limit )

That much would be sufficient :)

share
add comment

In decreasing order of importance.

share
add comment

The possibility to work from home!

share
add comment

A working brain is what you need the most.

Everything else depends upon it

share
add comment

Caffeine and a lot of patience...

share
add comment

As much screen space as possible and big desks with space to put post it notes somewhere.

share
add comment

• Surroundings that harmonize with him/her. This includes what has been mentioned before. Next to nothing cuts down productivity as bad as feeling like you're a rare type of lizard in a terrarium. If you feel at home, you get going ;)

• All the Software required plus some stuff to take away the hassle:

  • Current IDE and Equipment

  • Bug Tracker

  • Wiki

• Project leads that know their job : Have the developers develop, the help-deskers support. Period.

share
add comment

Color laser printer (can be shared, but should be no more than 20' or so from one's desk).

share
add comment

Right to use his own methods and allowed to do new experiment rather then using same old methods and sticking to the old rules. and of-course Light instrumental Music

share
add comment

A Model M keyboard.

share
1  
I hate those loud and noisy keyboards. I prefer modern, flat and close to noiseless keyboards, because I can't stand anymore to hear that noise for more then 8 hours a day. –  Bobby Oct 18 '10 at 22:33
add comment

Personally, I always have Sopranos episodes running in the background or on the screen beside me, its always great when you hit a road block to just tune in for a few minutes to clear your head with some Paulie Walnuts!

share
add comment

Some flexibility in hours

Not everyone is most productive at the same time of day

share
add comment

Well from my experience so far I think the following things are absolutely vital:

  • Powerful development machine
  • Dual monitors (at least 22" or 24")
  • Decent chair
  • Unfiltered internet (I don't know how many useful sites I've seen blocked by WebSense)
  • The ability to decorate/furnish your workspace (it's amazing how much this can help you be comfortable/at east)
  • Good support servers for version control, wiki, backup, testing with other applications if your solution stack includes several, etc.
share
add comment

A Hardware clock

share
add comment
  • Ability to choose own rig/chair
  • Ability to choose own software, withing reason IDE etc
  • Plenty of Tea/Coffee and Water (very important)
  • No stupid internet policies (no streaming etc)
  • Time to work on own projects
share
add comment

May be someone has already said it, but there should be a fortress of solitude and if that is not feasible atleast a corner of solitude.

share
add comment

No telephones. Ok, a compromise: have a room set aside for phone calls.

share
add comment

Colorful Post-It notes. Simple, versatile, and inexpensive. I use them for everything. To do, ideas, grouping, brainstorming, learning, etc.

share
add comment

An outdoor terrace with comfortable chairs, power outlets and a wifi access.

share
add comment

A rubik's cube

share
add comment

Coke.

BTW, dual monitors are overrated.

share
show 1 more comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.