As far as hard drive size, that depends on what you plan on doing. The more
programs and files that you use, the bigger the drive you will want. I
would say 80GB should be the minimum you get. Also, check features such as
the cache size and average seek time...these will have a big impact in the
speed of your new drive. Also, make sure that the drive you buy will work
with your current system. Older systems can't recognize drives as large as
the current crop without overlay software (which Western Digital
includes...I'm sure others do to...just haven't used them).
Now, with the RAM, you say you currently have 384MB. Depending on the
motherboard, you may or may not be able to upgrade it any further. Also
note that for every 128MB you want to upgrade, you have to buy a 256MB chip
(assuming that the three slots are each occupied by a 128MB stick...if not,
you're in luck!).
Hopefully this helps.