acts_as_conference 2008 ~ Merb ~ Ezra

MERB ~ Ezra

Re-write of ActionPack. Wanted it to be more thread-safe. Started as a way for quicker file uploads. Ezra uses it frequently to build web services.

merb-core

Router:
  - supports resources, nested resources like Rails plus arbitrary Regexp routes.
  - route based on browser-agent

Controllers:
  - Rails auto-renders view even if action doesn’t exist. Merb has render_and_run {}, which is great for smaller Procs in the background.

merb-more

It’s a sister gem to merb-core.
  - Code generators.
  - Better Mailer. Acts like a controller (thank god), unlike ActionController, which Ezra calls “a bastard child.”
  - Haml/Sass support. Implemented in Merb in ten lines. Way better than Rails implementation.

merb-plugins

The ORMs (merb_datamapper, merb_activerecord, merb_sequel)
merb_helpers

class Foo
  def index
    render
  end

end

class  
  def index
    @food = part Foo => :index
  end

end

Showing off github.com. Ezra forks Merb with one click, message “Hardcore Forking Action” displays.

Memory footprint is about half of Rails, saves you RAM.

Directory layout is completely configurable. Default is same as Rails (app/config), therefore Capistrano recipes are the same. Deployment is the same but with more instances for your RAM.