How much server (disk space and memory) do I need to run my CiviCRM implementation....

How much server (disk space and memory) do I need to run my CiviCRM implementation....

The answer is, of course, it depends. But what are the critical factors?

-- Data base size (Number of contacts and number of custom data fields, relationships, groups, etc.)
-- Number of users (light usage vs. heavy usage)
-- What other applications will be running? (A CMS with a small data base or Jasper Reports with a lot of simultaneous users.)

I think it would be good to put forth some guidelines or rules of thumb.