Developing for Ruby on Windows?

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?

Cheers

···

--
Posted via http://www.ruby-forum.com/.

My personal opinion about this is that developing on Windows is not as
hard as it used to be since the Ruby Installer + DevKit have been
released. However, Windows stays Windows, and the thing I personally
most miss in Windows is the #fork method and the ability to create
multi-process programs easily. When Ruby gets rid of the GIL sometime
and Ruby's threads will run truly concurrent, I may not miss it anymore
(Ruby 2.0, maybe?).
Apart from that, I just dislike non-free (free as in freedom) operating
systems :wink:

Vale,
Marvin

···

Am 17.09.2010 10:53, schrieb Tom Wardrop:

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?

Cheers

There is quite a few reasons, the main one is that Ruby assumes a POSIX
environment
for general development, and this is worked around (usually successfully) on
windows.

But there are enough areas where it doesn't work that cause issues ad a
general feeling
of dissatisfaction.

Note that this situation is changing considerably. JRuby has made serious
development
on windows for Ruby users possible for several years now, and the latest
release of
RubyInstaller has made dramatic changes to how Ruby works on Windows (in
short it introduces
the equivalent of a POSIX toolchain).

There is a long history on this problem, but it is not as interesting as the
positive recent
developments that make Ruby on Windows a much more pleasant experience.

···

On Fri, Sep 17, 2010 at 9:53 AM, Tom Wardrop <tom@tomwardrop.com> 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?

Cheers
--
Posted via http://www.ruby-forum.com/\.

--
http://richardconroy.blogspot.com | http://twitter.com/RichardConroy

The bulk of my development work is on Windows and it has been since I started using Ruby (way back in the 1.6 days).
The OneClick installer was a blessing but had the known problems, the new RubyInstaller is even better and the devkit makes life a lot easier.
The win32-* gems cover most of what people would need with windows specific stuff.
The missing fork() and speed are the main concerns. The Ruby interpreter on Windows performs abominably - so much so that when I have to work on large sets of data I do the work on the Mac.
And all the web servers (webrick, mongrel, thin) perform much better on any other platform.
Having said that 95% of the time performance is good enough and the ease of expression in Ruby makes up for any windows specific annoyances.
Cheers,
V.-

···

On 17/09/10 11:53 , 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?

Cheers

--
http://www.ampelofilosofies.gr

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.

···

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?

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

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?

Basically because the startup time for rails is so terribly slow.
Nothing else comes to mind.

-r

···

--
Posted via http://www.ruby-forum.com/\.

Barring ideology, there are, in my opinion, two main annoyances in working with Windows..

1. Some times, it can take a while to start the Ruby interpreter - and Ruby runs slowly. While an annoyance, most people don't deploy on Windows and a bit of extra time in starting a long(er) running program is fine for me.

2. Some native gems fail to build and you need to find a way around it. Luis' work and the DevKit, etc. are changing this situation on a daily basis.. so, we will get there.

Barring that, I haven't found any reason to avoid working on Windows using Ruby. Some of the things that I do require Windows - for example, I use Win32Ole to parse Word documents to put into a Radiant CMS site... so, I'm happy enough working there.

Best Regards,
Mohit.
17/9/2010 | 6:11 PM.

···

On 17/9/2010 6:02 PM, Quintus wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 17.09.2010 10:53, schrieb Tom Wardrop:

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?

Cheers

My personal opinion about this is that developing on Windows is not as
hard as it used to be since the Ruby Installer + DevKit have been
released. However, Windows stays Windows, and the thing I personally
most miss in Windows is the #fork method and the ability to create
multi-process programs easily. When Ruby gets rid of the GIL sometime
and Ruby's threads will run truly concurrent, I may not miss it anymore
(Ruby 2.0, maybe?).
Apart from that, I just dislike non-free (free as in freedom) operating
systems :wink:

I totally agree with Richard - I am stuck with windows mostly as I got MS qualifications so I can possibly get a job in developing and my machine doesn't have sufficient space for a duel boot at the minute ( catch 22 - job = money = new machine!).

  Sooo... using the latest windows installers results in a generally pleasurable ruby experience. Nearly everything works well on windows and I can develop with ruby to my hearts content. Occasionally a gem appears that will not work on windows - I think this is due to a lack of thought or even disregard rather than it can't be done, e.g. rvm (switch between ruby versions)

I use ruby 1.8.6 or 1.8.7 (waiting for some of my favourite gems to update for 1.9) and I do have 1.9.1 which I am experimenting with. Windows is XP and I use notepad++ or scite. Scite is excellent for small programs and learning, why use anything else?

Have fun

Much of the criticism, I believe, comes from cultural rather than
technical concerns. Most of the movers-and-shakers in the Ruby
community are using either *nix or OS X and therefore most of the
blogs, articles, tutorials and books come written through that prism
(actually, earlier works were much better in this regard). This can
make it tricky for newcomers to learn Ruby if they're on Windows and
it cements a perception that Ruby on Windows is harder than it should
be, or doesn't work as well. Take the Rails Tutorial for example -
it's very POSIX centric and even advises using Cygwin rather than
native Windows. It's an awesome tutorial, but it would leave the
curious Windows-using dabbler with a sense that Rails, Ruby, Git and
the rest are really designed for Unix and unsatisfactory, hacky
afterthoughts on Windows. The result: people either switch, or turn
away. I know Rails != Ruby, but many (perhaps most) newcomers are
introduced to Ruby through Rails, so I believe this is a good example.

The thing is, Ruby on Windows needn't be a poor experience - with the
right tools and advice, and good quality, disciplined cross-platform
programming on the part of Ruby developers, the beauty of Ruby can be
enjoyed just as well on Windows as it can on OS X or *nix. The Python
community seems to be ahead of Ruby on this point. I believe what we
need are more developers dedicated to improving the experience on
Windows (the RubyInstaller team being a fantastic example) and also a
more concious welcoming of Windows users into the community (as in,
less of the mocking of Windows and Windows users in general - yeah, I
know, boo-hoo, violins, etc. - but for a newcomer, it's not the best
experience to feel like you're some sort of pariah) Now, we all need
to have a sense of humour and have to be able to take a bit of
ribbing, but the joke is kind of old and stale now, and things have
improved tremendously in recent months on Windows, and, well, we're
all just trying to get some work done, no? Can't we all just be
friends, dammit? :wink: But if we can continue this trend of making
Windows feel less of a hostile environment for Ruby, then I'm sure
more Windows developers will be attracted and therefore will pour more
resources into improving Ruby on Windows. So, keep up the good work
and less of the negative stuff, in other words. :slight_smile:

(btw, this particular community is actually very welcoming and always
has been; my mild critique is more aimed at the high-profile bloggers,
developers and pundits, particularly in the Rails community.)

Charles

···

--
Charles Roper
http://twitter.com/charlesroper

On 17 September 2010 11:12, Mohit Sindhwani <mo_mail@onghu.com> wrote:

On 17/9/2010 6:02 PM, Quintus wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 17.09.2010 10:53, schrieb Tom Wardrop:

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?

Cheers

My personal opinion about this is that developing on Windows is not as
hard as it used to be since the Ruby Installer + DevKit have been
released. However, Windows stays Windows, and the thing I personally
most miss in Windows is the #fork method and the ability to create
multi-process programs easily. When Ruby gets rid of the GIL sometime
and Ruby's threads will run truly concurrent, I may not miss it anymore
(Ruby 2.0, maybe?).
Apart from that, I just dislike non-free (free as in freedom) operating
systems :wink:

Barring ideology, there are, in my opinion, two main annoyances in working
with Windows..

1. Some times, it can take a while to start the Ruby interpreter - and Ruby
runs slowly. While an annoyance, most people don't deploy on Windows and a
bit of extra time in starting a long(er) running program is fine for me.

2. Some native gems fail to build and you need to find a way around it.
Luis' work and the DevKit, etc. are changing this situation on a daily
basis.. so, we will get there.

Barring that, I haven't found any reason to avoid working on Windows using
Ruby. Some of the things that I do require Windows - for example, I use
Win32Ole to parse Word documents to put into a Radiant CMS site... so, I'm
happy enough working there.

Best Regards,
Mohit.
17/9/2010 | 6:11 PM.

Check out Pik: http://rubyinstaller.org/add-ons/pik/

Charles

···

On 17 September 2010 11:50, jonty <jontyjont@btinternet.com> wrote:

Occasionally a gem appears that will not work on windows - I think this is
due to a lack of thought or even disregard rather than it can't be done,
e.g. rvm (switch between ruby versions)

Ahh, many thanks charles - I hadn't spotted pik yet, looks great I will try it today!