SlideShare a Scribd company logo
FREVO ON RAILS
   GRUPO DE USUÁRIOS RUBY/RAILS DE PERNAMBUCO




RUBY ON RAILS 3
 O que vem de novo por aí...
   GUILHERME CARVALHO E LAILSON BANDEIRA
FREVO ON RAILS




“No, no another Rails upgrade!”
FREVO ON RAILS




  Rails 2 + Merb
Anunciado em dezembro de 2008
FREVO ON RAILS




Versão 3.0.0.beta1
Versão 3.0.0.beta2
Versão 3.0.0.beta3
Versão 3.0.0.beta4
  Funciona em Ruby 1.8.7 e 1.9.2


 Versão 3.0.0.rc1




                                                re . N en .
                                             e- ss ldr es
                                          ris le hi ec
                                        rp or r c pi


                                                    y. t
                                                  ad o
                                      te 3 fo all
                                    en age od sm
                                     of t g ins
                                               a
                                       No nt
                                             o
                                         Co
FREVO ON RAILS




MAJOR UPGRADE
FREVO ON RAILS




Mudanças arquiteturais importantes
FREVO ON RAILS




RAILS
FREVO ON RAILS




          ACTIVE
         SUPPORT


ACTIVE              ACTION
RECORD               PACK




         RAILTIES




ACTIVE               ACTIVE
MODEL               RESOURCE


         ACTION
         MAILER
FREVO ON RAILS




COMMAND INTERFACE
FREVO ON RAILS




rails nome_da_app
FREVO ON RAILS




rails new nome_da_app
FREVO ON RAILS




script/server
FREVO ON RAILS




rails server
FREVO ON RAILS




rails s
FREVO ON RAILS




script/generate controller nome_do_controlador
FREVO ON RAILS




rails generate controller nome_do_controlador
FREVO ON RAILS




rails g controller nome_do_controlador
FREVO ON RAILS




console        runner

                          profiler
   dbconsole
                destroy

 plugin             benchmarker
FREVO ON RAILS




Gerenciamento de gems com o Bundler
FREVO ON RAILS




ROUTING
FREVO ON RAILS




Não se usa mais o map!
FREVO ON RAILS




ActionController::Routing::Routes.draw do |map|
  map.resources :posts
end
FREVO ON RAILS




ActionController::Routing::Routes.draw do |map|
  resources :posts
end
FREVO ON RAILS




Resources e singular resources não
            mudaram
FREVO ON RAILS




Namespaces e scopes
FREVO ON RAILS




map.with_options(:namespace => “admin”) do |a|
  a.resources :photos
end
FREVO ON RAILS




namespace “admin” do
  resources :photos
end
FREVO ON RAILS




Scopes foram criados para auxiliar na
           organização
FREVO ON RAILS




map.resources :photos,
  :member => {:preview => :get }
FREVO ON RAILS




resources :photos do
  get :preview, on: :member
end
FREVO ON RAILS




Sai o método connect, entra o match
FREVO ON RAILS




rake routes
FREVO ON RAILS




RESPONDERS
FREVO ON RAILS




class PostsController < ApplicationController
  def index
    @posts = Post.all

    respond_to do |format|
      format.html # index.html.erb
      format.xml { render :xml => @posts }
    end
  end

  def show
    @post = Post.find(params[:id])

    respond_to do |format|
      format.html # show.html.erb
      format.xml { render :xml => @post }
    end
  end
...
end
FREVO ON RAILS




class PostsController < ApplicationController
  respond_to :html, :xml, :json

  def index
    @posts = Post.all

    respond_with(@posts)
  end

  def show
    @post = Post.find(params[:id])

    respond_with(@post)
  end
...
end
FREVO ON RAILS




É possível também criar
   outros responders
FREVO ON RAILS




 Three reasons to love Responders
http://weblog.rubyonrails.org/2009/8/31/three-reasons-love-responder
FREVO ON RAILS




ACTION CONTROLLER
FREVO ON RAILS




 Gargalo de performance:
roteamento + renderização
FREVO ON RAILS




Separação de responsabilidades:
       Action Dispatch
FREVO ON RAILS




Hierarquia de controladores
FREVO ON RAILS




AbstractController::Base



ActionController::Metal



ActionController::Base
FREVO ON RAILS




ACTIVE RECORD
  QUERY API
FREVO ON RAILS




Nova API de consulta
  Active Relation
FREVO ON RAILS




@posts = Post.find(:all,
! :conditions => ['created_at > ?', date])
FREVO ON RAILS




@posts = Post.where(['created_at > ?', date])
FREVO ON RAILS




Lazy loading
FREVO ON RAILS




@posts = Post.where(['created_at > ?', date])

if only_published?
! @posts = @posts.where(:published => true)
end
FREVO ON RAILS




# @posts.all
@posts.each do |p|
! ...
end
FREVO ON RAILS




                    group
        from                   joins


order          where
                            having

                includes
  limit                       select
           offset
FREVO ON RAILS




minimum
                           maximum
first
                  all
                                 sum
         last
                        count

        average
                          calculate
FREVO ON RAILS




Active Record Query Interface 3
 http://m.onkey.org/2010/1/22/active-record-query-interface
FREVO ON RAILS




Escopos também foram simplificados
FREVO ON RAILS




class Post < ActiveRecord::Base
  named_scope :published, :conditions => {:published => true}
  named_scope :unpublished, :conditions => {:published => false}
end
FREVO ON RAILS




class Post < ActiveRecord::Base
  scope :published, where(:published => true)
  scope :unpublished, where(:published => false)
end
FREVO ON RAILS




VALIDAÇÕES SEM
   MODELOS
FREVO ON RAILS




Consequência da modularização
        Active Model
FREVO ON RAILS




class Person
  include ActiveModel::Validations

  validates_presence_of :first_name, :last_name

  attr_accessor :first_name, :last_name
end
FREVO ON RAILS




person = Person.new
person.valid? # false
person.errors # {:first_name=>["can't be bl...
p.first_name = 'John'
p.last_name = 'Travolta'
p.valid? # true
FREVO ON RAILS




Make Any Ruby Object Feel Like AR
  http://yehudakatz.com/2010/01/10/activemodel-make-any-
              ruby-object-feel-like-activerecord/
FREVO ON RAILS




 VALIDADORES
CUSTOMIZADOS
FREVO ON RAILS




Agora é possível criar validadores
    que podem ser reusados
FREVO ON RAILS




Mais um resultado do desacoplamento
FREVO ON RAILS




module ActiveModel
  module Validations
    class CepValidator < EachValidator
      FORMATO_CEP = /d{5}-d{3}/

      def initialize(options)
        super(options)
      end

      def validate_each(record, attribute, value)
        unless valid?(value)
          record.errors[attribute] = 'não é válido'
        end
      end

      def valid?(value)
        FORMATO_CEP =~ value
      end
    end
  end
end
FREVO ON RAILS




require "#{Rails.root}/lib/validadores/cep_validator"

class Person < ActiveRecord::Base
  validates :cep, cep: true
end
FREVO ON RAILS




ACTION MAILER
FREVO ON RAILS




Sai TMail, entra Mail
FREVO ON RAILS




Uma nova casa para os mailers
./app/mailers/nome_do_mailer
FREVO ON RAILS




Criação de defaults para diminuir duplicação
                 de código
FREVO ON RAILS




class UserMailer < ActionMailer::Base
! def welcome(user)
! ! recipients user.email
! ! from “email@example.com”
! ! subject “Welcome to my site”
! ! body { :user => user }
! end
end
FREVO ON RAILS




class UserMailer < ActionMailer::Base
! default from: “email@example.com”

!   def welcome(user)
!   ! @user = user

! ! mail(to: user.email,
! ! ! subject: “Welcome to my site”)
! end
end
FREVO ON RAILS




Anexos muito mais fáceis
FREVO ON RAILS




class UserMailer < ActionMailer::Base
! default from: “email@example.com”

!   def welcome(user)
!   ! @user = user
!   ! attachments[“hello.gif”] = File.read(‘...’)

! ! mail(to: user.email,
! ! ! subject: “Welcome to my site”)
! end
end
FREVO ON RAILS




class UserMailer < ActionMailer::Base
! default from: “email@example.com”

!   def welcome(user)
!   ! @user = user
!   ! attachments.inline[“logo.png”] =
!   ! ! File.read(...)

! ! mail(to: user.email,
! ! ! subject: “Welcome to my site”)
! end
end
FREVO ON RAILS
FREVO ON RAILS




DEMO TIME
FREVO ON RAILS




RECURSOS
FREVO ON RAILS




Rails Dispatch
http://railsdispatch.com/
FREVO ON RAILS




Rails Guides Edge
   http://guides.rails.info/
FREVO ON RAILS




Engine Yard Blog
http://www.engineyard.com/blog
FREVO ON RAILS




Dive into Rails 3 Screencasts
    http://rubyonrails.org/screencasts/rails3
FREVO ON RAILS




Railscasts
http://railscasts.com/
FREVO ON RAILS




Agile Web Development with Rails                               (4th      ed.)
    http://pragprog.com/titles/rails4/agile-web-development-with-rails
FREVO ON RAILS




        The Rails 3 Way
http://my.safaribooksonline.com/9780132480345
FREVO ON RAILS




FREVO ON RAILS
GRUPO DE USUÁRIOS RUBY DE PERNAMBUCO

More Related Content

What's hot

Chef on Python and MongoDB
Chef on Python and MongoDBChef on Python and MongoDB
Chef on Python and MongoDB
Rick Copeland
 
What to do when things go wrong
What to do when things go wrongWhat to do when things go wrong
What to do when things go wrong
Dorneles Treméa
 
Introdução Ruby On Rails
Introdução Ruby On RailsIntrodução Ruby On Rails
Introdução Ruby On RailsLukas Alexandre
 
Service approach for development REST API in Symfony2
Service approach for development REST API in Symfony2Service approach for development REST API in Symfony2
Service approach for development REST API in Symfony2
Sumy PHP User Grpoup
 
Getting Into FLOW3 (DPC12)
Getting Into FLOW3 (DPC12)Getting Into FLOW3 (DPC12)
Getting Into FLOW3 (DPC12)
Robert Lemke
 
Vim Hacks
Vim HacksVim Hacks
Vim Hacks
Lin Yo-An
 
RubyConf Portugal 2014 - Why ruby must go!
RubyConf Portugal 2014 - Why ruby must go!RubyConf Portugal 2014 - Why ruby must go!
RubyConf Portugal 2014 - Why ruby must go!
Gautam Rege
 
IPCSE12: Getting into FLOW3
IPCSE12: Getting into FLOW3IPCSE12: Getting into FLOW3
IPCSE12: Getting into FLOW3
Robert Lemke
 
Symfony2, Backbone.js &amp; socket.io - SfLive Paris 2k13 - Wisembly
Symfony2, Backbone.js &amp; socket.io - SfLive Paris 2k13 - WisemblySymfony2, Backbone.js &amp; socket.io - SfLive Paris 2k13 - Wisembly
Symfony2, Backbone.js &amp; socket.io - SfLive Paris 2k13 - Wisembly
Guillaume POTIER
 
Rails for PHP Developers
Rails for PHP DevelopersRails for PHP Developers
Rails for PHP Developers
Robert Dempsey
 
Rails vs Web2py
Rails vs Web2pyRails vs Web2py
Rails vs Web2py
jonromero
 
A tour on ruby and friends
A tour on ruby and friendsA tour on ruby and friends
A tour on ruby and friends旻琦 潘
 
When To Use Ruby On Rails
When To Use Ruby On RailsWhen To Use Ruby On Rails
When To Use Ruby On Rails
dosire
 
Migrating Legacy Rails Apps to Rails 3
Migrating Legacy Rails Apps to Rails 3Migrating Legacy Rails Apps to Rails 3
Migrating Legacy Rails Apps to Rails 3Clinton Dreisbach
 
Custom post-framworks
Custom post-framworksCustom post-framworks
Custom post-framworks
Kiera Howe
 
Ruby On Rails Introduction
Ruby On Rails IntroductionRuby On Rails Introduction
Ruby On Rails Introduction
Thomas Fuchs
 
Symfony2 Introduction Presentation
Symfony2 Introduction PresentationSymfony2 Introduction Presentation
Symfony2 Introduction PresentationNerd Tzanetopoulos
 
Using Sinatra to Build REST APIs in Ruby
Using Sinatra to Build REST APIs in RubyUsing Sinatra to Build REST APIs in Ruby
Using Sinatra to Build REST APIs in Ruby
LaunchAny
 
Symfony Components
Symfony ComponentsSymfony Components
Symfony Componentsguest0de7c2
 

What's hot (20)

Chef on Python and MongoDB
Chef on Python and MongoDBChef on Python and MongoDB
Chef on Python and MongoDB
 
What to do when things go wrong
What to do when things go wrongWhat to do when things go wrong
What to do when things go wrong
 
Introdução Ruby On Rails
Introdução Ruby On RailsIntrodução Ruby On Rails
Introdução Ruby On Rails
 
Service approach for development REST API in Symfony2
Service approach for development REST API in Symfony2Service approach for development REST API in Symfony2
Service approach for development REST API in Symfony2
 
Getting Into FLOW3 (DPC12)
Getting Into FLOW3 (DPC12)Getting Into FLOW3 (DPC12)
Getting Into FLOW3 (DPC12)
 
Vim Hacks
Vim HacksVim Hacks
Vim Hacks
 
RubyConf Portugal 2014 - Why ruby must go!
RubyConf Portugal 2014 - Why ruby must go!RubyConf Portugal 2014 - Why ruby must go!
RubyConf Portugal 2014 - Why ruby must go!
 
IPCSE12: Getting into FLOW3
IPCSE12: Getting into FLOW3IPCSE12: Getting into FLOW3
IPCSE12: Getting into FLOW3
 
Symfony2, Backbone.js &amp; socket.io - SfLive Paris 2k13 - Wisembly
Symfony2, Backbone.js &amp; socket.io - SfLive Paris 2k13 - WisemblySymfony2, Backbone.js &amp; socket.io - SfLive Paris 2k13 - Wisembly
Symfony2, Backbone.js &amp; socket.io - SfLive Paris 2k13 - Wisembly
 
Rails for PHP Developers
Rails for PHP DevelopersRails for PHP Developers
Rails for PHP Developers
 
Rails vs Web2py
Rails vs Web2pyRails vs Web2py
Rails vs Web2py
 
A tour on ruby and friends
A tour on ruby and friendsA tour on ruby and friends
A tour on ruby and friends
 
When To Use Ruby On Rails
When To Use Ruby On RailsWhen To Use Ruby On Rails
When To Use Ruby On Rails
 
Migrating Legacy Rails Apps to Rails 3
Migrating Legacy Rails Apps to Rails 3Migrating Legacy Rails Apps to Rails 3
Migrating Legacy Rails Apps to Rails 3
 
Custom post-framworks
Custom post-framworksCustom post-framworks
Custom post-framworks
 
Ruby On Rails Introduction
Ruby On Rails IntroductionRuby On Rails Introduction
Ruby On Rails Introduction
 
Symfony ORM
Symfony ORMSymfony ORM
Symfony ORM
 
Symfony2 Introduction Presentation
Symfony2 Introduction PresentationSymfony2 Introduction Presentation
Symfony2 Introduction Presentation
 
Using Sinatra to Build REST APIs in Ruby
Using Sinatra to Build REST APIs in RubyUsing Sinatra to Build REST APIs in Ruby
Using Sinatra to Build REST APIs in Ruby
 
Symfony Components
Symfony ComponentsSymfony Components
Symfony Components
 

Viewers also liked

What is-google-adwords
What is-google-adwordsWhat is-google-adwords
What is-google-adwordsAnthony Greene
 
Introdução ao Ruby on Rails
Introdução ao Ruby on RailsIntrodução ao Ruby on Rails
Introdução ao Ruby on RailsJuan Maiz
 
Ruby On Rails
Ruby On RailsRuby On Rails
Ruby On Rails
ousli07
 
Dando os primeiros passos com rails
Dando os primeiros passos com railsDando os primeiros passos com rails
Dando os primeiros passos com rails
Marcos Sousa
 

Viewers also liked (6)

What is-google-adwords
What is-google-adwordsWhat is-google-adwords
What is-google-adwords
 
Introdução ao Ruby on Rails
Introdução ao Ruby on RailsIntrodução ao Ruby on Rails
Introdução ao Ruby on Rails
 
Ruby On Rails
Ruby On RailsRuby On Rails
Ruby On Rails
 
RubyonRails
RubyonRailsRubyonRails
RubyonRails
 
Dando os primeiros passos com rails
Dando os primeiros passos com railsDando os primeiros passos com rails
Dando os primeiros passos com rails
 
Creating Android apps
Creating Android appsCreating Android apps
Creating Android apps
 

Similar to O que vem por aí com Rails 3

Introduction to Rails - presented by Arman Ortega
Introduction to Rails - presented by Arman OrtegaIntroduction to Rails - presented by Arman Ortega
Introduction to Rails - presented by Arman Ortega
arman o
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
DelphiCon
 
Connecting the Worlds of Java and Ruby with JRuby
Connecting the Worlds of Java and Ruby with JRubyConnecting the Worlds of Java and Ruby with JRuby
Connecting the Worlds of Java and Ruby with JRuby
Nick Sieger
 
RoR 101: Session 1
RoR 101: Session 1RoR 101: Session 1
RoR 101: Session 1
Rory Gianni
 
Introduction to service discovery and self-organizing cluster orchestration. ...
Introduction to service discovery and self-organizing cluster orchestration. ...Introduction to service discovery and self-organizing cluster orchestration. ...
Introduction to service discovery and self-organizing cluster orchestration. ...
Pivorak MeetUp
 
Isomorphic App Development with Ruby and Volt - Rubyconf2014
Isomorphic App Development with Ruby and Volt - Rubyconf2014Isomorphic App Development with Ruby and Volt - Rubyconf2014
Isomorphic App Development with Ruby and Volt - Rubyconf2014
ryanstout
 
20120121 rbc rails_routing
20120121 rbc rails_routing20120121 rbc rails_routing
20120121 rbc rails_routingTakeshi AKIMA
 
JRuby + Rails = Awesome Java Web Framework at Jfokus 2011
JRuby + Rails = Awesome Java Web Framework at Jfokus 2011JRuby + Rails = Awesome Java Web Framework at Jfokus 2011
JRuby + Rails = Awesome Java Web Framework at Jfokus 2011Nick Sieger
 
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
Matt Gauger
 
PTW Rails Bootcamp
PTW Rails BootcampPTW Rails Bootcamp
PTW Rails BootcampMat Schaffer
 
Building web framework with Rack
Building web framework with RackBuilding web framework with Rack
Building web framework with Rack
sickill
 
Phoenix for Rails Devs
Phoenix for Rails DevsPhoenix for Rails Devs
Phoenix for Rails Devs
Diacode
 
RoR 101: Session 3
RoR 101: Session 3RoR 101: Session 3
RoR 101: Session 3
Rory Gianni
 
wwc start-launched
wwc start-launchedwwc start-launched
wwc start-launchedMat Schaffer
 
Les nouveautés de Rails 3
Les nouveautés de Rails 3Les nouveautés de Rails 3
Les nouveautés de Rails 3
LINAGORA
 
Be happy with Ruby on Rails - CEUNSP Itu
Be happy with Ruby on Rails - CEUNSP ItuBe happy with Ruby on Rails - CEUNSP Itu
Be happy with Ruby on Rails - CEUNSP Itu
Lucas Renan
 
Rails 3 Beautiful Code
Rails 3 Beautiful CodeRails 3 Beautiful Code
Rails 3 Beautiful Code
GreggPollack
 
Torquebox OSCON Java 2011
Torquebox OSCON Java 2011Torquebox OSCON Java 2011
Torquebox OSCON Java 2011tobiascrawley
 
Profiling Ruby
Profiling RubyProfiling Ruby
Profiling Ruby
Ian Pointer
 

Similar to O que vem por aí com Rails 3 (20)

Introduction to Rails - presented by Arman Ortega
Introduction to Rails - presented by Arman OrtegaIntroduction to Rails - presented by Arman Ortega
Introduction to Rails - presented by Arman Ortega
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
 
Connecting the Worlds of Java and Ruby with JRuby
Connecting the Worlds of Java and Ruby with JRubyConnecting the Worlds of Java and Ruby with JRuby
Connecting the Worlds of Java and Ruby with JRuby
 
RoR 101: Session 1
RoR 101: Session 1RoR 101: Session 1
RoR 101: Session 1
 
Introduction to service discovery and self-organizing cluster orchestration. ...
Introduction to service discovery and self-organizing cluster orchestration. ...Introduction to service discovery and self-organizing cluster orchestration. ...
Introduction to service discovery and self-organizing cluster orchestration. ...
 
Isomorphic App Development with Ruby and Volt - Rubyconf2014
Isomorphic App Development with Ruby and Volt - Rubyconf2014Isomorphic App Development with Ruby and Volt - Rubyconf2014
Isomorphic App Development with Ruby and Volt - Rubyconf2014
 
20120121 rbc rails_routing
20120121 rbc rails_routing20120121 rbc rails_routing
20120121 rbc rails_routing
 
JRuby + Rails = Awesome Java Web Framework at Jfokus 2011
JRuby + Rails = Awesome Java Web Framework at Jfokus 2011JRuby + Rails = Awesome Java Web Framework at Jfokus 2011
JRuby + Rails = Awesome Java Web Framework at Jfokus 2011
 
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
 
Curso rails
Curso railsCurso rails
Curso rails
 
PTW Rails Bootcamp
PTW Rails BootcampPTW Rails Bootcamp
PTW Rails Bootcamp
 
Building web framework with Rack
Building web framework with RackBuilding web framework with Rack
Building web framework with Rack
 
Phoenix for Rails Devs
Phoenix for Rails DevsPhoenix for Rails Devs
Phoenix for Rails Devs
 
RoR 101: Session 3
RoR 101: Session 3RoR 101: Session 3
RoR 101: Session 3
 
wwc start-launched
wwc start-launchedwwc start-launched
wwc start-launched
 
Les nouveautés de Rails 3
Les nouveautés de Rails 3Les nouveautés de Rails 3
Les nouveautés de Rails 3
 
Be happy with Ruby on Rails - CEUNSP Itu
Be happy with Ruby on Rails - CEUNSP ItuBe happy with Ruby on Rails - CEUNSP Itu
Be happy with Ruby on Rails - CEUNSP Itu
 
Rails 3 Beautiful Code
Rails 3 Beautiful CodeRails 3 Beautiful Code
Rails 3 Beautiful Code
 
Torquebox OSCON Java 2011
Torquebox OSCON Java 2011Torquebox OSCON Java 2011
Torquebox OSCON Java 2011
 
Profiling Ruby
Profiling RubyProfiling Ruby
Profiling Ruby
 

More from Frevo on Rails

Ruby e o Mundo Mágico dos Unicórnios
Ruby e o Mundo Mágico dos UnicórniosRuby e o Mundo Mágico dos Unicórnios
Ruby e o Mundo Mágico dos UnicórniosFrevo on Rails
 
As aventuras psicodélicas de Guilherme no mundo open source
As aventuras psicodélicas de Guilherme no mundo open sourceAs aventuras psicodélicas de Guilherme no mundo open source
As aventuras psicodélicas de Guilherme no mundo open sourceFrevo on Rails
 
Introducao a Ruby on Rails
Introducao a Ruby on RailsIntroducao a Ruby on Rails
Introducao a Ruby on RailsFrevo on Rails
 
Apresentacao institucional Frevo on Rails
Apresentacao institucional Frevo on RailsApresentacao institucional Frevo on Rails
Apresentacao institucional Frevo on RailsFrevo on Rails
 
Programação GUI com jRuby
Programação GUI com jRubyProgramação GUI com jRuby
Programação GUI com jRubyFrevo on Rails
 
WebApps minimalistas com Sinatra
WebApps minimalistas com SinatraWebApps minimalistas com Sinatra
WebApps minimalistas com Sinatra
Frevo on Rails
 
The elements of User Experience
The elements of User ExperienceThe elements of User Experience
The elements of User ExperienceFrevo on Rails
 
Crash Course Ruby & Rails
Crash Course Ruby & RailsCrash Course Ruby & Rails
Crash Course Ruby & Rails
Frevo on Rails
 
jcheck: validações client-side sem dores
jcheck: validações client-side sem doresjcheck: validações client-side sem dores
jcheck: validações client-side sem dores
Frevo on Rails
 
Ruby (nem tão) Básico
Ruby (nem tão) BásicoRuby (nem tão) Básico
Ruby (nem tão) Básico
Frevo on Rails
 
Perfil da Comunidade
Perfil da ComunidadePerfil da Comunidade
Perfil da Comunidade
Frevo on Rails
 
Resolvendo problemas de dependências com o Bundler
Resolvendo problemas de dependências com o BundlerResolvendo problemas de dependências com o Bundler
Resolvendo problemas de dependências com o Bundler
Frevo on Rails
 
Regras do Coding Dojo
Regras do Coding DojoRegras do Coding Dojo
Regras do Coding Dojo
Frevo on Rails
 

More from Frevo on Rails (16)

Ruby e o Mundo Mágico dos Unicórnios
Ruby e o Mundo Mágico dos UnicórniosRuby e o Mundo Mágico dos Unicórnios
Ruby e o Mundo Mágico dos Unicórnios
 
As aventuras psicodélicas de Guilherme no mundo open source
As aventuras psicodélicas de Guilherme no mundo open sourceAs aventuras psicodélicas de Guilherme no mundo open source
As aventuras psicodélicas de Guilherme no mundo open source
 
Introducao a Ruby on Rails
Introducao a Ruby on RailsIntroducao a Ruby on Rails
Introducao a Ruby on Rails
 
Event machine
Event machineEvent machine
Event machine
 
Apresentacao institucional Frevo on Rails
Apresentacao institucional Frevo on RailsApresentacao institucional Frevo on Rails
Apresentacao institucional Frevo on Rails
 
Programação GUI com jRuby
Programação GUI com jRubyProgramação GUI com jRuby
Programação GUI com jRuby
 
awesome_nested_fields
awesome_nested_fieldsawesome_nested_fields
awesome_nested_fields
 
WebApps minimalistas com Sinatra
WebApps minimalistas com SinatraWebApps minimalistas com Sinatra
WebApps minimalistas com Sinatra
 
The elements of User Experience
The elements of User ExperienceThe elements of User Experience
The elements of User Experience
 
Crash Course Ruby & Rails
Crash Course Ruby & RailsCrash Course Ruby & Rails
Crash Course Ruby & Rails
 
jcheck: validações client-side sem dores
jcheck: validações client-side sem doresjcheck: validações client-side sem dores
jcheck: validações client-side sem dores
 
Ruby (nem tão) Básico
Ruby (nem tão) BásicoRuby (nem tão) Básico
Ruby (nem tão) Básico
 
Perfil da Comunidade
Perfil da ComunidadePerfil da Comunidade
Perfil da Comunidade
 
Resolvendo problemas de dependências com o Bundler
Resolvendo problemas de dependências com o BundlerResolvendo problemas de dependências com o Bundler
Resolvendo problemas de dependências com o Bundler
 
Introdução a Ruby
Introdução a RubyIntrodução a Ruby
Introdução a Ruby
 
Regras do Coding Dojo
Regras do Coding DojoRegras do Coding Dojo
Regras do Coding Dojo
 

Recently uploaded

The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 

Recently uploaded (20)

The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 

O que vem por aí com Rails 3