Ruby concerns

I previously wrote about my concerns of changes made between Ruby 1.8.2 and 1.8.3. Daniel Berger responded with some of his concerns as well.

Now, Ryan Davis and James Edward Gray have both spoken up about their concerns for similar changes. I except more to follow as well.

This kind of criticism is good and healthy. We want to see Ruby succeed and become an even better language. In particular, we don’t want to see mistakes being made that may have a negative effect on the perception of the language itself.

A lot of us now have a vested interest in how Ruby works. Aside from the masses of people now working on Rails, a lot of us use key pieces of Ruby code in our business ventures. My company, for one, thrives on Ruby code that I have written. In particular, one key workstation running some custom QtRuby code that I have created generates about $350US per hour in revenue. That is not an insignificant amount of money. And, unfortunately, it will continue running Ruby 1.8.2 for the foreseeable future, as I’m not willing to stake my reputation on a botched upgrade.

I personally think that the “fixes” we’ve seen in 1.8.3 and 1.8.4 are fixes, they’ve just been fixed in the wrong place. In my experience, people have an expectation that the progression of 1.8.1 -> 1.8.2 -> 1.8.3 -> … is for bug fixes only, but any existing code will continue to function exactly as it has before. Unfortunately this isn’t the case. The problems ARE fixable, by reverting back to their previous normal behavior for 1.8.4/5 and instead putting the “fixes” into another branch.

I just hope more people voice their opinions on the matter.

Technorati Tags: ,

3 Responses to “Ruby concerns”

  1. slyphon Says:

    I’m afraid I’d have to agree. Last year, i got a job at an enterprise search company and was given the (what at the time) was the short-term task of writing web-based demos of our engine. The language I was writing them in was PHP (and, coming from Python, this was a very unpleasant experience). After 5-6 months of PHP hell, I finally got the team to agree to allow me to write a Rails version. Everyone agreed after a month or two that Rails was a Good Thing, and Ruby was a Great Thing.

    The problem is that now it’s 5 months after I first started writing the Rails demos, and the code is reaching maturity, however there are still some hard-to-track-down bugs in the code that I don’t believe are the fault of Rails, or code that I’ve written.

    In Debian Sarge’s ruby, there are the semi-frequent “[BUG] Segmentation Fault” errors when using development mode. In production, there are inconsistent and frustrating memory leaks, GC issues, and data corruption. (Getting to the point) The most frustrating thing about all of this is that upgrading to 1.8.3 or .4 only introduce *other* issues, and leaks and [FATAL] errors, so there’s really no benefit. I have the expectation that the language will tend towards *increasing* stability in the “stable” branch, and Ruby (for all of it’s benefits) has been poor in this regard.

    I’m not going to give up Ruby any time soon (they’ll take my .rb files when they pry them from my cold, dead hands!), but I feel like a loving parent with an underachieving child. We all see how great Ruby is, and how much better it will be, but there are these persistent issues that make it difficult to defend attacks from absolute-stability minded hackers.

  2. Bean Says:

    Eye
    Heart
    PHP

  3. bigD Says:

    I bought teh wif some ruby earrings and necklace one tim for valentin’s day. It led to good tims for bigD.