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
DevTalks Bucharest 2015 - A Credit Card Walks i...
Search
Cristiano Betta
June 11, 2015
Technology
0
520
DevTalks Bucharest 2015 - A Credit Card Walks into a Bar...
My talk from DevTalks Bucharest 2015
Cristiano Betta
June 11, 2015
Tweet
Share
More Decks by Cristiano Betta
See All by Cristiano Betta
Docs as Engineering - DevRelCon London 2019
cbetta
0
140
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
130
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
270
The 7 Deadly Sins of Developer Experience (DevRelCon Tokyo)
cbetta
0
4k
The State of Encryption
cbetta
0
340
Developer Experience Workshop
cbetta
1
570
The 7 Deadly Sins of Developer Onboarding
cbetta
0
180
A brick by brick guide to developer experience
cbetta
2
620
Hackathons Workshop
cbetta
0
270
Other Decks in Technology
See All in Technology
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
260
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
6
2.8k
脳波を用いた嗜好マッチングシステム
hokkey621
0
290
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
390
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
nrinetcom
PRO
2
120
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.2k
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
110
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
200
OPENLOGI Company Profile for engineer
hr01
1
20k
What's new in Go 1.24?
ciarana
1
110
ESXi で仮想化した ARM 環境で LLM を動作させてみるぞ
unnowataru
0
180
手を動かしてレベルアップしよう!
maruto
0
220
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Facilitating Awesome Meetings
lara
52
6.2k
A designer walks into a library…
pauljervisheath
205
24k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Site-Speed That Sticks
csswizardry
4
410
Building an army of robots
kneath
303
45k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
RailsConf 2023
tenderlove
29
1k
We Have a Design System, Now What?
morganepeng
51
7.4k
Practical Orchestrator
shlominoach
186
10k
Transcript
@cbetta @braintree_dev A Credit Card Walks into a Bar... by
Cristiano Betta 1 Developer Advocate @braintree_dev A talk on credit cards in eCommerce
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
A talk on credit cards in eCommerce
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
A talk on credit cards in eCommerce A series of bad jokes Developer Advocate @braintree_dev by Cristiano Betta
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev A Credit Card Walks into a Bar...
@cbetta @braintree_dev he says to the bartender, “I’ve been having
a hard time meeting people” the bartender says: “Wait, aren’t you supposed to be good at generating...”
@cbetta @braintree_dev “interest”
@cbetta @braintree_dev THANK YOU!
@cbetta @braintree_dev I <3 U Bucharest
@cbetta @braintree_dev A Credit Card Walks into a Bar_
@cbetta @braintree_dev I have a Cat
@cbetta @braintree_dev Who has a “special” condition
@cbetta @braintree_dev 14
@cbetta @braintree_dev But he thinks he is the king of
the house
@cbetta @braintree_dev
@cbetta @braintree_dev Actually he has a kidney condition
@cbetta @braintree_dev People always want to see more photos and
videos
@cbetta @braintree_dev especially kids
@cbetta @braintree_dev so...
@cbetta @braintree_dev I wrote an application that...
@cbetta @braintree_dev charges people money to see his face
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev I know what you are thinking...
@cbetta @braintree_dev I am an a**hole
@cbetta @braintree_dev I am actually raising money for his kidney
surgery
@cbetta @braintree_dev I promise!
@cbetta @braintree_dev
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
@cbetta @braintree_dev the bartender says, “Why do you keep coming
in here day after day ?” The credit card form looks at him miserably says “I’m just looking for some..."
@cbetta @braintree_dev “validation”
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev Things people should not do when building a
Credit Card Form
@cbetta @braintree_dev Things I think you should not do when
building a Credit Card Form
@cbetta @braintree_dev
@cbetta @braintree_dev baymard.com/lists/cart-abandonment-rate
@cbetta @braintree_dev 1.
@cbetta @braintree_dev Add a CAPTCHA
@cbetta @braintree_dev CAPTCHA Completely Automated Public Turing test to tell
Computers and Humans Apart
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev CAPTCHA Completely Automated Public Turing test to tell
Computers and Humans Apart
@cbetta @braintree_dev CAPTCHA Completely Automated Process That Causes Headaches and
Anger
@cbetta @braintree_dev 2.
@cbetta @braintree_dev Ask users to register
@cbetta @braintree_dev Ask users to register ...before purchasing
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
@cbetta @braintree_dev the bartender says, “I haven’t seen you in
a while!” The credit card form looks at him and says “Yeah, I had to go to jail. I was...”
@cbetta @braintree_dev “Charged with bad humour"
@cbetta @braintree_dev 3.
@cbetta @braintree_dev Ask me for the credit card type?
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev * totally copied from Wikipedia
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev jquerycreditcardvalidator.com
@cbetta @braintree_dev
@cbetta @braintree_dev creditcardjs.com
@cbetta @braintree_dev
@cbetta @braintree_dev I <3 Braintree
@cbetta @braintree_dev obviously...
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev github.com/braintree/card-validator
@cbetta @braintree_dev
@cbetta @braintree_dev 4.
@cbetta @braintree_dev C.V.Who?
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev jessepollak.github.io/card
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev kenkeiter.com/skeuocard
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev Hosted Fields
@cbetta @braintree_dev braintreepayments.com/features/hosted-fields
@cbetta @braintree_dev
@cbetta @braintree_dev 5.
@cbetta @braintree_dev You don’t format dates as they are on
my card
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 6.
@cbetta @braintree_dev 6.
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
@cbetta @braintree_dev he tries to pick up someone at the
bar, They turn him down. The credit card form looks at the bartender and says “Well, this is awkward normally I’m the one who..."
@cbetta @braintree_dev “Declines”
@cbetta @braintree_dev 6.
@cbetta @braintree_dev You don’t validate my card number inline
@cbetta @braintree_dev Luhn Algorithm
@cbetta @braintree_dev 4217 6511 1111 1119
@cbetta @braintree_dev 4217 6511 1111 1119 9111 1111 1156 7124
@cbetta @braintree_dev 4217 6511 1111 1119 9111 1111 1156 7124
9212 1212 1213 7228
@cbetta @braintree_dev 14 + 6 + 11 + 19 =
50 4217 6511 1111 1119 9111 1111 1156 7124 9212 1212 1253 7228
@cbetta @braintree_dev 50 % 10 == 0 ? 4217 6511
1111 1119 14 + 6 + 11 + 19 = 50 9111 1111 1156 7124 9212 1212 1253 7228
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 7.
@cbetta @braintree_dev 7.
@cbetta @braintree_dev 6b.
@cbetta @braintree_dev You don’t know your limits!
@cbetta @braintree_dev Card! Number of Digits! AMEX! 15! Visa! 13
or 16! MasterCard! 16! Discover! 16!
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 7.
@cbetta @braintree_dev You don’t remember me
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 8.
@cbetta @braintree_dev You remember too much
@cbetta @braintree_dev And then you lose my details!
@cbetta @braintree_dev 2014 Home Depot 56M JP Morgan Chase 76M
Staples 1.6M
@cbetta @braintree_dev Tokenization
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev One more joke?
@cbetta @braintree_dev A Credit Card Form Walks into a Bar...
@cbetta @braintree_dev the bartender says, “You are new to this
joint aren’t you?” The credit card form looks at him and says “Yeah, I just..."
@cbetta @braintree_dev “Discovered it”
@cbetta @braintree_dev
@cbetta @braintree_dev 9.
@cbetta @braintree_dev You have a “reset” button
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev 10.
@cbetta @braintree_dev Where was I again?
@cbetta @braintree_dev
@cbetta @braintree_dev
@cbetta @braintree_dev That’s all folks!
@cbetta @braintree_dev Encore?
@cbetta @braintree_dev An American Express Walks into a Bar in
Moscow...
@cbetta @braintree_dev the bartender says, “Sorry mate, You aren’t allowed
in here without a...”
@cbetta @braintree_dev “VISA”
@cbetta @braintree_dev
@cbetta @braintree_dev baddonationforms.tumblr.com
@cbetta @braintree_dev THANK YOU!
@cbetta @braintree_dev Cristiano Betta Developer Advocate Braintree_PayPal. cbetta@paypal.com slideshare.net/cbetta braintreepayments.com
@braintree_dev @cbetta