Ruby’s not ready - an indepth essay

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

Chris G. wrote:
|
| I have read most of the comments in this forum. Most of them are
| helpful while some key points in the blog were not touched.
| This is an example:
| “In another incident in the same article, the original Rails author
| admits that the original Rails code required about four hundred
| restarts a day, or six to seven restarts per thread per day. Four
| hundred restarts a day means four-hundred chances for a database
| transaction to fail…”
| The question is: Is the statement true?
| Why should I concern this? Because my next project will be a
| webgame(for thoese who don’t know webgame, please visit www.travian.com).
| I’m considering use Ruby on rails to develop this web app. For such
| application, beging stable is extremedly important or the player will
| leave with anger when data was lost, data being inconsistency or
| something like that.

So, instead of examining solutions and deployment of applications
yourself, to see if they fit your need, you instead rely on what amounts
to hearsay to make your decisions?

“It must be true, I read on the internet”?

If you are that concerned, shouldn’t you instead go and see for
yourself? (And yes, load-testing is difficult, if you want to simulate a
heavy load, I fully recognize that).

And AFAIK, Passenger, JRuby, and Mongrel pretty much solved the
stability issues. That may not be true for your situation, though.


Phillip G.
Twitter: twitter.com/cynicalryan

~ Life is full of surprises but never when you need one.
– Calvin
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.8 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkf+SB0ACgkQbtAgaoJTgL+BRQCgn8GvjdrV7ztMqb0Vr2liUILY
j0EAnRmcbSkv9qX3q8WmRTabIc1ZXAlR
=5H3q
-----END PGP SIGNATURE-----

On Thu, Apr 10, 2008 at 1:25 AM, Chris G. [email protected]
wrote:

“In another incident in the same article, the original Rails author
admits that the original Rails code required about four hundred
restarts a day, or six to seven restarts per thread per day. Four
hundred restarts a day means four-hundred chances for a database
transaction to fail…”

The question is: Is the statement true?

The answer to that is both “yes” and “no”. I didn’t address it in any
of my comments because it was part of the section dealing with
“criticisms” provided in Zed’s rant. They’re completely out of context
and DHH did clarify the context in his own blog, IIRC. IMO, anyone
who relies on Zed’s ghetto rant for their context is not worth
listening to. (Zed’s ghetto rant is marginally worth reading on its
own, but it’s not a suitable basis for others to base their arguments
on.)

Why should I concern this? Because my next project will be a
webgame(for thoese who don’t know webgame, please visit www.travian.com).
I’m considering use Ruby on rails to develop this web app. For such
application, beging stable is extremedly important or the player will
leave with anger when data was lost, data being inconsistency or
something like that.

That won’t happen.

If the statement is true, then should I turn from rails to Pylons?

Nope.

-austin

Austin Z. wrote in post #657148:

(Yes, Virginia. Most people don’t need full-on Unicode munging in
their code. It’s necessary when you do need it, but most people don’t
need it.)

YEEARGH!!!

Do people still think like this in this day and age?!?!

You just have to look at this subject (“Ruby’s not ready - an indepth
essay” - “’” - WTF?!?) to see that you need Unicode EVERYWHERE if you
want to have a professional system.

Or what’s going to happen when someone in the forum is writing about
problems with Chinese handling in Ruby and he puts in the Chinese
characters that have problems?

Is your system a bug reporting system? What happens when people need to
report a problem with non-Roman text?

Is your system a PLM system? What happens when someone needs to write
instructions for a factory in Thailand?

Unless you’re writing a toy system for yourself or a workgroup you need
Unicode EVERYWHERE.

On Thu, 10 Apr 2008, Chris G. wrote:

“In another incident in the same article, the original Rails author
admits that the original Rails code required about four hundred
restarts a day, or six to seven restarts per thread per day. Four
hundred restarts a day means four-hundred chances for a database
transaction to fail…”
The question is: Is the statement true?

True, but there is some important contextual information that is
missing.

Why should I concern this? Because my next project will be a
webgame(for thoese who don’t know webgame, please visit www.travian.com).
I’m considering use Ruby on rails to develop this web app. For such
application, beging stable is extremedly important or the player will
leave with anger when data was lost, data being inconsistency or
something like that.
If the statement is true, then should I turn from rails to Pylons?

The information about the original Rails, running the original BaseCamp,
requiring 400 restarts per day lacks a great deal of context, and
context
is important.

First, regarding the actual issue of the restarts, it is very important
to
note that this was the original Rails (which was changing very
frequently – go back and check the logs for release announcements from
back then; they were often only a few days apart), which was running on
fastcgi.

Additionally, one thing that I have never seen mentioned is just what
those 400 restarts a day really were. Since the code was running on
fastcgi, were they just restarts originating in mod_fastcgi’s management
of external processes? If so, there’s nothing really incriminating
there.

Also, bear in mind that fastcgi is not the prefered way of deploying
Rails
apps these days, and in fact isn’t even common. This information about
restarts just isn’t particularly relevant to today’s Rails.

I know that Rails gets intermixed with Ruby in many people’s minds these
days, but consider, too, that Rails != Ruby. There are several good,
capable ways of doing web app development using Ruby today that don’t
involve Rails at all, and which have different sets of strengths and
shortcomings than Rails. If you are concerned, maybe you should be
looking at some of the alternatives?

Kirk H.

I’m amazed that one level of indirection (hey look at the web site I
saw) is all that is needed for a troll to get past our defenses!

Austin Z. wrote in post #657451:

You can write Unicode-safe applications without needing full Unicode
string munging. Easily. Most Rails apps should probably be doing
exactly that.

And yes, I do know Unicode. Maybe not as well as Tim B., but well
enough to know what’s actually needed and what isn’t. (I just wrote an
app that deals with UTF-8 Unicode strings; I don’t modify them at all,
so I’ve got a Unicode-safe app in Ruby because I’m not mucking with
things that I don’t need to muck with.)

Do you do any string comparisons in your app?

Are you aware that two different byte strings can evaluate as equal in
Unicode?

Still think your application is Unicode-safe?