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
5 Favorite Gems
Search
Dan Pickett
February 06, 2013
Technology
2
69
5 Favorite Gems
A lightning talk delivered to the February BostonRB project night.
Dan Pickett
February 06, 2013
Tweet
Share
More Decks by Dan Pickett
See All by Dan Pickett
The Rails Engine That Could
dpickett
2
590
Introduction to JavaScript and JQuery
dpickett
2
180
Other Decks in Technology
See All in Technology
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.1k
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
230
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
590
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.8k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
1.1k
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
450
配列に見る bash と zsh の違い
kazzpapa3
1
150
Digitization部 紹介資料
sansan33
PRO
1
6.8k
AI駆動開発を事業のコアに置く
tasukuonizawa
1
200
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
570
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
130
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
210
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
Building Adaptive Systems
keathley
44
2.9k
A designer walks into a library…
pauljervisheath
210
24k
The agentic SEO stack - context over prompts
schlessera
0
640
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
Navigating Weather and Climate Data
rabernat
0
110
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
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