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
230
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
1
350
[Kaigi] Beware the Dead End
schneems
0
150
Threads Aren't Evil
schneems
0
600
Bayes is BAE
schneems
0
3.6k
Testing the Untestable
schneems
1
800
SLOMO
schneems
2
1.1k
Saving Sprockets
schneems
8
17k
Memory Leaks, Tweaks, and Techniques
schneems
1
200
Speed Science
schneems
20
37k
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
380
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
9.1k
React Nativeならぬ"Vue Native"が実現するかも?_新世代マルチプラットフォーム開発フレームワークのLynxとLynxのVue.js対応を追ってみよう_Vue Lynx
yut0naga1_fa
2
1.9k
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
220
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.6k
AI Agent 時代的開發者生存指南
eddie
4
2.2k
モテるデスク環境
mozumasu
3
1.4k
Webサーバーサイド言語としてのRustについて
kouyuume
1
5k
ボトムアップの生成AI活用を推進する社内AIエージェント開発
aku11i
0
460
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
1.7k
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
1.3k
Towards Transactional Buffering of CDC Events @ Flink Forward 2025 Barcelona Spain
hpgrahsl
0
120
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Visualization
eitanlees
150
16k
Facilitating Awesome Meetings
lara
57
6.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Embracing the Ebb and Flow
colly
88
4.9k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Music & Morning Musume
bryan
46
6.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Balancing Empowerment & Direction
lara
5
700
The Cost Of JavaScript in 2023
addyosmani
55
9.1k
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