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
460
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
130
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
120
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
210
The 7 Deadly Sins of Developer Experience (DevRelCon Tokyo)
cbetta
0
3.9k
The State of Encryption
cbetta
0
320
Developer Experience Workshop
cbetta
1
550
The 7 Deadly Sins of Developer Onboarding
cbetta
0
180
A brick by brick guide to developer experience
cbetta
2
590
Hackathons Workshop
cbetta
0
250
Other Decks in Technology
See All in Technology
飲食店データの分析事例とそれを支えるデータ基盤
kimujun
0
220
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
600
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
950
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
140
Mastering Quickfix
daisuzu
1
330
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
29
13k
SDN の Hype Cycle を一通り経験してみて思うこと / Going through the Hype Cycle of SDN
mshindo
3
240
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
Application Development WG Intro at AppDeveloperCon
salaboy
0
210
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
1k
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.8k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Writing Fast Ruby
sferik
627
61k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
140
Building Your Own Lightsaber
phodgson
103
6.1k
Happy Clients
brianwarren
98
6.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Designing for Performance
lara
604
68k
Scaling GitHub
holman
458
140k
Practical Orchestrator
shlominoach
186
10k
Thoughts on Productivity
jonyablonski
67
4.3k
Raft: Consensus for Rubyists
vanstee
136
6.6k
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.
[email protected]
slideshare.net/cbetta braintreepayments.com
@braintree_dev @cbetta