--PmA2V3Z32TCmWXqI
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Sep 17, 2010 at 05:53:43PM +0900, Tom Wardrop wrote:
> I've heard a lot of criticism about developing for Ruby on Windows, but
> am yet to see anyone elaborate on this. Can someone enlighten me on why
> developing for Ruby on Windows is considered to be painful?

I'll be sorta treading the same ground as some other people who
responded, but here's my response anyway:

The problems with developing in Ruby on Windows fall into several
categories.

* Ruby is slow on MS Windows.

* Ruby documentation tends to be POSIX-oriented (that is, Unix and
  Unix-like systems are the targets).  The famous Rails tutorial is a
  good example.

* MS Windows is generally kind of hostile to non-Microsoft interpreted
  languages.  This can make it more difficult to get your language of
  choice installed on the system than on other OSes, for instance, and it
  tends to mean that to do a lot of meaningful work one needs to jump
  through more hoops (such as the extra work involved to get Ruby working
  with WSH instead of just knuckling under and using VBScript).  While
  JScript is actually one of Microsoft's babies, even that is not quite
  as comfortable a fit for MS Windows scripting as VBScript.

* A lot of Ruby gems do not work on MS Windows.  This could be for many
  reasons, such as the fact a gem's functionality might really only
  address a POSIX need.

* The community generally prefers POSIX systems, and it shows in
  discussion, expertise, and so on.

* MS Windows simply lacks some basic functionality that makes development
  easier, such as a proper fork(), a powerful shell that works better
  than a bolt-on afterthought like Powershell, and a general availability
  of simple scriptable interfaces for just about every piece of software
  running on the system.  These are all capabilities that (most) other
  general purpose and server-specific operating systems offer.

That is not to say that using Ruby is not a good language to use on MS
Windows.  As someone else pointed out, it's a good enough language to
make the extra effort involved to use it worthwhile when you're working
with MS Windows.  Some other languages' implementations have been tweaked
to fit MS Windows a little better than Ruby's, of course, but from my
perspective *all* truly multi-platform languages are more painful to use
on MS Windows than elsewhere.

Note that I'm not talking about JRuby.  My minimal experience with JRuby
involves toying with Ruboto on my Android device.

Your mileage may vary, I suppose.

--=20
Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ]

--PmA2V3Z32TCmWXqI
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (FreeBSD)

iEYEARECAAYFAkyWV2kACgkQ9mn/Pj01uKXt4wCg6L2ZdQnDWi8vb9UtwdJ2cdcb
SSEAoME9UqqwPQgky7JTyyc7jYAwamNn
=kKdj
-----END PGP SIGNATURE-----

--PmA2V3Z32TCmWXqI--

On Fri, Sep 17, 2010 at 05:53:43PM +0900, Tom Wardrop wrote:
> I've heard a lot of criticism about developing for Ruby on Windows, but
> am yet to see anyone elaborate on this. Can someone enlighten me on why
> developing for Ruby on Windows is considered to be painful?

I'll be sorta treading the same ground as some other people who
responded, but here's my response anyway:

The problems with developing in Ruby on Windows fall into several
categories.

* Ruby is slow on MS Windows.

* Ruby documentation tends to be POSIX-oriented (that is, Unix and
  Unix-like systems are the targets).  The famous Rails tutorial is a
  good example.

* MS Windows is generally kind of hostile to non-Microsoft interpreted
  languages.  This can make it more difficult to get your language of
  choice installed on the system than on other OSes, for instance, and it
  tends to mean that to do a lot of meaningful work one needs to jump
  through more hoops (such as the extra work involved to get Ruby working
  with WSH instead of just knuckling under and using VBScript).  While
  JScript is actually one of Microsoft's babies, even that is not quite
  as comfortable a fit for MS Windows scripting as VBScript.

* A lot of Ruby gems do not work on MS Windows.  This could be for many
  reasons, such as the fact a gem's functionality might really only
  address a POSIX need.

* The community generally prefers POSIX systems, and it shows in
  discussion, expertise, and so on.

* MS Windows simply lacks some basic functionality that makes development
  easier, such as a proper fork(), a powerful shell that works better
  than a bolt-on afterthought like Powershell, and a general availability
  of simple scriptable interfaces for just about every piece of software
  running on the system.  These are all capabilities that (most) other
  general purpose and server-specific operating systems offer.

That is not to say that using Ruby is not a good language to use on MS
Windows.  As someone else pointed out, it's a good enough language to
make the extra effort involved to use it worthwhile when you're working
with MS Windows.  Some other languages' implementations have been tweaked
to fit MS Windows a little better than Ruby's, of course, but from my
perspective *all* truly multi-platform languages are more painful to use
on MS Windows than elsewhere.

Note that I'm not talking about JRuby.  My minimal experience with JRuby
involves toying with Ruboto on my Android device.

Your mileage may vary, I suppose.

--=20
Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (FreeBSD)

iEYEARECAAYFAkyWV2kACgkQ9mn/Pj01uKXt4wCg6L2ZdQnDWi8vb9UtwdJ2cdcb
SSEAoME9UqqwPQgky7JTyyc7jYAwamNn
=kKdj
-----END PGP SIGNATURE-----