Software Development | Ruby on Rails
Ruby on Rails on Windows

OK I admit it, I'm working on a Windows box. And the meeting of Windows and Ruby on Rails is like a failing blind date; they can talk but there is no real chemistry and the relationship isn't going to last. But until my wife buys me a Mac Book Pro I'm stuck with a Windows XP machine and I'll see what I can do with it.

You will need:

Ruby on Rails

Obvious really. You're gonna need Rails. You'll get Ruby with this and a bunch of other stuff.

Options: InstantRails, RubyStack

Further information:

Editor or IDE

Some folk like text editors and other folk like Integrated Development Environments but you're going to need something.

Options: RadRails, NetBeans (Ruby), Notepad++, RubyMine

Further information:

Database

Most, but not all, Rails applications need a database. InstantRails comes with both MySQL and SQLite 3.0.

Options: MySQL, SQLite

Further information:

Database Admin

For MySQL you'll need a database administration tool.

Database access

Within InstantRails MySQL is set up with:

username = "root"
password = blank

Don't change this for development or test but your production database will need A real username/password.

Options:

  • db/scheme.rb: If you just want to see what the schema is then open db/scheme.rb and have a look.
  • mysqladmin: For the command line guys you've got mysqladmin and mysql. Personally I prefer something more graphic.
  • phpMyAdmin: InstantRails also comes with phpMyAdmin which gives a Web interface to your database. Being web it is a bit clunky but its ok. You'll need both Apache and MySQL services running in InstantRails. then try I. > Configure > Database (via PhpMyAdmin). It'll launch a web page.
  • HeidiSQL - nice open source GUI interface for MySQL
  • RadRails and NetBeans (Ruby) both have database views.

Webserver

A web site needs a webserver. Ruby on Rails comes with Mongrel and Webrick. InstantRails also comes with Apache.

Options:

  • Apache
  • Mongrel
  • Webrick

Command Line

To use Rails you'll need a command line.

use_ruby

use_ruby.cmd is a command file provided by InstantRails. I put a copy of use_ruby.cmd in  C:\WINDOWS\SYSTEM32 to get it in the execution path.

Options:

  • Start > Run > cmd followed by use_ruby
  • Console - an open source command line interface with tabbing, cut and paste, etc. use_ruby will also come in handy here.
  • If you're using InstantRails it provides an easy to get to version what knows about InstantRails. Try I. > Rails Applications > Ruby Console Window.
  • RadRails and NetBeans both have a command line built in

Software Configuration Management

You'll need version control.

Options:

  • Git (the default option in the Rails community now days)
  • Subversion

Further information:

Content Management System

Any commercial web site will need a Content Management System (CMS). The customer and/or development team might not realise it at the start but the need will become apparent during the project.

There is a full List of Rails CMS Software but I'm interested in these options:

Further information:

Forum (optional)

If you don't need a full blown content management you might still need a discussion forum.  A couple of the content management systems have one included but there are other options. beast and its more recent descendent altered_beast have dominated the Rails forum space.

Options:

Further information: