Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rails 4: Appetizers
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Jesse Wolgamott
July 09, 2013
Programming
1
1k
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
140
What is an API
jwo
0
200
DIY Rails Authentication
jwo
0
230
ActionCable - For Not Another Chat App
jwo
3
1.8k
SlackBot.rb - Create You a Slack Bot
jwo
1
1.4k
react-rails: an isomorphic match made in heaven
jwo
0
1.4k
Docker - next big thing
jwo
0
1k
Ruby 2.1 Overview
jwo
0
1k
The Long Ball: Upgrading Rails from 1.2 -> 4.0
jwo
2
210
Other Decks in Programming
See All in Programming
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
210
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
330
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
210
ご飯食べながらエージェントが開発できる。そう、Agentic Engineeringならね。
yokomachi
1
290
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
310
2026年は Rust 置き換えが流行る! / 20260220-niigata-5min-tech
girigiribauer
0
220
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
530
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
460
2026/02/04 AIキャラクター人格の実装論 口 調の模倣から、コンテキスト制御による 『思想』と『行動』の創発へ
sr2mg4
0
700
Railsの気持ちを考えながらコントローラとビューを整頓する/tidying-rails-controllers-and-views-as-rails-think
moro
4
380
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
360
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
106
240k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.3k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
180
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
890
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
400
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
150
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
280
How GitHub (no longer) Works
holman
316
140k
Skip the Path - Find Your Career Trail
mkilby
1
72
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