From: Giles Bowkett Date: 2006-06-06T02:30:28+09:00 Subject: Re: I love Ruby - But how bright is Ruby's Future? >> Many capable Rubyists that I know are of the opinion that nothing >> matters but the joy of programming Ruby. True enough as far as >> it goes, and that alone will drive significant acceptance of the >> language. But not as fast or as far as I would like. I realize I'm >> throwing down a gauntlet here, but the Pythonists have been >> better at this than we have so far. > > Not sure what "this" is. Corporate acceptance? "This" appears to be resume-padding usefulness. Two corrections: first, it's Pythonistas, not Pythonists. I don't know why, but it is. Second, my experience of the two communities is that while these statements might be perceived as a gauntlet being thrown down in the Python community, that perception seems much less likely in the Ruby community. Anyway -- to answer your main question -- I have a very skeptical, cynical side which believes that the real question here is "how much padding will my resume gain if I learn Ruby?" That's such a bad question. The real benefit in learning a new language is not the ability to get better jobs but the ability to write better programs. If you're learning a language simply because it has a bright future, you're investing your effort in the language's future rather than your own. Two of the best languages to learn are Smalltalk and Lisp. Neither one of these languages has virtually ANY future, but if you learn them, you will become a better programmer, and YOU will have a brighter future, because your work will improve. Invest time and energy in YOUR future. I'm new to Ruby too but one thing I really like about it is that I'm learning a LOT more from my beginner steps in Ruby than I learnt from my beginner steps in Python (or indeed at almost any stage in coding Java). DHH was able to write in Ruby, even though at the time the language had no mainstream acceptance. Avi Bryant has an entire company running on Smalltalk, even though that language has no mainstream acceptance. Paul Graham sold a company for $40 million after writing every line of its code in Common Lisp, even though that language had no mainstream acceptance either (and probably never will). Coding in a language because it has mainstream acceptance is putting the cart before the horse. Good programmers produce business results. Business people don't understand what the difference is between languages in the first place. They don't care -- in fact since they can't even tell languages apart in any meaningful sense, they don't even have the ability to care. The crappy ones say various things as if they really cared but the truth is they're just BSing to protect themselves in various ridiculous corporate environments -- and the truth is you don't want anything to do with crappy business people anyway. If you produce the business results, you can use any language you want, and if you don't produce the business results, you're just screwing around -- in which case, again, you might as well use any language you want. Long story short, focus on your SKILL. Focusing on whichever trend is most popular with corporations at any particular moment is a recipe for turning yourself into a bad programmer. Don't believe me? Learn Java! -- Giles Bowkett http://www.gilesgoatboy.org