288
112
I must be missing something.
The cost of employing a programmer in my area is $50 to $100 an hour. A top end machine is only $3,000, so the cost of buying a truly great computer every three years comes to $0.50/hour. ($3000/(150 wks * 40 hours))
Do you need a top-end machine? No, the $3000 here is to represent the most that could possibly be spent not the amount that I would expect. That's roughly the cost of a top-end iMac or MacBook (17 inch).
So suppose you can save $2000 every three years by buying cheaper computers, and your average developer is making $60. (These are the most charitable numbers that I can offer the bean-counters. If you only save $1000, or $750, it only strengthens my case.) If those cheaper computers only cost you 10 minutes of productivity a day. (Not at all a stretch, I'm sure that my machine costs me more than that.) then over 3 years the 125 lost hours would add up to a loss of $7500. A loss of 1 minute a day ($750) would give a net gain of $1250, which would hardly offset the cost of poor morale.
Is this a case of "penny-wise and pound-foolish" or have I oversimplified the question? Why isn't there universal agreement (even in the 'enterprise') that software developers should have great hardware?
Edit: I should clarify that I'm not talking about a desire for screaming fast performance that would make my friends envious, and/or a SSD. I'm talking about machines with too little RAM to handle their regular workload, which leads to freezing, rebooting, and (no exaggeration) approximately 20 minutes to boot and open the typical applications on a normal Monday. (I don't shut down except for weekends.)
I'm actually slated to get a new machine soon, and it will improve things somewhat. (I'll be going from 2GB to 3GB RAM, here in 2011.) But since the new machine is mediocre by current standards, it is reasonable to expect that it will also be unacceptable before its retirement date.
Wait! before you answer or comment:
- $3000 doesn't matter. If the machine you want costs less than that, that's all the more reason that it should have been purchased.
- I'm not asking for more frequent upgrades. Just better hardware on the same schedule. So there is no hidden cost of installation, etc.
- Please don't discuss the difference between bleeding edge hardware and very good hardware. I'm lobbying for very good hardware, as in a machine that is, at worst, one of the best machines made three years ago.
- $50 - $100 / hour is an estimate of employment cost - not salary. If you work as a contractor it would be the billing rate the contracting agency uses which includes their expenses and profit, the employers Social Sec. contribution, employers health care contribution etc. Please don't comment on this number unless you know it to be unrealistic.
- Make sure you are providing new content. Read all answers before providing another one.
14Maybe they do, but not as often as you'd like? Any workstation you buy will only be "the best" for 6 months, at best. Usually a better model comes out the next quarter. To always have the best, you'd have to upgrade every 3-5 months. That's hard to maintain. – FrustratedWithFormsDesigner – 2011-07-18T20:01:06.970
1@FrustratedWithFormsDesigner I should have clarified that my ideal would be a purchase of close-to-top-end every three years -- I sort of implied that in my calculation. – Eric Wilson – 2011-07-18T20:13:43.317
11There's a human factor, too. Buy a fast machine and gain all of that productivity, then spend 10 minutes per day at the water cooler and lose it all and then some. The boss sees both sides, so the pure productivity argument loses some weight. – JeffK – 2011-07-18T21:39:43.030
Most companies suck at true cost analysis; their competitors do as well though. Hardware is just one aspect of this. http://www.joelonsoftware.com/articles/FieldGuidetoDevelopers.html
– Job – 2011-07-18T23:04:15.6374I definitely know I could use a little more punch in my machine. Not so much CPU power but RAM. Between running multiple instances of an IDE, browsers, and misc other programs another 4GB and a second monitor wouldn't hurt... – Rig – 2011-07-19T00:40:54.277
24A developer without an SSD is a sad sight indeed... – ShaneC – 2011-07-19T02:25:31.157
Everybody tempted to comment on this question and either pick apart the arbitrary $3000 figure or get into an argument about environmental aspects of computing, please use our awesome chat instead. If you have an answer for this question, please post it as an answer, or upvote some of the existing great answers. Irrelevant comments left here will be removed. Thanks.
– Adam Lear – 2011-07-19T14:39:46.313In almost all the small companies I've worked for, the C-level executives and VP level always received the highest end, newest machines. Technical consultants were given the slowest (usually the hand-me-downs from the CEO 2 machine-revisions ago). Moronic! – David Hall – 2011-07-19T15:57:17.700
2Well, your head is processing at something like 50 petaflops, so why can't you just compile in your head? If you taped 5 heads together you would be able to predict the future – burnt_hand – 2011-07-19T16:54:04.553
3@ShaneC: I've never had an SSD, or felt like I needed one, to be honest. I guess I'm just spoiled by Delphi, which has insanely fast compile times. – Mason Wheeler – 2011-07-19T17:26:03.000
1@Mason SSDs are incredible, especially for laptops which typically have slower drives. It's not just compiling...it's everything. – Michael Haren – 2011-07-19T18:13:28.600
9We spend 4-5k on average for a dev setup here at SE ... – Zypher – 2011-07-19T18:26:01.693
@Zypher what is the planned service life? The specs of that setup might make an interesting post on the SF blog. – Eric Wilson – 2011-07-19T18:43:40.147
@FarmBoy until they start complaining they are too slow or 3-5 years whichever comes first. The specs are fluid, but the philosophy might make an interesting post – Zypher – 2011-07-19T18:47:37.503
I spent about $4000 for my home development machine, a Mac Pro with dual Xeons. My gaming computer cost about half that. – Robert S. – 2011-07-19T20:45:34.967
I was lucky, my boss just asked me about the percentage my productivity will increase when I get the second display I was asking for. I said something around 10% (when I remember correctly) and it was ok for him. I got 2 new displays because the old one was 15" but the new one where 19" (5 years ago)... +1 for this great question – WarrenFaith – 2011-07-20T07:07:07.220
3@JeffK It's true that employees are not working 100% of the time they are at work, but your argument only holds up if the employees actually increase their time at the water cooler when their machines are better. My guess is that if there is any difference, it is in the opposite direction. Quality tools are a joy to use. Crappy tools stress me out and make me want to get some water. More to the point is this: How productive are programmers while they are at their workstation? And how valued do they feel? – PeterAllenWebb – 2011-07-20T16:34:19.370
You're not asking the right question. There are limitless things a business can spend money on. The decision process isn't "Will buying new computers help?", it's "Would spending $100k on hardware help more than spending $100k on X?" Where X could be furniture, office space, hiring, raises, IT etc... Having a better parking space can save you 10mins a day as well. – Ryan – 2011-07-20T20:08:43.283
For build machines that might be okay, but workstations, honestly? ... come on folks, be a bit modest. You think the users for which you write your software have the latest and greatest hardware? Could you perhaps notice inefficiencies in your code without a profiler on a somewhat slower machine? A good screen and keyboard are much more important to me than the latest an greatest CPU. After all I have to type on that keyboard every day. But I do not have to run a full rebuild several times a day, especially because dependency scanning makes rebuilds cheap - even without SSD. – 0xC0000022L – 2011-07-20T23:21:12.237
1Sometimes I wonder if IT buys stuff off the back of the truck, because they got 40 workstations at $100/each. – Warren P – 2011-07-20T23:40:35.037
@STATUS_ACCESS_DENIED I've said some of this before, but there are too many words, so it needs to be repeated. I asked this question not because I want a SSD or the fastest processor, but because I've seen a tendency for companies to give devs machines that are dog-slow, that freeze up and need rebooted, and generally waste the companies money. As for users, I don't write software that depends on a users machine right now, and most devs aren't writing desktop apps anyway. – Eric Wilson – 2011-07-20T23:52:13.277
50-100/hour? wow, where do you work? – Louis Rhys – 2011-07-21T05:33:30.660
1@Louis Rhys: He's talking about employment cost. Employing someone costs more than just their salary. – pyvi – 2011-07-21T06:15:01.967
1@FarmBoy: point taken. Although it means the case could be extended to software tools required for development. I've had numerous instances where a third-party tool could have saved so many hours (repeatedly) and yet the misconception seems to be that we have "developers" (as if there are no differences) in-house who should do this or that, distracting them from their main task at best, creating a bad make-shift solution in the worst case, though. But I get your point better now, I guess. I got hung up on the hardware notion too much. Sorry about that. – 0xC0000022L – 2011-07-21T16:45:11.567
@Zephyr - 4-5k sounds a lot, but I guess by the time you've taken off the cost of the Aeron chair, motorised desk, dual 30" screens and 240GB SSD, you've really had to cut back on the spec of the actual PC. *8') – Mark Booth – 2011-07-25T14:48:23.297
@farmboy: http://blog.serverfault.com/post/making-devs-happy-with-hardware/ :)
– Zypher – 2011-07-27T19:01:05.380@Zypher Thanks much. May you also get 30k page views. – Eric Wilson – 2011-07-27T19:08:14.270