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 wish to acquire a new computer that is specially designed for programming.

I would like to build it myself for the learning experience, but am willing to purchase it made as well.

Basically I have downloaded so many files dedicated to programming that are so large that a) my computer is near capacity and b) my 4 year old computer is extremely slow.

Specifically, I am into databases (Oracle/PostGreSQL, Mongo, Hadoop) and java, but love learning all possible languages.

share|improve this question
RAM, RAM and RAM. Get as much as you can. Then an SSD, then more RAM, then more RAM, then a fast CPU (RAM). –  LachlanB Jun 5 '13 at 1:35
Get an i5 or i7 (i have i7), fast ram and complication wise it should be good. I was surprised but the firmware on one of my HDs was buggy and didnt let me boot up on it so keep that in mind if you experience problems (it was a seagate barracuda) -edit- also mongo sucks. –  acidzombie24 Jun 5 '13 at 22:46
This is also a duplicate: programmers.stackexchange.com/questions/108670/… –  user16764 Jun 5 '13 at 22:53
There is no reason as a software developer (we make good money and spend a lot of time on the computer) that your workstation shouldn't be top notch. Go get yourself an i7, SSD, 8+gb ram, 2-3 monitors and an Aeron chair. –  The Muffin Man Jun 6 '13 at 1:10
add comment

closed as off topic by MichaelT, Matthew Flynn, tcrosley, Robert Harvey, gnat Jun 5 '13 at 1:39

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

2 Answers

I would say build a computer that has decent amount of power. The reason for this is that some languages have useful IDEs (ex: Visual Studios for .NET), and some of those IDEs require a powerful machine (ex: Eclipse for Java).

Also, we computer people should have powerful and interesting computers. :)

CPU, RAM, and storage (HDD or SSD) are probably most important for a programmer. Some specs that would be ideal for such a computer (in my view) are:

Intel i5 CPU (3.0+ GHz)
~500GB Harddrive
(Optional) An SSD for OS and big programs such as Eclipse

These specs will suffice for a programmers use, but you may go for better specs if you so desire. The rest of the parts won't really matter much and are based more on preference than specs.

share|improve this answer
Also you'd want 2-3 monitors to increase productivity. Then you can look at reference material in one monitor and code in the other. For 3 monitors you can have reference material in one, code in the middle, database in the third. For web development 2 browsers would be the bare minimum as you're often previewing changes in the browser and writing code at the same time. Basically it saves a lot of window minimising/maximising and alt-tabbing. –  zuallauz Jun 5 '13 at 3:13
To add to the comment by @zuallauz, for those times when you don't have the luxury of multiple monitors, learn to use multiple virtual desktops / workspaces. Something as simple as SysInternals Desktops works fine, and you can switch between them very quickly by using a shortcut (Alt+1, etc). You will wonder how you lived without this in the past. –  Daniel B Jun 5 '13 at 5:35
I would like to remind people to be nice. There is no need for rude comments. If you disagree with the answer then a downvote and a polite conversation will suffice. –  maple_shaft Jun 6 '13 at 1:21
add comment

Subjective Question but here's my answer:

Whatever you do, include a SSD, at least big enough to install the OS (64-128GB). sacrifice some CPU power to get it if you have to. Also the more RAM the better.

My current 'Basic' Davelopment system (I have built 2 this year and they are good for my programming needs):

Pentium G630. (entry level, socket compatible with i3 i5 i7 etc)
500GB 7200RPM hard drive
128GB SSD (I used Kingston SSDNow which is cheaper but there are better ones)
350w Power supply
Cheapest Gigabyte motherboard
24-inch 1920x1080 monitor. (This is just big enough to display two documents side by side - of course dual screen would be nicer!)
share|improve this answer
For SSD you'd really want 128GB as the minimum so can install the OS, commonly used programs including the IDE and also all your source code on it. It really makes a difference with Visual Studio loading and compiling to/from the SSD with big projects. –  zuallauz Jun 5 '13 at 3:18
Agreed but this is a budget issue for many. 64GB is just big enough for Win 7, Visual Studio 2010, and a few projects. Larger capacities are of course much more comfortable. –  Poul7 Jun 5 '13 at 4:18
@zuallauz: You don't want to put the OS on an SSD; you want the SSD as a secondary drive, where you store all your coding work. Putting the OS on the SSD can actually be counterproductive, since it turns out it's a pretty bad place to store a swapfile. –  Mason Wheeler Jun 5 '13 at 22:44
@Mason, why is it a bad place to store the OS and swapfile? It's the ideal place for performance. Also even if the disk will wear out slightly faster SSDs these days have good wear-leveling algorithms and extra hidden space to use when bad blocks are detected. –  zuallauz Jun 5 '13 at 23:19
Mason is probably remembering years ago when you could write to your SSD too much and wear it out... Not an issue anymore. –  Mike Graf Jan 30 at 22:37
add comment

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