evolution of rails

24
Evolution of Rails Lakshan Perera LK Ruby User Group – September 2009

Upload: lakshan-perera

Post on 18-May-2015

2.530 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Evolution of Rails

Evolution of Rails

Lakshan Perera

LK Ruby User Group – September 2009

Page 2: Evolution of Rails
Page 3: Evolution of Rails

Ruby is not Rails!But, Rails is Ruby...

Page 4: Evolution of Rails
Page 5: Evolution of Rails

M I N S W A N(Matz is nice, so we are nice)

Page 6: Evolution of Rails
Page 7: Evolution of Rails

The journey of 5 years...

Page 8: Evolution of Rails

“Build your blog in 15 minutes” Era

A Danish boy becomes a hacker.

A Design agency becomes an application company.

Convention over Configuration

DRY principle

Page 9: Evolution of Rails

“Rails can't scale” Era

(Phusion Passenger, Message Queues, MemCache and etc)

Page 10: Evolution of Rails

“Rails is a Ghetto” Era(Rise of Merb)

Page 11: Evolution of Rails

If Rails is a Ghetto, Merb is its' whorehouse

Page 12: Evolution of Rails

The Great Reunion!

Page 13: Evolution of Rails

Rails == Magic ?No! It is pure Ruby...

Page 14: Evolution of Rails

Metaprogramming

- Module.class_eval- Object.instance_eval, - Kernel.eval

Page 15: Evolution of Rails

Blocks/Lambdas

Page 16: Evolution of Rails

Symbols & Nice Literals

Page 17: Evolution of Rails

Rack

Rack provides a minimal interfacebetween web servers supporting Ruby and Ruby frameworks.

Cool Middlewares : Rack-Bug, Authentication (Warden), CloudKit

Page 18: Evolution of Rails

The Future Rails 3

- Better Modularity

- Framework Agnostic

- Public API (No Monkeypatching)

Page 19: Evolution of Rails

Easy Responders(Inherited Resources)

Page 20: Evolution of Rails

ActiveModel

Page 21: Evolution of Rails

Sneak Peak LightRecord

Page 22: Evolution of Rails
Page 23: Evolution of Rails

ORM for key-value stores

Supports any key-value store that has a Moneta interface.(e.g. MongoDB, CouchDB, TokyoCabinet, Redis, Hash)

ActiveModel Compatible

Includes Validations, Callbacks, State Machines, Timestamps

Basic Container Associations (similar to Has Many relationship)

Released Soon!

Page 24: Evolution of Rails

Questions ?