Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rails 4: Appetizers
Search
Jesse Wolgamott
July 09, 2013
Programming
1
990
Rails 4: Appetizers
Features in Rails 4.0 -- presented at @houstonrb
Jesse Wolgamott
July 09, 2013
Tweet
Share
More Decks by Jesse Wolgamott
See All by Jesse Wolgamott
React vs React-Native
jwo
0
130
What is an API
jwo
0
200
DIY Rails Authentication
jwo
0
210
ActionCable - For Not Another Chat App
jwo
3
1.7k
SlackBot.rb - Create You a Slack Bot
jwo
1
1.4k
react-rails: an isomorphic match made in heaven
jwo
0
1.3k
Docker - next big thing
jwo
0
960
Ruby 2.1 Overview
jwo
0
980
The Long Ball: Upgrading Rails from 1.2 -> 4.0
jwo
2
210
Other Decks in Programming
See All in Programming
分散DBって何者なんだ... Spannerから学ぶRDBとの違い
iwashi623
0
140
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
5
2.7k
社内オペレーション改善のためのTypeScript / TSKaigi Hokuriku 2025
dachi023
1
130
関数の挙動書き換える
takatofukui
4
750
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
310
Atomics APIを知る / Understanding Atomics API
ssssota
1
220
Feature Flags Suck! - KubeCon Atlanta 2025
phodgson
0
180
Micro Frontendsで築いた 共通基盤と運用の試行錯誤 / Building a Shared Platform with Micro Frontends: Operational Learnings
kyntk
1
1.6k
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
23
19k
Promise.tryで実現する新しいエラーハンドリング New error handling with Promise try
bicstone
3
1.7k
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
8
11k
Duke on CRaC with Jakarta EE
ivargrimstad
0
300
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Balancing Empowerment & Direction
lara
5
770
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
The Invisible Side of Design
smashingmag
302
51k
The Cult of Friendly URLs
andyhume
79
6.7k
Producing Creativity
orderedlist
PRO
348
40k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
We Have a Design System, Now What?
morganepeng
54
7.9k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The Pragmatic Product Professional
lauravandoore
36
7k
GitHub's CSS Performance
jonrohan
1032
470k
Transcript
Rails 4: Appetizers @jwo for @houstonrb Wednesday, July 10, 13
Rubies Ruby 1.9.3 at least, prefer 2.0 Rails 2.3 =>
End of Life Ruby 1.8.7 => End of Life Wednesday, July 10, 13
Bootup time faster on Ruby 2.0 with Rails 4 How
fast? Cray Cray Faster Wednesday, July 10, 13
Cache Digests Caches the view (partials) by the updated_at column
Wednesday, July 10, 13
Best if you have a upper-most site object. Example: Basecamp
has an upper-most Account object. Cache Digests Wednesday, July 10, 13
So: Add a Site object that has upper-most updated at.
Cache Digests Wednesday, July 10, 13
Will help with sidebar that does not directly belong to
a Post. Cache Digests Wednesday, July 10, 13
Uses JavaScript to pull only the <body> tag Turbolinks Wednesday,
July 10, 13
Speeds up document based sites Turbolinks Wednesday, July 10, 13
Most everybody should add jquery-turbolinks Turbolinks Wednesday, July 10, 13
Watch out for: Turbolinks Wednesday, July 10, 13
External javascript (stripe) Data tags on the body object things
in the `<head>` like `<script>` tags Tubolinks Wednesday, July 10, 13
Most everything, ever Wednesday, July 10, 13
Moves Mass Assignment protection to the controllers Strong Parameters Wednesday,
July 10, 13
you have to manually remove attr_accessible if upgrading Strong Parameters
Wednesday, July 10, 13
PostgreSQL Additions hstore: JSON store, attributes, better Single Table Inheritance
Wednesday, July 10, 13
PostgreSQL Additions Arrays: tagging, parent child ancestry Wednesday, July 10,
13
Arel Changes find_by_customer_id => lives! find(:all, conditions: ["customer_id = ?",
45]) => DEAD find(customer_id: 45) => new Wednesday, July 10, 13
Arel Changes find_or_create_by_customer_id() => dead find_or_create_by(customer_id: 45) => new! Wednesday,
July 10, 13
Arel Changes where(id: 45).first_or_create => new hotness .all => deprecated
Wednesday, July 10, 13
Scope Changes scope :future, where("created_at > ?", Time.now) => syntax
error Wednesday, July 10, 13
Scope Changes scope :future, → { where("created_at > ?", Time.now)
} Wednesday, July 10, 13
MultiThreaded It's on, baby! Wednesday, July 10, 13
Moved to Gems Observers ActiveRecord SessionStore ActiveResource LOL Action &
Page Caching Wednesday, July 10, 13
Test Directories test/unit => test/models test/functional => test/ controllers Wednesday,
July 10, 13
Misc Gemfile has no Assets section Concerns directory is prevalent
Wednesday, July 10, 13
Misc /bin shows up (binstubs) Plugins must be moved to
lib Wednesday, July 10, 13
Misc ActionController::Live => (not alot of attention) Patch verb in
REST Wednesday, July 10, 13
Misc before_filters are now before_action Wednesday, July 10, 13
Didn't Make it Queue API Async Mailers Wednesday, July 10,
13
get more information http:/ /blog.wyeworks.com/ Rails Conf 2013 Postgres, the
Best Tool You're Already Using Wednesday, July 10, 13
get more information http:/ /rails-upgrade- checklist.com http:/ /upgradingtorails4.com http:/ /upgradingrails.com
Wednesday, July 10, 13
Thanks! I’m @jwo Wednesday, July 10, 13