Too Many Computers?

I have been reading a little bit lately about the hardware configuration that other developers use. I wonder how many computers you need to write a program.

Obviously, the answer is one. You only need one computer. You write your program, you compile it, you make the distribution CDs all on the one PC. Many people do this, and I have done it myself.

But I don’t think it is the best way to go.

At the moment I use 3 separate PCs to produce programs. Well, not always, sometimes I get by with 2.

So I thought it might be useful to describe my hardware configuration. Of course, it is always subject to change.

Most of my development is done on my desktop. It is not the latest and greatest but it is OK. It is fairly basic in its configuration. A Pentium 4, 2.8 GHz, 120 gig hard disk and 1 gig of RAM. Until recently I had 512 meg of RAM but I upgraded to fast RAM and doubled the capacity. I am running Windows XP Pro with Service Pack 2.

This is a very common configuration, and quite suitable for development work.

Networked to this computer is another desktop. It is, in fact, my wife’s old computer, although it isn’t all that old. It is a 2.6 GHz Celeron with 256 meg of RAM and a 40 gig hard disk. It is running XP Home with Service Pack 2. This computer has one purpose only, it is for back ups and Source Control. Actually, these are the same thing because I do all my backing up, regardless of the type of data, through source control, in my case, Subversion. It’s just easier to do all your backing up using the one method, and source control is vital for development.

I have been thinking that I may move my project building to this machine, but at this stage I haven’t decided how to do it. NAnt will be part of it, but I have been wondering whether I need continuous integration. I have had a look at CruiseControl, but I wonder if it is needed in my situation. I will think more about this.

Thirdly I use a lap top. Sometimes I do some development on this PC, especially if I am not in my office, or I am sitting in my lounge room in front of the heater on a cold winter’s night.

But when I am in my office I use the laptop for looking up the specs of what I am building, checking how I did something on a previous project, maybe gaining some insight from the Web when I need a bit of inspiration.

Three computers just to build one small application – it might seem like overkill, but it works fine for me.