System requirements for software development PC

  • Thread starter Thread starter Allen Weiner
  • Start date Start date
A

Allen Weiner

The articles I've seen on DIY PCs usually discuss two classes of PCs: 1.
Office/Email/Web surfing and 2. Gaming

Could someone direct me to an information source (articles, websites, or
your own knowledge), that gives detailed info on recommended configuration
for a software development PC.

The kind of development I have in mind is Java programming using a
development environment such as Eclipse.
 
Allen Weiner said:
Could someone direct me to an information source (articles,
websites, or your own knowledge), that gives detailed info on
recommended configuration for a software development PC.
The kind of development I have in mind is Java programming using a
development environment such as Eclipse.

I'm not trying to stifle any replies you might get here, but just in
case you didn't consider this, one such resource would be Java
discussion groups. Good luck.
 
Allen Weiner said:
The articles I've seen on DIY PCs usually discuss two classes of PCs: 1.
Office/Email/Web surfing and 2. Gaming

Could someone direct me to an information source (articles, websites, or
your own knowledge), that gives detailed info on recommended configuration
for a software development PC.

For a software development PC, one thing you need is
server class memory, i.e. ECC, or better yet, Chipkill.

-- Bob Day
http://bobday.vze.com
 
Bob said:
For a software development PC, one thing you need is
server class memory, i.e. ECC, or better yet, Chipkill.

Why?

I do software (and web) development on my PC and have no need for server
class memory. My machine is just as capable at byte-flinging without it.

If you're talking about the risk of corruption during a crash, I don't
worry so much about that. Version Control takes care of my remote
backup. At the end of the day, if I start to get system instability
I'll do a memtest86 and replace the RAM if needed. More RAM is more
important to me than great RAM.

To the OP, I'd just recommend a fast processor (personally I prefer AMD,
I have an AMD 64 3500+ here but an X2 may speed up compiles), lots of
RAM (I have 2GB PC3200 but the cheapest I could get) and a decent
graphics card that can do a high screen res (I've got a 6800GT but I
chose that one for gaming).

I'd also recommend a decent flat panel monitor (better on the eyes) such
as the Dell 2001FP (which I bought yesterday, arrived today and is a
million times better than my old Iiyama 19"CRT).

For storage, I'd probably just say go with anything reasonably current
(SATA). It really doesn't matter that much as dev work is normally lots
of little files which the OS should cache reasonably well.

Cheers,


AJ
 
Andy Jeffries said:
Why?

I do software (and web) development on my PC and have no need for server
class memory. My machine is just as capable at byte-flinging without it.

If you're talking about the risk of corruption during a crash,

It may be worse when it doesn't cause an immediate crash. According
to a white paper published in January 2004 by Tezzaron
Semiconductor, a PC with 512MB of memory running 24 hours a day
will sustain a memory error about every 10 days. (Reference:
http://www.tezzaron.com/about/papers/Soft Errors 1_1 secure.pdf
See Appendix B, Calculations, on page 6) Each memory error stands
a chance of causing your computer to crash, or worse yet, corrupting
the registry, a program, or data on your hard drive. Any process that
passes data through memory is vulnerable to memory errors. Such
processes include downloading files from the internet, reading or
writing CD's or DVD's, heavy number crunching, and defragmenting
your hard drive. To me, the choice is not between ECC or non-ECC
memory, but between ECC and Chipkill (which is a more advanced
and stronger type of ECC).

-- Bob Day
http://bobday.vze.com
 
Bob said:
It may be worse when it doesn't cause an immediate crash. According to
a white paper published in January 2004 by Tezzaron Semiconductor, a PC
with 512MB of memory running 24 hours a day will sustain a memory error
about every 10 days. (Reference:
http://www.tezzaron.com/about/papers/Soft Errors 1_1 secure.pdf
See Appendix B, Calculations, on page 6)

While I thank you for the reference, I am less trusting of manufacturers
that make error correcting memory to be impartial when reporting error
rates.

I take their point that ECC is better for error correction (noticing a
fault and fixing it without crashing) but disagree that a memory fault
will occur (on average) every 10 days.

To be honest, I've had servers running using all their memory for a
couple of years without reboot (using non-ECC memory) and you'd think
something would have shown up in that time if it had an error every 10 days.

It's up to you, but I wouldn't spend any extra on ECC RAM for a
development box.

Corruption (random binary corruption) in a source file will normally
stop it from compiling and random binary corruption in a binary compiled
file could be checked by compiling twice and diffing (not necessarily
saying on a regular basis, but as a check if you suspect something).

I've been developing software for over 10 years on non-ECC memory and
never had an issue.

However, YMMV....

Cheers,


Andy
 
Allen said:
The articles I've seen on DIY PCs usually discuss two classes of PCs:
1. Office/Email/Web surfing and 2. Gaming

Could someone direct me to an information source (articles, websites,
or your own knowledge), that gives detailed info on recommended
configuration for a software development PC.

The kind of development I have in mind is Java programming using a
development environment such as Eclipse.



--
I know that this is an older thread but....

Your choice of programming language is not as important as what type of
software you will be programming.

As you probably already know; any basic PC can be used to program.
The areas of extra interest though could be
1) Extra memory. The more you have, the quicker compiling can occur,
and the better for applications to run while the programming language
environment is open. You want at least a gig, but more if you can.
2) Hard drives. Not just size but should you use a raid type system
that backs up itself, in case of hard drive failure? I hobby program,
and I don't use a raid system. I also don't have big memory or a top of
the line CPU.
3) CPU speed is important but I place it no better than third on my
list. If you are building, buy a top of the line. One thing to remember
is that your system (if you test on it) needs to reflect your target
systems. Don't use an AMD Sempron when you are writing for a 64 bit
environment.
 
Back
Top