You are on page 1of 12

Introduction to Ruby, Rails and Programmer Happiness

Matt Clark

What is Ruby?

A general-purpose object-oriented programming language


Strong focus on simplicity and productivity Elegant, natural syntax Dynamically typed (e.g. duck typing) Single inheritance Domain Specific Languages (DSLs)

Why Ruby?
Write more understandable code in less lines Highly productive Extensible Free

What is Rails?
Ruby on Rails is an open-source web framework thats optimized for programmer happiness and sustainable productivity. It lets you write beautiful code by favoring convention over configuration

What is Rails?
Full-stack MVC framework Written in Ruby

Components in Rails
ActiveRecord (M) ActionView (V) ActionController (C) ActionMailer ActionWebService

Why Rails?
Highly productive Built-in testing Free Powerful Agile Fun

Principles
DRY Convention over Configuration

Language and framework features and comparisons


Struts/Spring/Hibernate ASP.NET/NHibernate PHP

Configuration Separation of Concerns

Lab

Setup Ruby on Rails environment Create Hello, World! web application Application layout Using migrations to set up a database schema Using scaffolds to create CRUD views Displaying data from a database using associations Validating form input fields Working in the view (part I) Using eRB, extracting common forms to partials, and utilizing helpers Writing tests Working in the view (part II) Making your application Web 2.0-ish using Ajax

Resources
http://www.ruby-lang.org http://www.rubyonrails.com http://www.rubygarden.com http://www.rubyquiz.com http://www.rubycentral.com http://www.ruby-doc.org

Contact
mattclark@zoominternet.net

You might also like