From: slumos@... Date: 2004-01-19T16:00:03+09:00 Subject: Re: Fighting Ruby's bad fame I like to think I've done my small part for Ruby advocacy. About two years ago I started using Ruby as a prototyping language, now it's my group's main language. Last year we delivered 3 reasonably large Ruby applications based on our research. We brought in a new developer recently, and one of my co-workers told me "I gave mouse the Ruby book and told him to go off and learn Ruby...well actually I told Ruby to go teach itself to mouse." (we talk in usernames around here). I was a big Perl guy, but now I haven't touched Perl in over a year. (I just wanted to show where I'm coming from.) When you install Perl, you get a completely unified and consistent documentation system and a well-organized and consistent module system and the ability to trivially install almost any module. That's a really nice feature, and Ruby has nothing close. If you are thinking about pointing to RDoc and raainstall, I'm sorry but you're in denial. With Perl, if I suspect there is a module called XML::Parser, I say something like "perl -MCPAN -e shell" and "install XML::Parser". If I only suspect that Perl has an XML parser, I'm likely to guess that it's called XML::Parser. If I want documentation, I say "perldoc XML::Parser" and it finds the documentation. If it can find the module, it can find the documentation, and it looks basically the same across modules. I should mention that I've never used raainstall, but even if that is a solved problem, it doesn't handle the documentation problem. In my experience, a random Ruby module may come with RDoc, or RD, or an HTML file, or a README, or nothing. A lot of modules that use RDoc only document methods, not philosophy / usage / examples. I know that sounds like I'm criticizing, but really I'm not. I'm just not good at writing diplomatically. I consider the above a minor inconvenience at worst, although I am generally more likely to write my own module before I try to figure out an existing one without good documentation. I just don't think it's productive when some people say Ruby documentation is "not good enough" or "not as good as Perl" and the Ruby community simply declares the problem solved or a myth. It's worth noting that if Perl has "better" documentation, it's because the core Perl people purposely built a community where non-conformism was punished. The transition from Perl 4 to Perl 5 was marked by anyone asking for help with 4 being told that they should use 5 instead, and anyone announcing a new program being told they should rewrite it as a module instead. I don't know about anyone else, but my impression of the Perl community at that time was not certainly not that it was friendly. Steve