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
Wizards: From WTF to Wicked
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Richard Schneeman
April 25, 2012
Programming
240
3
Share
Wizards: From WTF to Wicked
A lightning talk I gave at RailsConf about Wicked
http://github.com/schneems/wicked
Richard Schneeman
April 25, 2012
More Decks by Richard Schneeman
See All by Richard Schneeman
[RubyConf] Beware the Dreaded Dead End
schneems
1
390
[Kaigi] Beware the Dead End
schneems
0
200
Threads Aren't Evil
schneems
0
630
Bayes is BAE
schneems
0
4k
Testing the Untestable
schneems
1
940
SLOMO
schneems
2
1.3k
Saving Sprockets
schneems
8
17k
Memory Leaks, Tweaks, and Techniques
schneems
1
240
Speed Science
schneems
20
37k
Other Decks in Programming
See All in Programming
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
3
850
Sans tests, vos agents ne sont pas fiables
nabondance
0
130
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
140
KMP × Kotlin 2.3 - How Android Got Slower While iOS Builds Improved by 47%
rio432
0
200
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
1.3k
継続的な負荷検証を目指して
pyama86
3
1.2k
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
190
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
1
150
cloudnative conference 2026 flyle
azihsoyn
1
190
Lightning-Fast Method Calls with Ruby 4.1 ZJIT / RubyKaigi 2026
k0kubun
3
3.1k
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
510
〜バイブコーディングを超えて〜 チームで実験し続けたAI駆動開発
tigertora7571
0
210
Featured
See All Featured
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
510
SEO for Brand Visibility & Recognition
aleyda
0
4.5k
Believing is Seeing
oripsolob
1
130
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
190
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
210
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
120
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
KATA
mclloyd
PRO
35
15k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
Color Theory Basics | Prateek | Gurzu
gurzu
0
310
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Transcript
Wizards: From WTF to Wicked Richard Schneeman @schneems works for
@heroku ‘ ‘
Step By Step Wizards
verywhere
Step 1
Step 2
Step 3
The WTF
class Web::Users::SignupFlowController < Web:: before_filter :ensure_authenticated ## FLOW # ############################################
# signed up with facebook => :confirm # signed up with form => :find_friends ############################################
None
W
T
F
None
What if Everything
None
You ever wanted
None
(about step-by-step w izards)
Came
In
a
RUBY GEM
Introducing
Wicked ‘ ‘
Wicked ‘ ‘ rocket edition
include Wicked::Wizard
zOMG So Cool
steps :add_zip, :add_twitter
/views /after_register /add_zip.html.erb /add_twiter.html.erb
render_wizard
steps :add_zip, :add_twitter def show @user = current_user render_wizard end
def update @user = current_user @user.update_attributes(params[:user]) render_wizard @user end
class AfterRegisterController < ApplicationCon include Wicked::Wizard steps :add_zip, :add_twitter def
show @user = current_user render_wizard end def update @user = current_user @user.update_attributes(params[:user]) render_wizard @user end end
It’s a state machine!!
Wicked ‘ ‘ by @schneems Use