Hi,

I’ve spent a lot of time trying to fix Ruby’s bad handling of the “%s

%z” time format that is used in every Git commit. It’s now fixed for

Time and in Rubinius both Time and DateTime without affecting anybody

negatively.

The only one remaining is DateTime, and as you can see in the bug

report[1], the rationale is perfectly sensible, the fix simple, clean,

and unobtrusive.

Yet this guy, Tadayoshi F., closes it immediately without any

reason given. After I complained he gives what is probably a bullshit

reason, it’s hard to know because it’s in Japanese, but the code in

the explanation is most definitely a red herring. This is probably due

to an earlier discussion [2] in which he didn’t explain anything

either.

So my question is: who the f*uck is this guy? And why can he just

reject sensible patches like that?

After a private discussion with somebody heavily involved in Ruby, I

was enlightened to the fact that Ruby development is heavily

influenced by Japanese culture, so every component has a clear

maintainer, and he has the final word, regardless of their bullshit

reasons.

This model is clearly wrong. The most successful projects out there

(e.g. Linux, Git) do not have maintainers making decisions

unilaterally, but rather discussion and consensus are more important

than authority. This ensures that if the maintainer is wrong (we are

all wrong sometimes (some more than others)), the project doesn’t

suffer as a result.

If you must have a maintainer that makes decisions unilaterally,

shouldn’t it be a sensible person able to communicate properly? This

is something Tadayoshi F. is not. Apparently he cannot even speak

English, so what is he doing maintaining a module of such an important

project as Ruby?

I believe this explains a lot about why Ruby has such a problem

gaining and maintaining popularity. Even though the language is

extremely awesome, the implementation cannot advance as it should,

heavily in part due to this Japanese culture.

This forces projects like Rubinius, and RubySL. I’ve talked to people

in those projects who are heavily discontented with the way Ruby MRI

does things; ignoring the larger community out there (who are not

Japanese).

For example, Ruby MRI doesn’t match the RubySpec, and why do the

developers do? Nothing, ignore the RubySpec (at the moment of writing

this I see 25 failures).

If this political and cultural bullshit continues, I’m afraid Ruby

won’t ever be as successful as similar but inferior languages such as

Python, and whatever popularity it gains, it will quickly loose it as

it did in 2008[3]. It will become a lost gem, like so many good

Japanese things, only used in Japan (if at all), and ignored by the

rest of the world.

I hope Ruby becomes a sensible truly international project, adopt

practices of other successful open source projects, and let go of this

NIH bullshit.

[1] https://bugs.ruby-lang.org/issues/9794

[2] https://bugs.ruby-lang.org/issues/7445

[3] http://www.tiobe.com/index.php/content/paperinfo/tpci/Ruby.html