Greetings Group, I''d like some advice about selling Ruby on Rails in my existing organization. I''ve only been at this company for 4 months, but I''ve been handing out Pragmatic Programmer books like samples at a Weight Watcher''s convention. I also got myself and 21 of my co-workers to go to the Dallas No Fluff Just Stuff a couple of weeks ago. When we got back from NFJS (best quote was from the Herding Racehorses talk: "I just kept wanting to stand up and applaud!") we all got into a big meeting and talked about what we wanted to try out. I brought up that I would like to look at Ruby on Rails. There were several concerns (it''s new, it''s not Java, we fear change, etc.) which I did not immediately address. At this point I just wanted all the people who _always_ have to make a comment to get it out of their system. I did, however, find unexpected support for the idea of looking at Ruby on Rails. The turning point was when one of the other developers said "If you will right a Rails application I can do it in less lines of code with JSP". As someone else put it, the gauntlet has been thrown down. Now I need some pragmatic advice on how to present Rails. Here''s my approach so far: 1. Take an existing application and re-write a small piece of it (search screen and one or two CRUD screens) and keep track of my time. 2. Put together a handout with some screen shots, the time and functionality involved, and some of the better Rails quotes. 3. Present it at the next meeting with better justification. Make a short, clear case for rails. Point out that in JSP it doesn''t scale like J2EE. How does that sound? Any other suggestions? This is my first Rails app, but I want to gather any low-hanging fruit. Is it difficult to get distributed ruby working? Is there anything else that I''m missing? Thanks, Joe -- "For a new software system, the requirements will not be completely known until after the users have used it." Humphrey''s Requirements Uncertainty Principle.
Bothari wrote:> I did, however, find unexpected support for the idea of looking at > Ruby on Rails. The turning point was when one of the other developers > said "If you will right a Rails application I can do it in less lines > of code with JSP". As someone else put it, the gauntlet has been > thrown down.Before you take this challenge, you should get a couple significant sample RoR applications under your belt. I assume your friend isn''t as new to JSP as you are to Rails. I''ve just completed my first significant sample app, and must say how much I learned along the way, and how it cemented what I read about. Now, future tasks should take me less time and create more efficiency in code and time. Also, is "less lines" the best single metric? I beleive time, maintainable code, and understandable code is more important than size.> Now I need some pragmatic advice on how to present Rails. Here''s my > approach so far: > 1. Take an existing application and re-write a small piece of it > (search screen and one or two CRUD screens) and keep track of my time. > 2. Put together a handout with some screen shots, the time and > functionality involved, and some of the better Rails quotes. > 3. Present it at the next meeting with better justification. Make a > short, clear case for rails. Point out that in JSP it doesn''t scale > like J2EE. > > How does that sound? Any other suggestions? This is my first Rails > app, but I want to gather any low-hanging fruit. Is it difficult to > get distributed ruby working? Is there anything else that I''m > missing?Get people excited and motivated first. A single evangelist doesn''t carry as much weight in the decision to change technologies. Gather a group, get the buzz going. When management hears more Rails talk and benefits from the group, they may listen closer. Managers don''t like radical change because it may cost them. They tend to go with the "safe answer" rather than the "best answer" or "current trend". They want to know that tools and support is available, that their current staff can and wants to learn the new technology, and how the change will look to their managers, owners, shareholders, etc. You know the old quote: "Nobody ever got fired for choosing (IBM|Microsoft|Oracle|...)". I like to use new tools to prototype applications. Prototypes are quick and easy to do as they show you something more concrete to users while the team designs and builds the real thing. Often, prototypes make it into production because they are done sooner. Once this happens, Rails may be used for more prototypes, maybe more production applications, and then it may become the standard development platform! Allen
* Bothari (bothari-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org) [051116 07:25]:> How does that sound? Any other suggestions? This is my first Rails > app, but I want to gather any low-hanging fruit. Is it difficult to > get distributed ruby working? Is there anything else that I''m > missing?If it''s of any help, I posted the summary analysis from our team''s evaluation of switching to Ruby on Rails from Java on the site I just set up to document our Rails project''s progress. Here''s the post: http://rewrite.rickbradley.com/articles/2005/11/16/evaluation-moving-from-java-to-ruby-on-rails I''m still working out the kinks on that particular server, so be patient with it. Best, Rick -- http://www.rickbradley.com MUPRN: 467 | to know how many random email haiku | users can dance on the | head of a pin.
On Nov 16, 2005, at 7:32 AM, Allen Fair wrote:> Also, is "less lines" the best single metric? I beleive time, > maintainable code, and understandable code is more important than > size.I think you''re right, those other metrics are generally more important to business; however, SLOC is also an indirect indicator of expressiveness, maintainability, and understandability - though it could go in either direction. (IOW, extremely terse could be less maintainable and understandable). Anyway, main point is.. Ruby is highly expressive and easy to understand. --Steve
On Nov 16, 2005, at 4:19 AM, Bothari wrote:> Greetings Group, > > I''d like some advice about selling Ruby on Rails in my existing > organization. I''ve only been at this company for 4 months, but I''ve > been handing out Pragmatic Programmer books like samples at a Weight > Watcher''s convention. I also got myself and 21 of my co-workers to go > to the Dallas No Fluff Just Stuff a couple of weeks ago. > > When we got back from NFJS (best quote was from the Herding Racehorses > talk: "I just kept wanting to stand up and applaud!") we all got into > a big meeting and talked about what we wanted to try out. I brought > up that I would like to look at Ruby on Rails. There were several > concerns (it''s new, it''s not Java, we fear change, etc.) which I did > not immediately address. At this point I just wanted all the people > who _always_ have to make a comment to get it out of their system. > > I did, however, find unexpected support for the idea of looking at > Ruby on Rails. The turning point was when one of the other developers > said "If you will right a Rails application I can do it in less lines > of code with JSP". As someone else put it, the gauntlet has been > thrown down. > > Now I need some pragmatic advice on how to present Rails. Here''s my > approach so far: > 1. Take an existing application and re-write a small piece of it > (search screen and one or two CRUD screens) and keep track of my time. > 2. Put together a handout with some screen shots, the time and > functionality involved, and some of the better Rails quotes. > 3. Present it at the next meeting with better justification. Make a > short, clear case for rails. Point out that in JSP it doesn''t scale > like J2EE. > > How does that sound? Any other suggestions? This is my first Rails > app, but I want to gather any low-hanging fruit. Is it difficult to > get distributed ruby working? Is there anything else that I''m > missing? > Thanks, > JoeHey Joe- I went through the same thing trying to get the newspaper I work for to let me use rails. I succeeded and I was able to rewrite our website in rails and I have been doing rails only dev here ever since. The site I created is http://yakimaherald.com.It is serving 70,000+ page views per day and is very stable. The entire app was written by me with one other designer making some view templates. The site it reaplaced was a php site that weighed in at 5500 lines of php code and is here http://legacy.yakimaherald.com. The new site was written in 1800 lines of ruby code and has 3 times the functionality and is way more stable and scalable then the old version. I did a complete write up of the whole process which includes connecting to legacy proprietary systems here on my blog : http://brainspl.at/articles/2005/11/03/from-start-to-launch-http- yakimaherald-com OR http://rubyurl.com/8ko for a shorter url ;-) Hope that this information might help youin some way. Good luck on getting them to accept rails. I think if they take a hard look at it that it will be the better solution for some sites you may build but don''t try to sell it as a java killer or you will never get it approved. Cheers- -Ezra Zygmuntowicz Yakima Herald-Republic WebMaster http://yakimaherald.com 509-577-7732 ezra-gdxLOakOTQ9oetBuM9ipNAC/G2K4zDHf@public.gmane.org
Don''t forget to show them the video! Gets me every time :) Seriously though, the blog app that DHH whips up in the intro video would be a great comparison app for you. You can follow along a few times before hand to practice, and then do it right in front of them if you want. Try writing that app in as many lines of jsp. The sql code alone in Java would surpass the amount of rails code, not to mention it would take a week just to start the app server ;) Cheers, Mark On 11/16/05, Bothari <bothari-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Greetings Group, > > I''d like some advice about selling Ruby on Rails in my existing > organization. I''ve only been at this company for 4 months, but I''ve > been handing out Pragmatic Programmer books like samples at a Weight > Watcher''s convention. I also got myself and 21 of my co-workers to go > to the Dallas No Fluff Just Stuff a couple of weeks ago. > > When we got back from NFJS (best quote was from the Herding Racehorses > talk: "I just kept wanting to stand up and applaud!") we all got into > a big meeting and talked about what we wanted to try out. I brought > up that I would like to look at Ruby on Rails. There were several > concerns (it''s new, it''s not Java, we fear change, etc.) which I did > not immediately address. At this point I just wanted all the people > who _always_ have to make a comment to get it out of their system. > > I did, however, find unexpected support for the idea of looking at > Ruby on Rails. The turning point was when one of the other developers > said "If you will right a Rails application I can do it in less lines > of code with JSP". As someone else put it, the gauntlet has been > thrown down. > > Now I need some pragmatic advice on how to present Rails. Here''s my > approach so far: > 1. Take an existing application and re-write a small piece of it > (search screen and one or two CRUD screens) and keep track of my time. > 2. Put together a handout with some screen shots, the time and > functionality involved, and some of the better Rails quotes. > 3. Present it at the next meeting with better justification. Make a > short, clear case for rails. Point out that in JSP it doesn''t scale > like J2EE. > > How does that sound? Any other suggestions? This is my first Rails > app, but I want to gather any low-hanging fruit. Is it difficult to > get distributed ruby working? Is there anything else that I''m > missing? > Thanks, > Joe > > -- > "For a new software system, the requirements will not be completely > known until after the users have used it." Humphrey''s Requirements > Uncertainty Principle. > _______________________________________________ > Rails mailing list > Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org > http://lists.rubyonrails.org/mailman/listinfo/rails >
Mark Dillon wrote:> Don''t forget to show them the video! Gets me every time :) > > Seriously though, the blog app that DHH whips up in the intro video > would be a great comparison app for you. You can follow along a few > times before hand to practice, and then do it right in front of them > if you want. Try writing that app in as many lines of jsp. The sql > code alone in Java would surpass the amount of rails code, not to > mention it would take a week just to start the app server ;) >I agree 100% that you should do a direct comparison. This has been on my list of things to do for a while (without decided what sample app to use). It may be worth taking a look at the Rails PetStore, http://www.anassina.com/projects/railspetstore/ although it hasn''t released an update since the end of July. (Compare it with Clinton Begin''s JPetstore, which it claims to be based on, rather than the original over-engineered Java PetStore.) I have just got agreement to use Rails for prototyping in a large project that will deliver on J2EE, so we shall definitely go through this comparison exercise to help determine the mappings from a Rails MVC ''animated specification'' to, for example, an AppFuse Struts/Spring/Hibernate production implementation. I''ve been impressed by the amount of generation (of application CRUD functionality and associated tests) available with AppFuse - if you are not already aware of this, take a look at the tutorials at http://raibledesigns.com/wiki/Wiki.jsp?page=Articles as it would be unfair to compare Rails with something less capable than AppFuse in the J2EE world, IMHO. N.B. Be aware that nearly all the code you are writing by hand as you go through the AppFuse tutorials can be generated (from the domain class with XDoclet annotations) for you by running a script - the tutorials are to ensure that you understand the workings of the AppFuse combination of Struts/Spring/Hibernate (or alternative combinations of front ends, Spring, and back ends) before starting to use automated generation.> Cheers, > Mark > > On 11/16/05, Bothari <bothari-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > >>Greetings Group, >> >>I''d like some advice about selling Ruby on Rails in my existing >>organization. I''ve only been at this company for 4 months, but I''ve >>been handing out Pragmatic Programmer books like samples at a Weight >>Watcher''s convention. I also got myself and 21 of my co-workers to go >>to the Dallas No Fluff Just Stuff a couple of weeks ago. >> >>When we got back from NFJS (best quote was from the Herding Racehorses >>talk: "I just kept wanting to stand up and applaud!") we all got into >>a big meeting and talked about what we wanted to try out. I brought >>up that I would like to look at Ruby on Rails. There were several >>concerns (it''s new, it''s not Java, we fear change, etc.) which I did >>not immediately address. At this point I just wanted all the people >>who _always_ have to make a comment to get it out of their system. >> >>I did, however, find unexpected support for the idea of looking at >>Ruby on Rails. The turning point was when one of the other developers >>said "If you will right a Rails application I can do it in less lines >>of code with JSP". As someone else put it, the gauntlet has been >>thrown down. >> >>Now I need some pragmatic advice on how to present Rails. Here''s my >>approach so far: >>1. Take an existing application and re-write a small piece of it >>(search screen and one or two CRUD screens) and keep track of my time. >>2. Put together a handout with some screen shots, the time and >>functionality involved, and some of the better Rails quotes. >>3. Present it at the next meeting with better justification. Make a >>short, clear case for rails. Point out that in JSP it doesn''t scale >>like J2EE.Be aware that keeping track of your time may be misleading if you are still learning Rails. The amount of code involved is a better indicator, since to a first approximation developers cut lines of code at a rate independent of the language. Having said that, there''s the productivity impact of zero turnaround time on changes in Rails - best demonstrated. (Here again the demo could be an A-B comparison of what a change involves in Rails, vs. what it involves in J2EE.) Good luck! Justin>> >>How does that sound? Any other suggestions? This is my first Rails >>app, but I want to gather any low-hanging fruit. Is it difficult to >>get distributed ruby working? Is there anything else that I''m >>missing? >>Thanks, >>Joe >> >>-- >>"For a new software system, the requirements will not be completely >>known until after the users have used it." Humphrey''s Requirements >>Uncertainty Principle. >>_______________________________________________ >>Rails mailing list >>Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org >>http://lists.rubyonrails.org/mailman/listinfo/rails >> > > _______________________________________________ > Rails mailing list > Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org > http://lists.rubyonrails.org/mailman/listinfo/rails > >
Justin Forder wrote:> I''ve been impressed by the amount of generation (of application CRUD > functionality and associated tests) available with AppFuse - if you are > not already aware of this, take a look at the tutorials at > > http://raibledesigns.com/wiki/Wiki.jsp?page=Articles > > as it would be unfair to compare Rails with something less capable than > AppFuse in the J2EE world, IMHO.I came to Rails after trying out AppFuse. Even though I know Java, I was unsettled by having to make a choice of framework combinations based on limited information, and then, after choosing one, found the documentation diffuse and hard going. It was much easier to learn Ruby and Rails via the all-in-one Pickaxe and Agile Dev. books than to wade through the documentation for one piece of the Java puzzle, such as Spring. Sometimes choice is a curse. -- We develop, watch us RoR, in numbers too big to ignore.
Even with Appfuse lite, aka Equinox, it took me about 3 months to get somewhat of a handle on the whole J2EE process. I had a simple Rails site built in one night. ''Nuff said. -PJ http://pjhyett.com On 11/19/05, Mark Reginald James <mrj-bzGI/hKkdgQnC9Muvcwxkw@public.gmane.org> wrote:> Justin Forder wrote: > > > I''ve been impressed by the amount of generation (of application CRUD > > functionality and associated tests) available with AppFuse - if you are > > not already aware of this, take a look at the tutorials at > > > > http://raibledesigns.com/wiki/Wiki.jsp?page=Articles > > > > as it would be unfair to compare Rails with something less capable than > > AppFuse in the J2EE world, IMHO. > > I came to Rails after trying out AppFuse. Even though I know Java, > I was unsettled by having to make a choice of framework combinations > based on limited information, and then, after choosing one, found the > documentation diffuse and hard going. It was much easier to learn > Ruby and Rails via the all-in-one Pickaxe and Agile Dev. books than > to wade through the documentation for one piece of the Java puzzle, > such as Spring. Sometimes choice is a curse. > > -- > We develop, watch us RoR, in numbers too big to ignore. > > _______________________________________________ > Rails mailing list > Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org > http://lists.rubyonrails.org/mailman/listinfo/rails >
Even after three months I was struggling. I can't believe I was saying to myself "Hibernate, Spring, and Tapestry makes everything drop-dead simple. Just make sure it's loaded by the Spring Bean factory, add the schema info for each model here, then you need to add a factory interface for each model class, then implement it in an class that provides it using hibernate, building off hibernate's own abstract factory templace class... Then add the two tapestry xml config files for each page, implement an abstract class for that page, and the html template, and you're in business! It's that easy!" I can't believe I was kidding myself like that. I really cannot forgive myself. It was a horrible dark age in my life. And then I found Rails. And all things good and happy returned to my life. :-) On 11/19/05, PJ Hyett <pjhyett@gmail.com> wrote:> Even with Appfuse lite, aka Equinox, it took me about 3 months to get > somewhat of a handle on the whole J2EE process. I had a simple Rails > site built in one night. 'Nuff said. > > -PJ > http://pjhyett.com > > On 11/19/05, Mark Reginald James <mrj@bigpond.net.au> wrote: > > Justin Forder wrote: > > > > > I've been impressed by the amount of generation (of application CRUD > > > functionality and associated tests) available with AppFuse - if you are > > > not already aware of this, take a look at the tutorials at > > > > > > http://raibledesigns.com/wiki/Wiki.jsp?page=Articles > > > > > > as it would be unfair to compare Rails with something less capable than > > > AppFuse in the J2EE world, IMHO. > > > > I came to Rails after trying out AppFuse. Even though I know Java, > > I was unsettled by having to make a choice of framework combinations > > based on limited information, and then, after choosing one, found the > > documentation diffuse and hard going. It was much easier to learn > > Ruby and Rails via the all-in-one Pickaxe and Agile Dev. books than > > to wade through the documentation for one piece of the Java puzzle, > > such as Spring. Sometimes choice is a curse. > > > > -- > > We develop, watch us RoR, in numbers too big to ignore. > > > > _______________________________________________ > > Rails mailing list > > Rails@lists.rubyonrails.org > > http://lists.rubyonrails.org/mailman/listinfo/rails > > > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails >_______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
You and me both, Jacob, you and me both. -PJ On 11/20/05, Jacob Quinn Shenker <jqshenker-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Even after three months I was struggling. > > I can''t believe I was saying to myself "Hibernate, Spring, and > Tapestry makes everything drop-dead simple. Just make sure it''s loaded > by the Spring Bean factory, add the schema info for each model here, > then you need to add a factory interface for each model class, then > implement it in an class that provides it using hibernate, building > off hibernate''s own abstract factory templace class... Then add the > two tapestry xml config files for each page, implement an abstract > class for that page, and the html template, and you''re in business! > It''s that easy!" > > I can''t believe I was kidding myself like that. I really cannot > forgive myself. It was a horrible dark age in my life. > > And then I found Rails. And all things good and happy returned to my life. :-) > > On 11/19/05, PJ Hyett <pjhyett-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > Even with Appfuse lite, aka Equinox, it took me about 3 months to get > > somewhat of a handle on the whole J2EE process. I had a simple Rails > > site built in one night. ''Nuff said. > > > > -PJ > > http://pjhyett.com > > > > On 11/19/05, Mark Reginald James <mrj-bzGI/hKkdgQnC9Muvcwxkw@public.gmane.org> wrote: > > > Justin Forder wrote: > > > > > > > I''ve been impressed by the amount of generation (of application CRUD > > > > functionality and associated tests) available with AppFuse - if you are > > > > not already aware of this, take a look at the tutorials at > > > > > > > > http://raibledesigns.com/wiki/Wiki.jsp?page=Articles > > > > > > > > as it would be unfair to compare Rails with something less capable than > > > > AppFuse in the J2EE world, IMHO. > > > > > > I came to Rails after trying out AppFuse. Even though I know Java, > > > I was unsettled by having to make a choice of framework combinations > > > based on limited information, and then, after choosing one, found the > > > documentation diffuse and hard going. It was much easier to learn > > > Ruby and Rails via the all-in-one Pickaxe and Agile Dev. books than > > > to wade through the documentation for one piece of the Java puzzle, > > > such as Spring. Sometimes choice is a curse. > > > > > > -- > > > We develop, watch us RoR, in numbers too big to ignore. > > > > > > _______________________________________________ > > > Rails mailing list > > > Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org > > > http://lists.rubyonrails.org/mailman/listinfo/rails > > > > > _______________________________________________ > > Rails mailing list > > Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org > > http://lists.rubyonrails.org/mailman/listinfo/rails > > > > _______________________________________________ > Rails mailing list > Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org > http://lists.rubyonrails.org/mailman/listinfo/rails > > >
Mark Reginald James wrote:> Justin Forder wrote: > >> I''ve been impressed by the amount of generation (of application CRUD >> functionality and associated tests) available with AppFuse - if you >> are not already aware of this, take a look at the tutorials at >> >> http://raibledesigns.com/wiki/Wiki.jsp?page=Articles >> >> as it would be unfair to compare Rails with something less capable >> than AppFuse in the J2EE world, IMHO. > > > I came to Rails after trying out AppFuse. Even though I know Java, > I was unsettled by having to make a choice of framework combinations > based on limited information, and then, after choosing one, found the > documentation diffuse and hard going. It was much easier to learn > Ruby and Rails via the all-in-one Pickaxe and Agile Dev. books than > to wade through the documentation for one piece of the Java puzzle, > such as Spring. Sometimes choice is a curse.You are absolutely right. I found AppFuse to be a good answer when I already had a fair amount of project experience with Struts, and one project''s worth of exposure to Hibernate, and had decided that Spring was next on the list. "Where to go after Struts?" is becoming a hot topic where I work. A couple of years ago we were debating whether JDO or Hibernate would be the way to go, to replace hand-written Data Access Objects. regards Justin