From: James Britt Date: 2004-05-15T04:58:11+09:00 Subject: Re: Please revisit Ruby's Best and vote for additions Curt Hibbs wrote: > > Another part of Why Ruby is provide advice to people who are advocating > Ruby in their workplace. So, what I'd like to know is when you get the > pushback "Nobody knows it. I can't get people to support it.", what is > your response? I don't have any good answer, because the short answer leads to more questions, for which I don't know what to say. If I tell management that any developer with more than half a brain and some OO experience can pick up Ruby in a few days (at least learn enough to read code, debug, maintain, etc.), the question turns to cost. Why spend any money to retrain people when J2EE/JSP script-monkeys are a dime a dozen? Is Ruby going to be cheaper in the long run? Will the resulting code be as or more: stable ,fast, scalable, secure?? Where's the competitive advantage? Is it better to hire a local team of fewer-but-smarter developers rather than outsource to someplace 12 timezones away for half the cost? For many IT managers, software and programmers are a commodity. Management would rather pay a small fortune on licensing fees for something like WebLogic or iPlanet, and hire off-the-rack Javadroids, the sort of folks who can code EJB remote interfaces in their sleep, but can't tell you how to pick a sort routine or a data structure best suited for a given task. The "standardization" on J2EE means that developers don't have to know any actual computer science or software engineering, they just have to know a particular API. It's like paint-by-numbers, or a filling in a coloring book; Java has become the Crayola of programming languages. It's a tough sell. When I was helping interview developers, myself and another developer were more interested in how a candidate thought, if they at least knew about certain things and had an aptitude for learning. But management was very concerned about actual experience; they didn't want anyone to spend time *learning* Ant or JUnit, they wanted someone plug-and-play. >>We need to demonstrate that Ruby easier to develop, easier to >>maintain, and solves the same business needs (including concerns over >>speed, security, scalability, and reliability). >> >>Perhaps Ruby needs the equivalent of the "Pet Store" example. > > > Actually, what we really need is a simple spec. for something like a > "Pet Store" example, and then implement that in (say) Ruby, Java, C#, > and Python, each by someone skilled in that language and its development > environment, and keep track of some basic product metrics in a uniform > way. Well, there's the J2EE Pet Store as the canonical example. I believe Microsoft did a version in C#/.net. So consider that as the baseline; The implementation is the spec. It helps if a Ruby version goes toe-to-toe with Java or C# version, but I think the key is a demonstration that you can build the same sort of common business apps in Ruby, and show that they're just as fast and scalable but easier to develop and maintain. James