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
590
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
150
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
140
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
330
The 7 Deadly Sins of Developer Experience (DevRelCon Tokyo)
cbetta
0
4.1k
The State of Encryption
cbetta
0
370
Developer Experience Workshop
cbetta
1
590
The 7 Deadly Sins of Developer Onboarding
cbetta
0
190
A brick by brick guide to developer experience
cbetta
2
640
Hackathons Workshop
cbetta
0
310
Other Decks in Technology
See All in Technology
LLM開発を支えるエヌビディアの生成AIエコシステム
acceleratedmu3n
0
350
「手を動かした者だけが世界を変える」ソフトウェア開発だけではない開発者人生
onishi
15
7.9k
Tableau API連携の罠!?脱スプシを夢見たはずが、逆に依存を深めた話
cuebic9bic
2
160
Wasmで社内ツールを作って配布しよう
askua
0
160
大規模組織にAIエージェントを迅速に導入するためのセキュリティの勘所 / AI agents for large-scale organizations
i35_267
6
360
Perlアプリケーションで トレースを実装するまでの 工夫と苦労話
masayoshi
0
240
データエンジニアがクラシルでやりたいことの現在地
gappy50
3
780
メモ整理が苦手な者による頑張らないObsidian活用術
optim
1
160
MCPに潜むセキュリティリスクを考えてみる
milix_m
1
920
Jitera Company Deck / JP
jitera
0
310
AI時代の経営、Bet AI Vision #BetAIDay
layerx
PRO
0
210
Gemini in Android Studio - Google I/O Bangkok '25
akexorcist
0
100
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
What's in a price? How to price your products and services
michaelherold
246
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The Pragmatic Product Professional
lauravandoore
35
6.8k
Writing Fast Ruby
sferik
628
62k
The Language of Interfaces
destraynor
158
25k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Producing Creativity
orderedlist
PRO
346
40k
The Invisible Side of Design
smashingmag
301
51k
Building Adaptive Systems
keathley
43
2.7k
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