Make sure the 'Internal interface' of the enclosure matches with the drive you buy (if you buy a SATA drive, you need an enclosure that works with SATA).
Most external enclosures, including the one you linked to, are for PATA. You can see in the 2nd picture that the connector is clearly a PATA connector.
Yes, standard desktop drives are 3.5" drives. 2.5" drives are notebook drives.
As for RAM, in most computers RAM can be used in 'dual channel' which means it will be able to access 2 sticks quicker than 1 stick. The difference in performance is not huge, but the price of 2x512MB sticks is generally very close to the price of 1x1GB stick, so it's essentially a small amount of 'free' performance. The difference is usually more significant on Intel platforms than AMD platforms. You don't mention your MB/CPU, but if your board is capable of utilizing dual channel RAM, I'd get 2 512MB stick instead of 1x1GB.
You can see in this listing:
http://www.newegg.com/Product/ProductLi...Price=&SubCategory=147&Submit=Property
There are many options under $100. Crucial generally overrates there memory, so they are generally the most compatible, but personally I've never used Crucial because their prices are higher. Patriot, Mushkin, Twinmos, and OCZ are very popular brands that people in the forum all have used a lot. Corsair other than the Value Select also has a good rep, but the Value Select specifically has seen some issues. I've personally used the 2x512 kits by Mushkin and Twinmos on that page linked there. And I use a 2x1GB Patriot kit in my primary system at home right now.
Also, if your current system is old, it may not support 1GB sticks. It might not support dual channel, but you should still get 2 sticks in the event that you upgrade in the futureyou can utilize dual channel capabilities. If you want Crucial dual channel, I think they don't specifically sell 2x512 kits, but buying 2 sticks of 512 individually will get you the same results.
You should ahve some type of DDR unless your system is really really old (RDRAM or PC100 or PC133) or a pretty new Intel platform (DDR2). You can tell by downloading a program like Sisoft sandra or Lavalys Everest Home Edition. These will analyze your hardware, including your RAM type. For exmaple in Everest, you can go to motherboard and on my old machine here at work I get this information about my RAM ("Memory bus properties")
Bus type: SDR SDRAM (will read DDR SDRAM if you have DDR, this computer is using PC133)
Bus width: 64-bit (will read 128 bit if you are currently using dual channel)
Real Clock: 133 MHz
Effective Clock: 133 MHz (effective clock will be double the real clock for DDR)
Bandwidth: 1067 MB/sec (this is what denotes the PCrating on DDR, PC3200 is 3200 MB/sec in single channel, PC2700 is 2700 MB/sec, etc...)
PC3200 is completely backwards compatible with PC2700 or PC2100 or PC1600 DDR RAM. There is no reason to buy PC2100 RAM at this point because PC3200 is just as cheap (or cheaper) and allows you to upgrade your motherboard in the future without concern of buying new RAM.
Also under "Chipset" Everest will tell you what size and type modules are installed in your system at present. This machine says:
DRAM Slot #1: 256MB (SDRAM)
DRAM Slot #2: 256MB (SDRAM)