Do developers need to work on fast or slow computers?

From time to time I see this question happening. When a developer is writing a software, does he need a fast or a slow computer?

Why working on a slow computer?

Why working on a fast computer?

When writing a software, what’s important for a lot of developers is the time for compile/run/test cycle. Shorter is it, faster the developer can see the result of its work and have feedback on it. On a slow computer, this cycle is longer, the developer tends to write more code before seeing if it works, in case of test failure, the modifications may be too important to easily find out what’s wrong, leading to a big loss of time.

Depending on the technologies you are working on, tools may exist to distribute some computation like compiling on computers available on your network (hoping that other developers are not compiling at the same time too). But compiling may not be the longest task. I work on a project where compile time was mostly nonexistent (everything was compiled on the fly), running 700 unit tests took around 5 seconds, running 200 functional tests took around 5 minutes. We didn’t have the fastest computers, but they were fast enough. Here the functional tests were taking most of the time, I think writing them so they could be distributed on other available computers would have been a bit more complicated and may have taken too much effort (the environment was not designed to be distributed). And distributing the functional tests would have completely removed the point of seeing how well worked the system under load.

So to me, giving a powerful computer to developers is not a big cost and may make their job easier. If you need to check how your software behave under load or in restricted environment (slow CPU, small memory), make appropriate tests (if this is a requirement, tests must have been written to check it).

I think the real problem about writing a fat and slow software is because having a small fast one is quite often not a requirement (you are still doing the same things with the last version of Microsoft Word on Windows Vista than what you were doing with your old Word on Windows 95, you just need a far more powerful computer now). Most of us works for companies where the goal is selling products/licensees, and they need more and more features to be sold. Selling a new version having only "faster and smaller footprint" is not enough for the marketing guys, even more, it’s recognizing that the previous version was fat and slow (I know it’s dumb, but that’s what I have seen sometimes (depending on what kind of industries you are working in)).

Comments Add one by sending me an email.