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
Richard Schneeman
April 25, 2012
Programming
3
220
Wizards: From WTF to Wicked
A lightning talk I gave at RailsConf about Wicked
http://github.com/schneems/wicked
Richard Schneeman
April 25, 2012
Tweet
Share
More Decks by Richard Schneeman
See All by Richard Schneeman
[RubyConf] Beware the Dreaded Dead End
schneems
0
220
[Kaigi] Beware the Dead End
schneems
0
75
Threads Aren't Evil
schneems
0
350
Bayes is BAE
schneems
0
2.8k
Testing the Untestable
schneems
1
450
SLOMO
schneems
2
690
Saving Sprockets
schneems
8
16k
Memory Leaks, Tweaks, and Techniques
schneems
1
140
Speed Science
schneems
20
34k
Other Decks in Programming
See All in Programming
incrementalモデルの理解を深める
ikkimiyazaki
2
630
コミュニティに参加したことで起きた変化
ohmori_yusuke
3
130
決断するための勇気、そのためのBacklog / Courage to make decisions, Backlog for that.
seike460
PRO
4
1.9k
オブジェクト指向は必要なのか / Is object-oriented needed?
kishida
27
18k
RubyVM を PHP で実装する 〜Hello World を出力するまで〜
memory1994
PRO
1
490
自動テスト実行結果の目的を整理する / Organizing objectives of automated test results
twada
PRO
10
2.1k
孤独のCTOグルメという やや奇抜な企画をやった目的と効果
shoheimitani
3
1k
クソコード動画『カプセル化 Mk-II』 で考える 上手くカプセル化できない理由 / encapsulation2
minodriven
11
7.1k
どうしてこうなった命名集 ~🔥編~ / OOC 2024 LT
pictiny
4
2.7k
ここ1~2年くらいで 使えるようになった(主要ブラウザーの最新版 がすべて対応した ) ウェブの新機能について ランダムに喋る!
myzkyy
9
6.4k
PHPでOfficeファイルを取り扱う! PHP Officeライブラリを プロダクトに組み込んだ話
hirobe1999
0
830
object-oriented-conference-2024
fuwasegu
6
1.4k
Featured
See All Featured
How GitHub Uses GitHub to Build GitHub
holman
467
290k
The World Runs on Bad Software
bkeepers
PRO
60
6.6k
Principles of Awesome APIs and How to Build Them.
keavy
119
16k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
113
18k
YesSQL, Process and Tooling at Scale
rocio
160
13k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
5
1.4k
A Modern Web Designer's Workflow
chriscoyier
689
190k
Pencils Down: Stop Designing & Start Developing
hursman
115
11k
Adopting Sorbet at Scale
ufuk
66
8.5k
Infographics Made Easy
chrislema
237
18k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
8
8.2k
Fireside Chat
paigeccino
19
2.6k
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