People also need to be a little more careful about using the word "ghetto". It has a long history, from Jewish ghettos in Europe during World War II, to modern day black ghettos that persist in most big cities in the U.S.<p>Many people today still grow up in "The Ghetto," which is a place of geographic, economic, and political marginalization. Before you go talking about "Wii is a ghetto" or "Ruby is a ghetto" you should really understand something about what that means, and who you might be affecting with your words.<p>And even if you've decided that you want to throw the word around, use it fucking properly. A ghetto is not just something that "sucks". Ghettos are defined not just by being run-down, but by being isolated in some way. If you want to say something sucks, just say it sucks.
This is tangential, but I've found that ruby's non-standard libs have, for the most part, been horribly named. Recall from the article: curb, nokogiri, syck, psych, home_run. Others: sinatra, rack, thin, unicorn, maruku. None of these give me the slightest clue about what they do, and if I wanted, for example, to parse XML, how on earth would I know that I wanted to find "nokogiri" (or "hpricot")? Could I pick what I wanted out of a lineup?<p>How do you ruby people find the good libraries when you need to perform a task? Is it all word-of-mouth (word-of-blog I guess)?
We should probably aim higher than "not a ghetto" :)<p>I didn't read the article in great detail, but I noticed this:<p><pre><code> it provides many ways to do the same thing for programmer convenience
</code></pre>
This is not a good thing, in my opinion.<p>I do, however, find it peculiar that utilities like RSS, FTP and mail handling are included in a stdlib.
With all due respect, Net::HTTP <i>is</i> clunky. I'm typing the following from memory, too:<p><pre><code> require 'open-uri'
response = open("http://blog.segment7.net/").read</code></pre>
His counter argument seems to be that the original blog post didn't offer alternatives or patches and so it is invalid.<p>Which of course is not a counter argument at all.<p>IMO the Ruby stdlib is a mess. Denying it won't improve it.
His argument is rather poor. The other post doesn't offer details or alternatives, but all his does is offer details that really don't support his argument ("it's /only/ 2.4 times slower, and you should use persistent connections anyway!"). What kind of defense is that?