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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
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
バクラクのSREにおけるAgentic AIへの挑戦/Our Journey with Agentic AI
taddy_919
2
1.1k
OpenClawで回す組織運営
jacopen
3
640
DX Improvement at Scale
ntk1000
3
400
クラウド × シリコンの Mashup - AWS チップ開発で広がる AI 基盤の選択肢
htokoyo
2
110
男(監査)はつらいよ - Policy as CodeからAIエージェントへ
ken5scal
5
780
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
4
770
Datadog の RBAC のすべて
nulabinc
PRO
3
350
【SLO】"多様な期待値" と向き合ってみた
z63d
2
320
us-east-1 に障害が起きた時に、 ap-northeast-1 にどんな影響があるか 説明できるようになろう!
miu_crescent
PRO
13
4k
AWS DevOps Agent vs SRE俺 / AWS DevOps Agent vs me, the SRE
sms_tech
3
430
Claude Code Skills 勉強会 (DevelersIO向けに調整済み) / claude code skills for devio
masahirokawahara
0
470
オレ達はAWS管理をやりたいんじゃない!開発の生産性を爆アゲしたいんだ!!
wkm2
4
430
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
450
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
96
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
150
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Producing Creativity
orderedlist
PRO
348
40k
Mobile First: as difficult as doing things right
swwweet
225
10k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.4k
A Soul's Torment
seathinner
5
2.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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