On 30/10/11 12:32 PM, Alexey Toptygin wrote:
On Sun, 30 Oct 2011, Toby Thain wrote:
Wouldn't make much difference to me. Because,
at least when I do it,
my activities are:
1) A *lot* of thinking
2) A little bit of typing
and
3) Stuff-all else that taxes a machine (the most demanding thing would
be a web browser and occasional unit test runs).
Are there common things that a programmer waits for?
Grepping the source tree. If I substantially change the behavior of
function X, I need to be sure it won't break any of the (often hundreds
of) call sites. Enough RAM to fit the entire source tree in the cache is
very helpful for this, and that can mean several GB...
Yes, that problem is solved by RAM, and smarter indexing :)
In fact, it's a *perfect* illustration of how a fast machine can conceal
a very inefficient design! Grepping a source tree for an identifier is
orders of magnitude more wasteful than simply using an inverted index.
Also, in the past several places I've worked the
developer machine has a
mini version of the entire production enviromnent on it, so that one can
actually run meaningful tests. For me that currently means an apache
instance with about a dozen virtual hosts, memcached, half a dozen
mysqld instances, several processes doing background jobs, and 4 or 5
postfix instances.
Sure, some environments are simply too big for a 10 year old machine.
I'd suggest that this is the minority.
--T
Alexey