From: Alder Green Date: 2006-05-23T14:29:24+09:00 Subject: Re: Zed and Luis drop the bomb on Ruby's poor performance On 5/22/06, Madan Manoharan wrote: > On 5/22/06, benjohn@fysh.org wrote: > ... > Unfortunately, not all of us are in your boat. I really like Ruby, but > if performance improvement is not going to be in Ruby's near future, > my management is not going to buy into Ruby! > > In most of the corporate environments I have worked in, many managers > tend to take IT decisions based on 'feelings'; 'speed' is a word that > creates good 'feelings'. So, when the issue of performance is bought > up, Ruby doesn't win (doesn't matter if the application requires it or > not). > > IMO, if Ruby's vision is to penetrate the corporate environment, Ruby > should address its performance issues among other things (e.g. support > for apps -- Ruby on Rails). This is exactly - but *exactly* - the sort of thing that was said about Java at its onset. Especially in environments where it was evaluated against a C++ backdrop. And guess what? Eventually, it didn't matter! Java did get widely adopted because it was a better language and offered an improved development experience. In fact IIRC, Java was relatively much slower than Ruby when it started gaining momentum. Certainly if you consider the computer speed back then. How many project managers are saying "well, Java would give us a much faster development process, and with the superior maintainability we should not only beat everyone else to the market but also keep ahead of the competition, but let's write the thing in C++ to save those few extra CPU cycles"?. Now replace C++ with C, Fortran or Assembly. How much software is written today in Assembly to truly squeeze the last drops of performance out of the machine? ... Exactly. In fact, most of C++ (and I'd arge - any lanauge lower-level than Ruby, including Java) use is *misuse*. Most developers using C++ today are doing it out of inertia, habit, or at most for legacy reason. Even without the insanely powerful machines considered "norm" on our desktop today, C++ development is 99% premature optimization. And the funny fact is that most of those 99% won't even get the performance they wasted 50%-90% of their development sweat (and tears!) upon. Since contrary to popular myth, writing your application in C++ won't make it magically faster. The developer would have to be pretty smart for that. And for those 99%, being smart means they would have been using Java. If they were even smarter, they'd be using Ruby :P -- -Alder