From: Martin Weber Date: 2002-12-12T07:12:20+09:00 Subject: Re: help -- persuade my boss to adopt ruby On Thu, Dec 12, 2002 at 05:36:12AM +0900, Shannon Fang wrote: > Hi Ruby Lovers, > [...] > [... push ruby instead of java ...] Heyas. One problem I really do see if you are competing with a ``smart'' language against java, is that the *SMART* about the language is actually what is putting it backwards. Face it, Java was designed for the ``average'' programmer, while ``smart'' languages are designed to give you the freedom to write ``smart'' programs. ``smart'' programs is in the end what the one who will use the program will want, on the other hand, your boss will always want to be able to groom or develop the program even if ``a bus rolls over you the other day'' or he decides to throw you out. That is why java often is the language of choice over ``smarter'' languages like one of the ML Family (Ocaml e.g.), Erlang, Haskell, Lisp or scheme, ruby ... They can just replace one ``idiot'' programmer with one other ``idiot'' programmer (or even take a good one - java doesn't *force* you to be average), in the end it's just easier to get someone to program in java than to get someone who'd be able to do the same (in shorter time, less LOC, less bugs etc. etc. etc.) in a ``smarter'' language. What you need to do to boost ruby is not show the ``smart'' functions of ruby. What you need to do is demonstrate how the code is its own documentation, how readable the code is, how easy to understand even complex things are. THEN they will consider ruby. Not if you show them the ``perl'' strenghts: writing big things in ``just one line''. When you have code which is shorter than java code, and, without any documentation at all, will mostly be understood even by managers if you present a little function or so, not littered by language characteristics, but by expressive power, then you have a much better chance to promote Ruby. Never forget that for a manager, it's not only the technical issues to decide what language to support for his project. He'll *always* have the thought "what happens if he leaves us ? Will we be able to easily find a replacement for him ? will the others of the team fully understand the application" and stuff like that. Furthermore you must cultivate a culture of using ruby in your surroundings, so even if they don't choose ruby now, you can say in a year, hey, ten people have been using it for a year for ALL KINDS of stuff! And then all will nod. And it's shorter and easier to read! And then all will nod. And then your manager will frown, and ask you how to write "ruby". Hope that helped, -Martin Weber