If you need to run Piston on Windows, BoxCycle wrote some information about it at: Rails Plugin Updates, SVN, and Piston 2.0.2 on Windows

I just stumbled upon Is Windows a First Class Platform for Ruby? by Peter Cooper and Is Windows a supported platform for Ruby? I guess not by Luis Lavena.

I have to admit, I did use Windows daily for 3 years before I switched permanently to Ubuntu, about 6 months back. Initially, I was using IntelliJ’s IDEA as my development platform, then I switched to the e Text Editor. I never had many problems with gems that didn’t/couldn’t/wouldn’t install. There are many kind souls in the community that keep these gems up to date. I’m talking specifically about Tim Hunter (RMagick), Luis Lavena (Mongrel) and others.

Just before I made the final switch, I was using Linux in a VMware image to run XLsuite. The application was unbearably slow in Windows, but acceptable in a virtual machine. I was using the e Text Editor as my editor, accessing the code through a Samba share.

My own experience was pretty positive. Now that I’m on Ubuntu, I wouldn’t go back though. What made me switch ? Better performance on the same hardware, mostly; the novelty of the experience. I do not dislike Windows, nor do I think Redmond is a bad place. Windows is a fine platform.

Just to contrast, look at the excellent support Java enjoys on Windows. Windows is the 2nd platform for Java (with Solaris being the 1st). We, the Ruby community, should be learning from Sun. There are many, many more Windows machines than Mac or Linux machines out there. There are literally millions of people who could learn to write Ruby, but are on Windows. Dr Nic said it all: … People Use Windows Too. Whether you want to or not, Windows isn’t going away soon.

Personally, I have made the switch. But just on my small team, Windows users outnumber other platforms 1 to 1. Here’s the breakdown:

  • 4 Windows (2 coders, 1 designer, 1 sponsor)
  • 2 Ubuntu (1 coder, 1 designer)
  • 1 Mac (1 ExtJS coder)

Is Windows a good platform for Ruby ? Yes. Is Windows a great platform for Ruby ? No, but there’s no reason why it shouldn’t be. Just look at Why‘s work on Hackety Hack. I’m really impressed and happy that I will be able to show Ruby to my daughters. The catch ? Hackety Hack is for Windows only right now.

Please, let’s keep and increase Windows support. Once they’re hooked, they might switch, who knows ?

This is the initial release of the Windows Tempfile Fix plugin. This plugin sets out to make Tempfile binary safe on Windows.


1 $ piston import svn://svn.teksol.info/svn/rails/plugins/windows_tempfile_fix vendor\plugins\windows_tempfile_fix


1 $ ruby script/plugin install svn://svn.teksol.info/svn/rails/plugins/windows_tempfile_fix


As I reported on my blog at
the Windows version of Ruby will fail to load certain files when they are used
through a Tempfile. This is because the Tempfile class does not open it’s files
in binary mode.

This plugin is very conservative. It will not install itself if it does
not detect the exact version it is supposed to be used against.

This plugin will only do it’s work if it the following expression evaluates
to true:
RUBY_PLATFORM == “i386-mswin32” && RUBY_VERSION == “1.8.4”

Rails was patched to prevent that error.

If you are like me, you develop your applications on Windows and deploy to Linux/Unix/FreeBSD, whatever.

On Rails 1.1, the console does not start anymore on Windows. It reports the following error:

1 $ ruby script\console
2 Loading development environment.
3 c:/ruby/lib/ruby/1.8/irb/init.rb:151:in `parse_opts’: undefined method `upcase’ for nil:NilClass (NoMethodError)
4 from c:/ruby/lib/ruby/1.8/irb/init.rb:19:in `setup’
5 from c:/ruby/lib/ruby/1.8/irb.rb:54:in `start’
6 from c:/ruby/bin/irb:13

There are two ways to fix this issue:

  1. Upgrade Ruby to 1.8.4, or
  2. Patch your vendor/rails/railties/lib/commands/console.rb to remove the “—prompt-mode single” option:

    1 Index: vendor/rails/railties/lib/commands/console.rb
    2 ===============
    3 —- vendor/rails/railties/lib/commands/console.rb (revision 4097)
    4 + vendor/rails/railties/lib/commands/console.rb (working copy)
    5 @</span> -22,4 +22,4 <span class="chg">@
    6 else
    7 puts "Loading #{ENV[‘RAILS_ENV’]} environment."
    8 end
    9 -exec "#{options[:irb]} #{libs} —prompt-mode simple"
    10 +exec "#{options[:irb]} #{libs}"

    1 Index: vendor/rails/railties/lib/commands/console.rb
    2 ===
    3 —- vendor/rails/railties/lib/commands/console.rb (revision 4097)
    4 vendor/rails/railties/lib/commands/console.rb (working copy)
    5 @&lt;/span&gt; -22,4 +22,4 &lt;span class="chg"&gt;@
    6 else
    7 puts "Loading #{ENV[‘RAILS_ENV’]} environment."
    8 end
    9 -exec "#{options[:irb]} #{libs} —prompt-mode simple"
    10 exec "#{options[:irb]} #{libs}"

UPDATE (2006-03-30): Ah, I just found the reason why irb chokes. Richard Livsey’s script/console with edge Rails on Windows with 1.8.2


Your Host

A picture of me

I am François Beausoleil, a Ruby on Rails and Scala developer. During the day, I work on Seevibes, a platform to measure social interactions related to TV shows. At night, I am interested many things. Read my biography.

Top Tags

Books I read and recommend


Projects I work on

Projects I worked on