Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
5 Favorite Gems
Search
Dan Pickett
February 06, 2013
Technology
77
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
5 Favorite Gems
A lightning talk delivered to the February BostonRB project night.
Dan Pickett
February 06, 2013
More Decks by Dan Pickett
See All by Dan Pickett
The Rails Engine That Could
dpickett
2
610
Introduction to JavaScript and JQuery
dpickett
2
190
Other Decks in Technology
See All in Technology
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
0
390
SREへの勘違いに気づいた後の話
tomodakengo
0
120
AIエージェントの一手は 誰も見ていない - Falco拡張OSS「Prempti」とeBPFで サーバーレス実行基盤を二層防御する
keitah
0
440
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
270
銀行勘定系システムにおける開発プロセス刷新×AIによる環境モダナイゼーション / Development Process Transformation and AI-Driven Environment Modernization
muit
1
2.5k
aws-iot-platform-architecture-use-cases.pdf
ma2shita
0
470
What the customer really needed
kawaguti
PRO
3
220
30座EKS, 180次升級淬煉的EKS Upgrade Skill 的歷程
eric8230
0
210
2026-09-08 そのJavaモダナイゼーション、AIに丸投げで大丈夫?IBM Bobで変わる品質と効率
yutanonaka
1
120
AIに任せた品質は、誰が見立てるのか - AI時代のテストマネジメント
nakanao
3
2.7k
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
9
4.9k
2026_devsumi_ozono.pdf
o3
3
550
Featured
See All Featured
WENDY [Excerpt]
tessaabrams
14
39k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Designing for Performance
lara
611
70k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
900
sira's awesome portfolio website redesign presentation
elsirapls
0
420
KATA
mclloyd
PRO
35
15k
Marketing to machines
jonoalderson
1
5.8k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
280
So, you think you're a good person
axbom
PRO
2
2.2k
Navigating Team Friction
lara
192
16k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Making Projects Easy
brettharned
120
6.8k
Transcript
Custom Software, Simplified 5 Awesome Gems ...and some fun with
MemeGenerator Wednesday, February 6, 13
Custom Software, Simplified Hi! • I’m Dan • Co-Organizer @
BostonRB • Principal Consultant @ LaunchWare • Head of Instruction @ Launch Academy • dpickett on Twitter / GitHub/ everyHub Wednesday, February 6, 13
Custom Software, Simplified Some Favorites • inherited_resources • kaminari •
guard • configatron • bourbon Wednesday, February 6, 13
Custom Software, Simplified Inherited Resources Wednesday, February 6, 13
Custom Software, Simplified Why? • Makes writing boilerplate controllers easier
• Easy internationalization of flash text with the Responders gem • Easy API generation for JSON and XML Wednesday, February 6, 13
Custom Software, Simplified Why Not? • Another DSL/Library to Learn
• Can sometimes get in your way for nonstandard controller actions • Not good for beginners - feel the pain of repetition in your controllers, first Wednesday, February 6, 13
Custom Software, Simplified class AccountsController < ApplicationController respond_to :json
inherit_resources #gives you all RESTful actions for Account end Wednesday, February 6, 13
Custom Software, Simplified Kaminari Wednesday, February 6, 13
Custom Software, Simplified Why? • Easily customizable/themed • great configuration
options • awesome generators • Scope-Based • Doesn’t hack core objects • I18n ready for localization Wednesday, February 6, 13
Custom Software, Simplified Why Not? • Other engines might express
alternative decisions (refinery, ie) • Can be painful to paginate non-scope/ AREL collections Wednesday, February 6, 13
Custom Software, Simplified #in your controller @users = User.
page(params[:page]). per(50) #in your view <%= paginate @users %> Wednesday, February 6, 13
Custom Software, Simplified guard Wednesday, February 6, 13
Custom Software, Simplified Why? • Don’t constantly have to run
tests manually • Invokes tests for files that change • Extensible plugin architecture • Extensible notification architecture Wednesday, February 6, 13
Custom Software, Simplified Why Not? • Minor issue where guard
plugins can lag behind on dependencies Wednesday, February 6, 13
Custom Software, Simplified Configatron Wednesday, February 6, 13
Custom Software, Simplified Why? • Easy, dynamic configuration for gems
and applications • Configure via manual code, hash or YAML • Plays nicely with Rails Application configuration Wednesday, February 6, 13
Custom Software, Simplified Why Not? • nulls vs. blanks can
be confusing Wednesday, February 6, 13
Custom Software, Simplified module Facebook def self.secret_key=(key)
configatron.facebook.secret_key = key end def self.secret_key configatron.facebook.secret_key end end Wednesday, February 6, 13
Custom Software, Simplified Bourbon Wednesday, February 6, 13
Custom Software, Simplified Why? • Handy shortcuts for common CSS
idioms • Beautiful documentation • Exposes you to lots of great/creative CSS uses Wednesday, February 6, 13
Custom Software, Simplified Why Not? • Can be difficult to
install/configure as part of the asset pipeline • You still need to be an informed consumer of experimental CSS features Wednesday, February 6, 13
Custom Software, Simplified http://bourbon.io Wednesday, February 6, 13
Custom Software, Simplified To Learn More... http://launchacademy.co The Fun Begins
May 1st Wednesday, February 6, 13
Custom Software, Simplified For More Gems... • Ignition, our rails
template is available • http://github.com/LaunchWare/ignition Wednesday, February 6, 13
Custom Software, Simplified Questions? Wednesday, February 6, 13