views:

883

answers:

20

What is the minimum development system you would (depending on who you are):

  • expect your employer to provide you with
  • provide your employees
  • buy for your self

I'm not talking dream systems. Just what is needed to stay off TDWTF?

(p.s. what type of dev would your systems be used for?)

+4  A: 

2.0GHz CPU, 1GB RAM, 80GB HDD, 19in monitor, sound card/speakers, XP (not Vista), Standard Keyboard, Good optical mouse

Office, Visual Studio, Enough admin access to install my tool kit.

(p.s. I do mostly command line programs)

Edit: Access to Linux. Anything, even SSH is enough.

BCS
I have 4 GB in my laptop. I think every dev should have that much RAM, or similar.
Chris Jester-Young
"Should"? doesn't sound like a minimum to me <grinning/>
BCS
? should: as in its the minimum. Is this a site devoted to English semantics?
Mitch Wheat
Should vs. Must. Must's, you quit over and post on TDWTF, Should's you bitch over at the water cooler.
BCS
My world isn't that black and white. ;)
Mitch Wheat
Or the coffee pot. But I agree, 2GB atleast as a minimum.
Matthew Scharley
Likewise on 2GB minimum. Although with the way memory prices goes, it's not much of a splurge to make that 4.
Chris Charabaruk
no one /needs/ 80 gigs to develop... anyway.. the question is way too general anyway..
paan
I can think of situations where 80GB or more hard drive space would come in useful. Like working on the Source engine... Even just for mods the amount of HDD space taken up is nothing short of astounding.
Chris Charabaruk
One cases where lots of HDD is nice is VM's for testing installers and other things on.
BCS
+1  A: 

Not sure what sort of development BCS is involved with, but 1GB is way too low for windows development: 2GB should be standard for developer boxes.

Mitch Wheat
Fact Is my work system has 2GB, both my home systems are <1GB and I get by just fine on them developing with command line programs.
BCS
I think he mentioned that he is doing ASCII art :-)
Ben Hoffstein
My hobby projects include compilers and "other such insanities"
BCS
+7  A: 

Minimum: 2.5GHz dual-core CPU, 3GB RAM, 2 x 20in monitor, XP (with VMWare installed), ergonomic keyboard, laser mouse, comfortable chair

Ben Hoffstein
I see you make a *lot* more than I do. ;)
BCS
To be honest, removing any of these elements would be more expensive in other ways.
Ben Hoffstein
Yah, but would you quit over any of them?
BCS
No I wouldn't quit, but I would buy them with my own money.
Ben Hoffstein
I agree with this being a good setup, I wouldn't want to develop on something less than that (but I'd also have a slow machine for performance testing)
Robert Gould
@Robert, If I had my way, devs would never get to run there program on there dev system. Only a systems that's just a bit slow for our target market *Right Now*
BCS
@BCS, I definitely agree that applications should be tested on crap systems. But your question seems to be framed around a development system. This assumes you'll be doing builds, etc.
Ben Hoffstein
comment = TAN(question)
BCS
3GB?! Crap. I have 8 and want more :(
Mehrdad Afshari
I'm suffering with 1GB and there is not a think I can do.
Kugel
+1  A: 

I only expect a decent CPU, decent RAM, and decent hard drive space, in line with what you say. Depending on the employer, I expect either a well-maintained Linux or XP operating system. I don't expect a sound card or speakers, but I do expect a good monitor or even two these days.

I would provide my employees with good machines and almost whatever "accessories" they demanded. It's much cheaper to keep employees happy by actually giving them what they want.

For example, I use a Kinesis. Sometimes I have had to simply follow the advice of buying my own keyboard, because it affects my productivity so much. Other times, I've worked for an employer nice enough to buy one for me! Guess which ones I rave about to my friends.

A. Rex
I agree on the no speakers, but I'd say allow a sound card (even a mobo integrated one) and somewhere to plug in headphones or earbuds. Being able to listen to something other than the office environment is a lot better for one's sanity than not.
Chris Charabaruk
You're right, of course. Maybe I just have low expectations?
A. Rex
Are sound cards really an issue anymore? It seems like you'd have to go out of your way to find a system that didn't have either integrated audio or a sound card.
Wilco
@Wilco Quite true.
Chris Charabaruk
+10  A: 

A Linux box. Seriously, I can do infinitely more on an ancient Linux box than on a brand-spanking-new Windows system.

Point is, developer skill and familiarity is soooo much more important than the machine.

Dan
True, but you can't deny that a slow computer will negatively impact developer performance, e.g. build time
TraumaPony
If I could rate comments, I'd give yours a +1, TraumaPony.
Chris Charabaruk
Anyone who thinks all they need is an old Linux box is welcome to trade their modern machine for my POS Pentium II from 1998 and try working on that for a while, as I had to do several months ago.
Chris Charabaruk
Let VMWare set you free.
Ben Hoffstein
I don't use VMWare... I use KVM from Linux to virtualize Windows when I absolutely must use it :-)And I spent the summer working on a 1.4ghz Athlon box with 1gb of RAM, running Debian, and got a whole heck of a lot done ('course I had a Beowulf cluster for the heavy duty work too :-))
Dan
+2  A: 

When I develop for web applications I try them out on my small carry around 600mhz laptop, that way I'm sure its performance should be alright.

Edit: I normally use a wireless connection of 56k, haven't gone below that in quite a few years, On the other hand I do try it out using a G3 mobile-phone as a wireless modem, that seems like a fair trade off.

Robert Gould
Be careful with that thing. It's an antique :-)
Ben Hoffstein
Praise God!!!! There are good people out there! Seriously I commend you! Do you have any throttle on the network connection? <56k
BCS
I normally use a wireless connection of 56k, haven't gone below that in quite a few years, On the other hand I do try it out using a G3 mobile-phone as a wireless modem, that seems like a fair trade off.
Robert Gould
+5  A: 

I would rate screen real-estate as the most important (provided the minimums elsewhere are met). Having a second/third monitor or a larger one can really increase productivity (it's like giving an architect a bigger desk, removing the biggest bottleneck in one's workflow). Emphasis is on resolution and not actual screen size (I'd rather have a 19" monitor @1600x1200 than a 21" @ 1280x1024).

Minimums:

  • 19" Monitor (improve w/ more displays or larger resolutions - will depend on specific models, but the more pixels the better)
  • 2GB RAM (more ram means a more responsive system when multitasking, meaning more productivity)
  • 100 GB HDD (just be sure there is plenty of room for the necessary tools)
  • 2.GHz CPU (faster compile times means more productivity, see here: http://imgs.xkcd.com/comics/compiling.png)

Also, as developers it is really frustrating to work on a workstation with too many local restrictions. Regardless of OS, having root/administrator level access on the local machine is ideal.

Wilco
Ditto on more pixels. More space is nice, but not if you get /Fewer/ pixels!
BCS
Ditto on admin access to the machine!
Chris Charabaruk
My employer insists on formatting the system partition with only 8GB, no matter how large the rest of the drive is - so first order of the day is repartitioning...
Bill Michell
+1  A: 

I have been painfully developing Symbian applications on a laptop with 1GB of RAM, 1.8GHz AMD processor, and 15.4" screen real estate, and I cannot describe how frustrated I am. Definitely a machine with a Core 2 Duo or equivalent processor, at least 2GB of RAM (I'd prefer 4GB), a comfortable laptop mouse that does not go bad after a couple of months, and a good big screen (preferably a second LCD) is a must.

ayaz
Sounds like we have a lower bound on the minimum! That's below it!
BCS
I've done it in Parallels on a 2GHz macbook with a little over 1GB assigned to Parallels. Again. that combination is definitely below minimum...
Airsource Ltd
A: 

1GB is fine for me for ordinary software work - but i almost never use IDEs or other large tools.

An employer ought to provide 2GB, don't care about clock speed (yeah, faster compiling is nice, but 91% of my time is thinking, reading, etc), two monitors. Gotta see code, ref material, debug output, and the program's windows (if it has any) all at once. Most important: an ergonomic keyboard with touchpad. Or some decent keyboard; i can adapt if it's designed well.

If i were the employer: crappy squeaky abacuses with loose rusty wires from the competitor's dumpster! Ha ha!

Seriously, i'd ask and provide, with the default being same as what i'd expect, described above. But i realize i'm an imaging/photography/graphics expert, not an average geek,

For myself: any laptop with 4GB, 17" screen, good keyboard, 3 USB ports or more, HDMI plug, CPU irrelevant. I've not used my desktop machine in 3 months. Yeah, a graphics expert ought to have 3 huge screens and a power CUP, but i love working at the coffee shop, in the living room, etc and often can't work at home.

DarenW
+1  A: 

No less than a 24'' LCD monitor.

Seriously.
Once you go 24'' you can never go back.

shoosh
Haha, so true. Though I imagine the same could be said for 30" ;-)
Wilco
+1  A: 

Personally i consider screen real-estate one of the primary concerns when being able to code efficiently. If possible i prefer a 24" screen running at 1920x1200 for my primary work space with a second monitor able to display web pages and documents in a clear and readable manner. This allows me to have my tools on one screen while having any reference materials available without having to break away from the workspace.

For Windows development system reqs play a more important role, but in the end it boils down to compile times imho. Linux is an efficient platform and doesn't demand all that much.

ShadowMaster
+1  A: 

A quiet office with a door. I'm borderline ADD anyway, and I have a difficult enough time concentrating on the task at hand. The last thing I need is managers or coworkers just "dropping by to see how things are going."

Sherm Pendley
A: 

I had the pleasure of coding on a HP XW6400 with a 10K RPM harddrive (Raptor). It had 2 GB RAM, a dual core Xeon (room for one more CPU if needed), a decent Nvidia GPU and so on. I think the harddrive speed and the IO capacity of the workstation architecture made a real difference in compilation time. I would really recommend this for ANY development work.

A 24" LCD of 1920x1200 costs next to nothing these days, so that should be entry level for a desktop system.

Guge
+2  A: 

We also use workstation spec hardware as development machines. Dual processor, dual core 3ghz xeon, 2 10k SAS HDD in a RAID 0 and 4gb RAM. And still Visual Studio takes minutes opening the solution!
Most of the team have twin 19" Dell LCD monitors. I have hung onto 2 VERY old Dell CRT's. They are only 17" but can display 1280*1024 at 80Hz.
I think I would be able to cope with a slower PC much better than having to lose pixels. I work in a large organistion so we have total control over the target hardware and have access to machines to test on.

pipTheGeek
+2  A: 

When developing for iPhone, I'm absolutely fine on my macbook with 2GHz, 2GB RAM, and a 13" screen. For Symbian, a dual core 2.4Ghz with a 24" screen (or multiple screens) is more like it. For what I use when I'm at my desk in the office, see below:

Any developer at our company gets the following as standard issue:

  • Dual 20" LCD monitors (a decent Dell one, not the cheapest). Screen real estate is very important when you need to run the IDE and the phone simulator at the same time, plus look at documentation.
  • 2 GB RAM.
  • 300GB hard drive (I think. I've really no idea, but there's no way it's below 200). There is absolutely no point saving money on the hard drive.
  • CPU is a dual core 2.4Ghz or higher (could be 2.6, not sure).
  • Aeron chair.
  • Height-adjustable (absolutely essential!) IKEA desk.
  • A set of decent headphones.
  • Whatever mouse/keyboard they want.

Now I'm not saying this is all absolutely essential - we could clearly find a cheaper but still comfortable chair. However we think it's all worth paying money for. And we're a startup with no VC - completely organically funded - so this is our own money we're spending here. If we didn't buy this stuff, the CEO and myself would be able to pay ourselves the money instead.

Airsource Ltd
+4  A: 

I do all my development on an entry level macbook, expanded to 2G memory. I plug in an external screen for extra screen real estate.

CPU speed doesn't matter that much - almost any computer you can buy today knocks spots off the top end dev machine that was available two years ago. However too little RAM and too small a screen can be painful, and you can never have too much of either.

Apart from that, a decent desk with room to spread out, a good chair and a generally comfortable work environment is the most important. An external keyboard and mouse also helps, ideally easily dockable via a USB hub or similar.

frankodwyer
A: 

I would expect my employer to provide me with a dual-core machine with at least 2 GB of RAM, a video card with at least 256 MB of on-board memory, 2 17" monitors(I'm now addicted to this for my development), 150GB HD(or better, but I want enough to run various tests and tryout stuff on my box and not a shared server). O/S would be either XP Pro, Vista or Windows Server.

I do Web development in ASP.Net using IIS.

My current box is a Core 2 Duo E6750 with 4 GB of RAM with a 256 MB video card running XP Pro. My old box which I still use for things like Microsoft CMS 2002 was a P4 2.8 GHz with 2 GB of RAM.

JB King
+3  A: 

I'll add three things that I feel should be absolute requirements but aren't common:

  1. A good keyboard If you're going to be banging away at it all day, you need something better that the POS membrane keyboards common today. Either the ancient 'clicky' Model M keyboard or one of the older (early mid 90's) squishy ones. I'm still on my first Gateway Anykey keybard (purchased in 1993). A good rule of thumb is: If your keyboard is not heavy enough to bludgeon somebody over the head with, it's useless.

  2. wacom tablet ( a small one) These things can be very useful to draw a simple diagram real quick, faster than something like visio. It's also very natural to draw with a pen in your hand.

  3. scanner Preserving information is important, and sometimes the more important info is scribbled on a piece of paper. Scan it in, add a caption, and upload to a wiki.

Numbers 2 and 3 should be common, but they're being held back by current software. Ideally, I should be able to scan and upload directly from my browser, with full support from whatever wiki I'm using. And use the tablet to markup any wiki image or page in place.

+1 for keyboard
Jay
A: 

Well it's May 2009 and I came across this post while looking up what a programming lab should have. We do development in .NET in a Windows Environment. I find that there are multiple problems with the computers we currently have. They are great for compiling java code, C#, C++ code, etc. but are crap when developing a full-fledged web app or any app that requires multimedia elements. Given these problems, does anyone have a suggestion?

Really? Are you from the future?!
Dan Esparza
If you consider different timezone a future... :)
ya23
A: 

I can live just fine on 512 GB of RAM, 100 GB HDD, 19" moniter, 1 Ghz CPU, and a good Linux distro. Even when I have many apps open, the RAM never goes above 400 MB. The only thing I wish I had more of is HDD space; a nice 512 GB drive would be so nice.

Zifre