clash of the titans
@billwscott on twitter
bill scott. sr. dir. user interface engineering @paypal
fluent plenary. may 30, 2013. san francisco.
releasing the kraken: nodejs @paypal
16 different test cells in the initial PS3 Launch (2010)
focus is on build/measure/learn
four distinct PS3 experiences launched on same day
typical netflix release
the epiphany
engineer for volatility. for change. for learning.
however, paypal circa 2011...
not invented here.
risk averse. culture
of long shelf life.
In 2011, even a simple
content copy change
could take as much as 6
weeks to get live to site
tangled up technology
one of the root problems
technology and processes
not suited for
• rapid experimentation
• build/measure/learn
existing stack wasn’t designed for experimentation
this new stack was not conducive
to prototyping
followed an “enterprise application”
model. ui gets built into the “server
app”
ajax/components all done server-
side (subclass java controller)!
java
(components)
jsp
proprietary uiprototyping
was hard
“ui bits” mostly
lived here
paypal vs netflix
new dna @paypal
january 2012
fleshed out ui layer that could support rapid
experimentation
march 2012
david Marcus becomes president of PayPal
april 2012
kick off of lean project using nodejs & dustjs
hermes project lean ux in action
from whiteboard to code from code to usability
learningsstart again
1st step: fire up a prototype stack (nodejs)
utilize opens source stack
express, connect, require.js
bring in javascript templating and other open source
ui goodness
node.js
ui bits
prototype
stack
2nd step: bootstrap with bootstrap
able to create a new branded look in a few hours
enabled sketch to code
node.js
ui bits
prototype
stack
3rd step: use javascript templating
text templates get compiled to
javascript
<p>Hello {name}</p>
dustjs templates execute wherever
there is javascript
templates = JS
{dust}
JavaScript
compiles to...
javascript is
evaluated
to render ui
4th step: make ui bits portable to legacy
JS templating can be run in client
browser or server on the production
stack
we can drag & drop the ui bits from
prototyping stack to the production
stack
rhinoscript enabled stack parity
java (rhinoscript)node.js
{dust}
JS template
prototype
stack
production
stack
{dust}
JS template
client OR
server
either stack
before
node &
leanux
after node
& leanux
5th step: bring node to production
project kraken
enable all of the standard paypal
services
but do it in a friendly npm way
monitoring, logging, security,
content, locale resolution, analytics,
authentication, dust rendering,
experimentation, packaging,
application framework, deployment,
session management, service access, etc.
CLI MVC framework/scaffolding. hello world in 1 minute
java (rhinoscript)
production
stack
{dust}
JS template
6th step: one stack to rule them all
node.js
{dust}
JS template
prototype
stack
6th step: one stack to rule them all
choose where
you want to
run the
templates
kraken
prototype &
production stack
client
server
contains “webcore” for
scaffolding and
providing a lightweight
framework for dev &
production
npm.paypal.com
bower.paypal.com
enables building in
standard components
& styles in less than a
minute
provides blessed set
of modules first. can
provide protection
from blacklist modules
modules for easy integration
github for CI/CD
start like walmart labs
use as an api server to proxy old services
and then retire them
or start like us, trello and others
use as a rapid prototyping stack
prove it out in a sandbox and then scale
do it in parallel and test till scales
do it with talent
ensure best developers are on the initial
work to set the standard
getting node
into your tent
I am hiring!
designing web interfaces
O’Reilly
picture credits
http://commons.wikimedia.org/wiki/File:Giant_octopus_attacks_ship.jpg
http://www.flickr.com/photos/therevsteve/3104267109/sizes/o/
http://www.flickr.com/photos/nicasaurusrex/3069602246/
http://www.flickr.com/photos/hongiiv/4151964823/
http://www.flickr.com/photos/untitlism/2603959306/
http://www.flickr.com/photos/stuckincustoms/2380543038/
follow me on twitter
@billwscott

More Related Content

PDF
Kicking Up the Dust with Node JS
PDF
bringing design to life with lean ux & lean engineering - Lean Day West 2013
PDF
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
PDF
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
PDF
Enabling Lean with Tech: lessons learned applying lean at paypal
PDF
Bringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - Australia
PDF
The Lean Tech Stack
PDF
Enabling Lean at Enterprise Scale: Lean Engineering in Action
Kicking Up the Dust with Node JS
bringing design to life with lean ux & lean engineering - Lean Day West 2013
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
Enabling Lean with Tech: lessons learned applying lean at paypal
Bringing Change to Life | YOW 2016 | Melbourne, Brisbane, Sydney - Australia
The Lean Tech Stack
Enabling Lean at Enterprise Scale: Lean Engineering in Action

What's hot (18)

PPTX
Andy Rachleff, Wealthfront Presentation at Lean Startup SXSW
PDF
Lean engineering for lean/balanced teams: lessons learned (and still learning...
PDF
Real World Lessons Using Lean UX (Workshop)
PDF
Effective DevOps:一場文化與技術的轉型運動
PDF
DevOpsDays Taipei 2017 Opening Talk
PDF
Oracle Code Brussels 2017 - The DevOps disaster
PDF
Digital Ocean Amsterdam meetup March 2017 - The DevOps disaster
PDF
Principles of Continuous Delivery and DevOps
PPTX
10 Reasons Your Software Sucks - Election 2012 Edition
PDF
Ci in jenkins with openSUSE
PPTX
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
PPTX
LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"
PPTX
DevOps without DevOps Tools
PPTX
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
PDF
Agile testing overview
PDF
Show an Open Source Project Some Love and Start Using Travis-CI
PDF
Intelli j idea-report
PDF
Day 2: Steve Krug Closing Keynote
Andy Rachleff, Wealthfront Presentation at Lean Startup SXSW
Lean engineering for lean/balanced teams: lessons learned (and still learning...
Real World Lessons Using Lean UX (Workshop)
Effective DevOps:一場文化與技術的轉型運動
DevOpsDays Taipei 2017 Opening Talk
Oracle Code Brussels 2017 - The DevOps disaster
Digital Ocean Amsterdam meetup March 2017 - The DevOps disaster
Principles of Continuous Delivery and DevOps
10 Reasons Your Software Sucks - Election 2012 Edition
Ci in jenkins with openSUSE
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"
DevOps without DevOps Tools
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
Agile testing overview
Show an Open Source Project Some Love and Start Using Travis-CI
Intelli j idea-report
Day 2: Steve Krug Closing Keynote
Ad

Viewers also liked (15)

PPTX
Integrate Paypal with Your Website the Easy Way
PDF
User-Centered Interaction Design
PPTX
PayPal Real Time Analytics
PDF
Lean Engineering: How to make Engineering a full Lean UX partner
KEY
Week 2 IxD History: Interaction Design before Computers
PDF
Metro UI interaction design guidelines @Microsoft Tech.Days 2011
PDF
PayPal Cross Border Consumer Research 2016
PPTX
Monetize with PayPal X Payments Platform
PDF
Anti-Patterns that Stifle Lean UX Teams
PPTX
101 Things I Learned In Interaction Design School - Web Directions South
PDF
Lean Engineering. Applying Lean Principles to Building Experiences
PDF
Designing Web Interfaces Book - O'Reilly Webcast
PPTX
Interaction design workshop
PDF
Foundations of Interaction Design
PDF
Bringing Change to Life
Integrate Paypal with Your Website the Easy Way
User-Centered Interaction Design
PayPal Real Time Analytics
Lean Engineering: How to make Engineering a full Lean UX partner
Week 2 IxD History: Interaction Design before Computers
Metro UI interaction design guidelines @Microsoft Tech.Days 2011
PayPal Cross Border Consumer Research 2016
Monetize with PayPal X Payments Platform
Anti-Patterns that Stifle Lean UX Teams
101 Things I Learned In Interaction Design School - Web Directions South
Lean Engineering. Applying Lean Principles to Building Experiences
Designing Web Interfaces Book - O'Reilly Webcast
Interaction design workshop
Foundations of Interaction Design
Bringing Change to Life
Ad

Similar to Clash of the Titans: Releasing the Kraken | NodeJS @paypal (20)

PDF
Why we released the kraken
PDF
Kraken Front-Trends
PPTX
Kraken
PPTX
Kraken.js Lab Primer
PDF
KrakenJS
PDF
Kraken at DevCon TLV
PDF
Node Summit - Release the Kraken
PPT
Bridging the Gap with Dust.js
PPTX
Node.js Web Apps @ ebay scale
PPTX
Kraken js at paypal
PDF
Node down the road - Poornima Venkatakrishnan, PayPal
PDF
Node.js Zurich Meetup #1
PPTX
The PRPL Pattern
PDF
Cutting edge of web technology
PPTX
Unleash and Empower Your Engineers
PPTX
Technology Development in Early Stage Startup Indonesia
PPTX
Agile_SDLC_Node.js@Paypal_ppt
PDF
From server generated pages to client app in a micro-services world
PDF
Wds leanengineering-141103233017-conversion-gate02
PPTX
Sst hackathon express
Why we released the kraken
Kraken Front-Trends
Kraken
Kraken.js Lab Primer
KrakenJS
Kraken at DevCon TLV
Node Summit - Release the Kraken
Bridging the Gap with Dust.js
Node.js Web Apps @ ebay scale
Kraken js at paypal
Node down the road - Poornima Venkatakrishnan, PayPal
Node.js Zurich Meetup #1
The PRPL Pattern
Cutting edge of web technology
Unleash and Empower Your Engineers
Technology Development in Early Stage Startup Indonesia
Agile_SDLC_Node.js@Paypal_ppt
From server generated pages to client app in a micro-services world
Wds leanengineering-141103233017-conversion-gate02
Sst hackathon express

More from Bill Scott (14)

PDF
Keeping a Startup Ethos
PDF
Lean UX Anti-Patterns
PDF
Designing With Lenses (UxLx, CHIFOO, BigD)
PDF
DHTML Prototyping: Silicon Valley Code Camp
PDF
Designing for Interesting Moments
PDF
Bringing Design to Life
PDF
Designing Web Interfaces
PDF
Back To The Future
PDF
Hacking Netflix - Netflix APIs
PDF
Improving Netflix Performance Experience
PDF
Design Anti Patterns - How to Design a Poor Web Experience
PDF
Protoscript - Simplified prototype scripting
PDF
Ajax 101 Workshop
PDF
Designing For Ajax
Keeping a Startup Ethos
Lean UX Anti-Patterns
Designing With Lenses (UxLx, CHIFOO, BigD)
DHTML Prototyping: Silicon Valley Code Camp
Designing for Interesting Moments
Bringing Design to Life
Designing Web Interfaces
Back To The Future
Hacking Netflix - Netflix APIs
Improving Netflix Performance Experience
Design Anti Patterns - How to Design a Poor Web Experience
Protoscript - Simplified prototype scripting
Ajax 101 Workshop
Designing For Ajax

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
CloudStack 4.21: First Look Webinar slides
PDF
Convolutional neural network based encoder-decoder for efficient real-time ob...
PDF
giants, standing on the shoulders of - by Daniel Stenberg
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
Enhancing plagiarism detection using data pre-processing and machine learning...
PDF
Credit Without Borders: AI and Financial Inclusion in Bangladesh
PPT
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
PDF
sbt 2.0: go big (Scala Days 2025 edition)
PPTX
AI IN MARKETING- PRESENTED BY ANWAR KABIR 1st June 2025.pptx
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
PDF
Improvisation in detection of pomegranate leaf disease using transfer learni...
PDF
Transform-Your-Streaming-Platform-with-AI-Driven-Quality-Engineering.pdf
PDF
Produktkatalog für HOBO Datenlogger, Wetterstationen, Sensoren, Software und ...
PDF
OpenACC and Open Hackathons Monthly Highlights July 2025
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PDF
NewMind AI Weekly Chronicles – August ’25 Week IV
PDF
Comparative analysis of machine learning models for fake news detection in so...
PDF
Dell Pro Micro: Speed customer interactions, patient processing, and learning...
PPTX
Custom Battery Pack Design Considerations for Performance and Safety
NewMind AI Weekly Chronicles – August ’25 Week III
CloudStack 4.21: First Look Webinar slides
Convolutional neural network based encoder-decoder for efficient real-time ob...
giants, standing on the shoulders of - by Daniel Stenberg
A review of recent deep learning applications in wood surface defect identifi...
Enhancing plagiarism detection using data pre-processing and machine learning...
Credit Without Borders: AI and Financial Inclusion in Bangladesh
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
sbt 2.0: go big (Scala Days 2025 edition)
AI IN MARKETING- PRESENTED BY ANWAR KABIR 1st June 2025.pptx
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
Improvisation in detection of pomegranate leaf disease using transfer learni...
Transform-Your-Streaming-Platform-with-AI-Driven-Quality-Engineering.pdf
Produktkatalog für HOBO Datenlogger, Wetterstationen, Sensoren, Software und ...
OpenACC and Open Hackathons Monthly Highlights July 2025
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
NewMind AI Weekly Chronicles – August ’25 Week IV
Comparative analysis of machine learning models for fake news detection in so...
Dell Pro Micro: Speed customer interactions, patient processing, and learning...
Custom Battery Pack Design Considerations for Performance and Safety

Clash of the Titans: Releasing the Kraken | NodeJS @paypal

  • 1. clash of the titans @billwscott on twitter bill scott. sr. dir. user interface engineering @paypal fluent plenary. may 30, 2013. san francisco. releasing the kraken: nodejs @paypal
  • 2. 16 different test cells in the initial PS3 Launch (2010) focus is on build/measure/learn four distinct PS3 experiences launched on same day typical netflix release
  • 3. the epiphany engineer for volatility. for change. for learning.
  • 4. however, paypal circa 2011... not invented here. risk averse. culture of long shelf life.
  • 5. In 2011, even a simple content copy change could take as much as 6 weeks to get live to site
  • 6. tangled up technology one of the root problems technology and processes not suited for • rapid experimentation • build/measure/learn
  • 7. existing stack wasn’t designed for experimentation this new stack was not conducive to prototyping followed an “enterprise application” model. ui gets built into the “server app” ajax/components all done server- side (subclass java controller)! java (components) jsp proprietary uiprototyping was hard “ui bits” mostly lived here
  • 9. new dna @paypal january 2012 fleshed out ui layer that could support rapid experimentation march 2012 david Marcus becomes president of PayPal april 2012 kick off of lean project using nodejs & dustjs
  • 10. hermes project lean ux in action from whiteboard to code from code to usability learningsstart again
  • 11. 1st step: fire up a prototype stack (nodejs) utilize opens source stack express, connect, require.js bring in javascript templating and other open source ui goodness node.js ui bits prototype stack
  • 12. 2nd step: bootstrap with bootstrap able to create a new branded look in a few hours enabled sketch to code node.js ui bits prototype stack
  • 13. 3rd step: use javascript templating text templates get compiled to javascript <p>Hello {name}</p> dustjs templates execute wherever there is javascript templates = JS {dust} JavaScript compiles to... javascript is evaluated to render ui
  • 14. 4th step: make ui bits portable to legacy JS templating can be run in client browser or server on the production stack we can drag & drop the ui bits from prototyping stack to the production stack rhinoscript enabled stack parity java (rhinoscript)node.js {dust} JS template prototype stack production stack {dust} JS template client OR server either stack
  • 17. 5th step: bring node to production project kraken enable all of the standard paypal services but do it in a friendly npm way monitoring, logging, security, content, locale resolution, analytics, authentication, dust rendering, experimentation, packaging, application framework, deployment, session management, service access, etc. CLI MVC framework/scaffolding. hello world in 1 minute
  • 18. java (rhinoscript) production stack {dust} JS template 6th step: one stack to rule them all node.js {dust} JS template prototype stack
  • 19. 6th step: one stack to rule them all choose where you want to run the templates kraken prototype & production stack client server contains “webcore” for scaffolding and providing a lightweight framework for dev & production
  • 20. npm.paypal.com bower.paypal.com enables building in standard components & styles in less than a minute provides blessed set of modules first. can provide protection from blacklist modules modules for easy integration
  • 22. start like walmart labs use as an api server to proxy old services and then retire them or start like us, trello and others use as a rapid prototyping stack prove it out in a sandbox and then scale do it in parallel and test till scales do it with talent ensure best developers are on the initial work to set the standard getting node into your tent I am hiring!
  • 23. designing web interfaces O’Reilly picture credits http://commons.wikimedia.org/wiki/File:Giant_octopus_attacks_ship.jpg http://www.flickr.com/photos/therevsteve/3104267109/sizes/o/ http://www.flickr.com/photos/nicasaurusrex/3069602246/ http://www.flickr.com/photos/hongiiv/4151964823/ http://www.flickr.com/photos/untitlism/2603959306/ http://www.flickr.com/photos/stuckincustoms/2380543038/ follow me on twitter @billwscott