I’ve been using Ruby on Rails for 6 months now and I find it great at what it does. I used it for personal web projects but soon I realised that it would be of a great value to use it in the company I work for.
I’m in the high-tech wireless gaming business. We make use of home made web-based tools to manage our business. These tools are made with J2EE/JSP technology but as complexity grew our development team were not able to produce quality tools in short time anymore. I wanted to upgrade our tools to make use of web 2.0 techniques for a more convenient and friendly user experience.
Starting with new tool project, I decided to go for Ruby on Rails as the technology replacing our traditional J2EE/JSP. But I had first to make a presentation of Rails to different audiences in the company: developers, operations and management. At the end, the presentation was very well received and we started our project with Ruby on Rails.
So, here are my short recommendations for a successful introduction to Ruby on Rails.
The presentation I gave was not a training but an introduction so it had to focus on the most interesting points and main advantages of Rails. Generally, the danger of a technical presentation is to lost the audience by going too deep into the details. Stay high-level.
Know Your Audience
Talking to managers, developers and operation members must be different because their goals are different. Even if you share your slides you have to change your talk.
Operations want to know about the system requirements, deployment and performances issues of the solution. Developers want to know how the technology will reduce their development efforts and what kind of programming tools will be provided. Finally, managers want to know about the maturity of the technology and examples of successful applications made with it.
Explain the Difference
You must explain how Ruby on Rails differs from other competitive technologies. Arguments I gave were: gain in productivity for developers (because of the programming environment) and competitive technology offers only parts of Rails.
Ruby on Rails is good because it provides all the building blocks for web apps in a same place, no need for additional software. One of it’s strength is Active Record, the ORM, very easy to work with.
Talking about the convention over configuration is something people were very interested in. J2EE and EJB used to be a nigthmare regarding configuration. Rails on the other hand is straightforward.
Built-in functional and unit testing is also something to talk about, managers will appreciate.
Talk about Real Apps
You should talk about real apps made with Ruby on Rails, it gives a lot of credibility and shows that it’s not a geek toy. Basecamp is one of the most popular and you can find on the Internet precise details about its development as well as system requirements and performances.
Show, Don’t Tell
Show Rails screencasts. They are very good and fun to watch. People will be amazed to see a guy making an app in few minutes. Depending on your time you can show one or two screencasts.
I shown the one about the Flickr viewer, it’s only 5 minutes long so I can comment it and stop on interesting part. I noticed that ommenting the screencast is very important not to lose the audience.
Do a Live Demo
This part is the opportunity for you to show to people how easy it is to work with Ruby on Rails. Depending on the complexity of what you show and your audience, that’s a god challenge, so you’d better train before the show.
I demonstrated a simple web-based chat application that stores messages and rooms on a database. The application is not that impressive but it’s only 60 lines of code so I can go into detail.
I also demonstrated some AJAX features (with scriptaculous effects), the code involved in the application, scaffolding and especially Active Record. I used a console session to show how to manipulate objects directly without writing any single line of SQL. People liked it a lot.
I finished the show by talking about migration scripts, thing that very few frameworks provide.
Watch the Presentation
Download the Slides
My Ruby on Rails presentation is freely available for download. I’ve just removed any confidential parts and you’re granted to modify anything to suit your needs.
The presentation is 1 hour long, 35 minutes for the talk, 10 minutes for screencasts, the rest for a live demo and questions.
If you make any use of it, I’d be glad to hear your feedback about it.