Your Ruby / Rails Operating Environment
There are three stages in building Rails applications: Development, Testing and Production. (Design is essential but extra and not covered here!) Each of these has activities has different configurations of software and systems - they also have different objectives. In order to carry out these activities, you need what I call an "Operating Environment" - the software tools, techniques, and libraries - to operationalize your project dreams.
For Development, I have had good and relatively easy success getting Rails applications running on a Ubuntu and Windows. You don't need to install a stand-alone webserver, as one called WEBrick is included free with Rails. (However, you can install other servers. More on that below.)
For Production , where performance matters, there are other considerations. In general, Lightppd ('Lighty') was developed as a high performance, lightweight way to run a webserver, and Apache is old, trusted ironsides. I have deferred on that part of the process for three reasons: 1) it's complicated, 2) it hasn't been critical to me (yet), 3) I'm assuming there are experts in hosting who will help me decide. Also, the whole process of moving a web application out of development and deploying into production is a developing artform. Rails does have good tools - like Capistrano - to help here.)
For Testing, you need a blend of both Development and Production environments.
I'll focus on the foundation of all this. Here's what I have installed:
It is neat that I am running this same basic Development environment on BOTH Ubuntu 6.06 and Windows. It looks the same, feels the same, and the files can inter-operate and cross-serve tests. Eclipse is superb.
In general, each of the installation steps has great documentation freely / widely available on the web. (Great to me means you can piece a working environment together in a day or two if you have hardware, network connections, and the freedom to install / remove software as needed.)
Your installation mileage and needs will vary, so it doesn't make a lot of sense for me to link to a bunch of documents here on "How To Install...". Your installation experience will depend upon your machines, what you have running for O/S etc. This area is also subject to change with future improvements.
I don't think I've found any single link of written documentation that was a 100% perfect installation recipe for me, but that shouldn't disappoint - it leaves more room to be creative! (For example, I made some changes along the way to successfully install Radrails from www.radrails.org. The documentation is great; the software is great. However, the install instructrions for Ubuntu recommend usuing WGET command at the console to install, if you did this keystroke for keystroke you'd end up looking for an older version. Accessing the website also makes it easier to copy and paste in some of their configuration settings.)
I'm on my nth installation of all these items now, and it is becoming more familiar with practice. The good news - recent versions are easier to install and more robust in operation than the older versions. This really is a case where practice makes perfect! I've encountered dozens of little twists and edits along the away. The good news is with each adjustment something new is learned. The best approach, and the only choice that really seems practical for bootstrapping a system, is to aim for the big task targets (as I've listed above) and the rest is experience, useful books, and Googlin...