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
Jesse Wolgamott
July 09, 2013
Programming
1.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rails 4: Appetizers
Features in Rails 4.0 -- presented at @houstonrb
Jesse Wolgamott
July 09, 2013
More Decks by Jesse Wolgamott
See All by Jesse Wolgamott
React vs React-Native
jwo
0
150
What is an API
jwo
0
220
DIY Rails Authentication
jwo
0
240
ActionCable - For Not Another Chat App
jwo
3
1.8k
SlackBot.rb - Create You a Slack Bot
jwo
1
1.5k
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
1.1k
The Long Ball: Upgrading Rails from 1.2 -> 4.0
jwo
2
220
Other Decks in Programming
See All in Programming
共通化で考えるべきは、実装より公開する型だった
codeegg
0
240
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
120
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
170
AIエージェントで 変わるAndroid開発環境
takahirom
2
660
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
320
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
2.6k
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.9k
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
570
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
100
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
140
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
180
Foundation Models frameworkで画像分析
ryodeveloper
1
120
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
390
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.6k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
420
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Agile that works and the tools we love
rasmusluckow
331
22k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
150
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
490
Site-Speed That Sticks
csswizardry
13
1.3k
A Tale of Four Properties
chriscoyier
163
24k
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