SlideShare a Scribd company logo
1 of 35
Download to read offline
Code is Cool
        - but -


Products are Better
                  @aaronheckmann
                  github/aheckmann
Why?
`




    http://wilwheaton.typepad.com/wwdnbackup/images/numbers.png
`




    http://www.thebrannanblog.net/wp-content/uploads/2011/01/boombox.jpg
4 ½ devs
http://farm1.static.flickr.com/199/480091641_3c2d87ddfa.jpg © Warner Bros Pictures
?
http://farm1.static.flickr.com/199/480091641_3c2d87ddfa.jpg © Warner Bros Pictures
Don't Write Code
Not writing code
Not writing code




                   http://www.codeproject.com/KB/ajax/sal/ajax.jpg
If you're writing ajax
requests today you're
probably wasting
your time.




    http://1.bp.blogspot.com/_4ynpbjsnPvk/SYioZdoZokI/AAAAAAAAKTM/HzAZZ3BsBak/s400/oregon-trail-3.jpg
Data-Dynamic
Data-Dynamic

1)      event delegation
Data-Dynamic

1)                      event delegation

     <form data-dynamic action='/explore' data-validate>
Data-Dynamic

1)                      event delegation

     <form data-dynamic action='/explore' data-validate>
Data-Dynamic

1)                       event delegation

     <form data-dynamic action='/explore' data-validate>

     <anything data-dynamic='/wagon'>1840s</anything>
Data-Dynamic

1)                       event delegation

     <form data-dynamic action='/explore' data-validate>

     <any data-dynamic='/wagon' method='post'>1840s</any>
Data-Dynamic

1)                       event delegation

     <form data-dynamic action='/explore' data-validate>

     <any data-dynamic='/wagon' method='post'>1840s</any>

     <a href='/oregon/trail' data-popup-remote>adventure!</a>
Data-Dynamic

1)                       event delegation

     <form data-dynamic action='/explore' data-validate>

     <any data-dynamic='/wagon' method='post'>1840s</any>

     <a href='/oregon/trail' data-popup-remote>adventure!</a>

     <span data-tip-remote='/tip/furtrade'>fur trade</span>
Data-Dynamic

1)          event delegation

2) Managed JSON Response
Data-Dynamic

2) Managed JSON Response

  res.send({
      replace: { selector: html }
    , emit: [eventName, args...]
    , trigger: [selector, eventName, args...]
    , popup: html
    , redirect: url
    , success: msg
    , invalid: msg
    , etc
  });
Data-Dynamic

2) Managed JSON Response

  res.send({
      replace: { selector: html }
    , emit: [eventName, args...]
    , trigger: [selector, eventName, args...]
    , popup: html
    , redirect: url
    , success: msg
    , invalid: msg
    , etc
  });
Data-Dynamic

2) Managed JSON Response

  res.send({
      replace: { selector: html }
    , emit: [eventName, args...]
    , trigger: [selector, eventName, args...]
    , popup: html
    , redirect: url
    , success: msg
    , invalid: msg
    , etc
  });
Data-Dynamic

2) Managed JSON Response

  res.send({
      replace: { selector: html }
    , emit: [eventName, args...]
    , trigger: [selector, eventName, args...]
    , popup: html
    , redirect: url
    , success: msg
    , invalid: msg
    , etc
  });
Data-Dynamic

2) Managed JSON Response

  res.send({
      replace: { selector: html }
    , emit: [eventName, args...]
    , trigger: [selector, eventName, args...]
    , popup: html
    , redirect: url
    , success: msg
    , invalid: msg
    , etc
  });
Data-Dynamic

2) Managed JSON Response

  res.send({
      replace: { selector: html }
    , emit: [eventName, args...]
    , trigger: [selector, eventName, args...]
    , popup: html
    , redirect: url
    , success: msg
    , invalid: msg
    , etc
  });
Not Writing Code


         http://joyindeutschland.files.wordpress.com/2011/02/oregon_trail_ii_opening.jpg
+
Get Dysentery
$ npm install express-mongoose

https://github.com/learnboost/express-mongoose
http://www.blogcdn.com/www.autoblog.com/media/2008/05/asimo_conducts_dso.jpg




Instrumentation
global
              variable
                 leaks


http://www.changetheequation.org/clientuploads/Leaky%20Pipe.jpg
Code is Cool
        - but -


Products are Better
                  @aaronheckmann
                  github/aheckmann

More Related Content

What's hot

Doctype htm1
Doctype htm1Doctype htm1
Doctype htm1
Eddy_TKJ
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp III
Dirk Ginader
 

What's hot (20)

Downloading the internet with Python + Scrapy
Downloading the internet with Python + ScrapyDownloading the internet with Python + Scrapy
Downloading the internet with Python + Scrapy
 
SPUnite17 Getting up to Speed with React
SPUnite17 Getting up to Speed with ReactSPUnite17 Getting up to Speed with React
SPUnite17 Getting up to Speed with React
 
AngularJS - $http & $resource Services
AngularJS - $http & $resource ServicesAngularJS - $http & $resource Services
AngularJS - $http & $resource Services
 
Ruby on Rails Intro
Ruby on Rails IntroRuby on Rails Intro
Ruby on Rails Intro
 
Doctype htm1
Doctype htm1Doctype htm1
Doctype htm1
 
RxJS 5 in Depth
RxJS 5 in DepthRxJS 5 in Depth
RxJS 5 in Depth
 
AngularJS $http Interceptors (Explanation and Examples)
AngularJS $http Interceptors (Explanation and Examples)AngularJS $http Interceptors (Explanation and Examples)
AngularJS $http Interceptors (Explanation and Examples)
 
20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8....
20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8....20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8....
20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8....
 
Web Scraping with Python
Web Scraping with PythonWeb Scraping with Python
Web Scraping with Python
 
Web Crawling Modeling with Scrapy Models #TDC2014
Web Crawling Modeling with Scrapy Models #TDC2014Web Crawling Modeling with Scrapy Models #TDC2014
Web Crawling Modeling with Scrapy Models #TDC2014
 
Introduction to Elasticsearch
Introduction to ElasticsearchIntroduction to Elasticsearch
Introduction to Elasticsearch
 
Using Task Queues and D3.js to build an analytics product on App Engine
Using Task Queues and D3.js to build an analytics product on App EngineUsing Task Queues and D3.js to build an analytics product on App Engine
Using Task Queues and D3.js to build an analytics product on App Engine
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp III
 
WordPressでIoTをはじめよう
WordPressでIoTをはじめようWordPressでIoTをはじめよう
WordPressでIoTをはじめよう
 
Taller evento TestingUY 2017 - API Testing utilizando Chakram
Taller evento TestingUY 2017 - API Testing utilizando ChakramTaller evento TestingUY 2017 - API Testing utilizando Chakram
Taller evento TestingUY 2017 - API Testing utilizando Chakram
 
Add Some Fun to Your Functional Programming With RXJS
Add Some Fun to Your Functional Programming With RXJSAdd Some Fun to Your Functional Programming With RXJS
Add Some Fun to Your Functional Programming With RXJS
 
Alert
AlertAlert
Alert
 
G*なクラウド ~雲のかなたに~
G*なクラウド ~雲のかなたに~G*なクラウド ~雲のかなたに~
G*なクラウド ~雲のかなたに~
 
RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK - Nicola Iarocci - Co...
RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK -  Nicola Iarocci - Co...RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK -  Nicola Iarocci - Co...
RESTFUL SERVICES MADE EASY: THE EVE REST API FRAMEWORK - Nicola Iarocci - Co...
 
async/await in Swift
async/await in Swiftasync/await in Swift
async/await in Swift
 

Viewers also liked

7 pasos-poderosos-para-alcanzar-tus-metas (1)
7 pasos-poderosos-para-alcanzar-tus-metas (1)7 pasos-poderosos-para-alcanzar-tus-metas (1)
7 pasos-poderosos-para-alcanzar-tus-metas (1)
cmartinezgt
 
Guía de Productos Seguros para Niños
 Guía de Productos Seguros para Niños Guía de Productos Seguros para Niños
Guía de Productos Seguros para Niños
Cristobal Buñuel
 
Wire Receipt-Borissov
Wire Receipt-BorissovWire Receipt-Borissov
Wire Receipt-Borissov
salesman1
 
MAGNA CARTA by Hayley Muir
MAGNA CARTA by Hayley MuirMAGNA CARTA by Hayley Muir
MAGNA CARTA by Hayley Muir
hdmuir
 
2013 TSBS & TSB 01
2013 TSBS & TSB 012013 TSBS & TSB 01
2013 TSBS & TSB 01
yangkaijie
 

Viewers also liked (20)

Diego Canga Fano_The new promotion policy_29102015
Diego Canga Fano_The new promotion policy_29102015Diego Canga Fano_The new promotion policy_29102015
Diego Canga Fano_The new promotion policy_29102015
 
Tatang
TatangTatang
Tatang
 
Fw 190 G8
Fw 190 G8Fw 190 G8
Fw 190 G8
 
Naidunia ePaper 24 March 2016
Naidunia ePaper 24 March 2016Naidunia ePaper 24 March 2016
Naidunia ePaper 24 March 2016
 
7 pasos-poderosos-para-alcanzar-tus-metas (1)
7 pasos-poderosos-para-alcanzar-tus-metas (1)7 pasos-poderosos-para-alcanzar-tus-metas (1)
7 pasos-poderosos-para-alcanzar-tus-metas (1)
 
23785 f532c2578bad5e89085d9f17c879ec1e
23785 f532c2578bad5e89085d9f17c879ec1e23785 f532c2578bad5e89085d9f17c879ec1e
23785 f532c2578bad5e89085d9f17c879ec1e
 
Lalala1
Lalala1Lalala1
Lalala1
 
7 Things You Should Know About Twitter
7 Things You Should Know About Twitter7 Things You Should Know About Twitter
7 Things You Should Know About Twitter
 
Guía de Productos Seguros para Niños
 Guía de Productos Seguros para Niños Guía de Productos Seguros para Niños
Guía de Productos Seguros para Niños
 
JGM Organization 2017
JGM Organization 2017JGM Organization 2017
JGM Organization 2017
 
ກົນລະສາດພື້ນຖານ
ກົນລະສາດພື້ນຖານກົນລະສາດພື້ນຖານ
ກົນລະສາດພື້ນຖານ
 
Fghfdgh
FghfdghFghfdgh
Fghfdgh
 
Volantino Expert Sgobba Dal 11 al 24 giugno 2015
Volantino Expert Sgobba Dal 11 al 24 giugno 2015Volantino Expert Sgobba Dal 11 al 24 giugno 2015
Volantino Expert Sgobba Dal 11 al 24 giugno 2015
 
Wire Receipt-Borissov
Wire Receipt-BorissovWire Receipt-Borissov
Wire Receipt-Borissov
 
Spring in our school
Spring in our schoolSpring in our school
Spring in our school
 
MAGNA CARTA by Hayley Muir
MAGNA CARTA by Hayley MuirMAGNA CARTA by Hayley Muir
MAGNA CARTA by Hayley Muir
 
Burning Youth Article
Burning Youth ArticleBurning Youth Article
Burning Youth Article
 
2013 TSBS & TSB 01
2013 TSBS & TSB 012013 TSBS & TSB 01
2013 TSBS & TSB 01
 
Early Voyaging in the South China Sea: Implications on Territorial Claims
Early Voyaging in the South China Sea: Implications on Territorial ClaimsEarly Voyaging in the South China Sea: Implications on Territorial Claims
Early Voyaging in the South China Sea: Implications on Territorial Claims
 
Boeing final presentation v3
Boeing final presentation v3Boeing final presentation v3
Boeing final presentation v3
 

Similar to Code is Cool - Products are Better

Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011
Chris Alfano
 
Socket applications
Socket applicationsSocket applications
Socket applications
João Moura
 
After max+phonegap
After max+phonegapAfter max+phonegap
After max+phonegap
yangdj
 
混搭移动开发:PhoneGap+JQurey+Dreamweaver
混搭移动开发:PhoneGap+JQurey+Dreamweaver混搭移动开发:PhoneGap+JQurey+Dreamweaver
混搭移动开发:PhoneGap+JQurey+Dreamweaver
yangdj
 
international PHP2011_Bastian Feder_jQuery's Secrets
international PHP2011_Bastian Feder_jQuery's Secretsinternational PHP2011_Bastian Feder_jQuery's Secrets
international PHP2011_Bastian Feder_jQuery's Secrets
smueller_sandsmedia
 

Similar to Code is Cool - Products are Better (20)

huhu
huhuhuhu
huhu
 
Os Pruett
Os PruettOs Pruett
Os Pruett
 
Postman On Steroids
Postman On SteroidsPostman On Steroids
Postman On Steroids
 
Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011
 
Socket applications
Socket applicationsSocket applications
Socket applications
 
Reactive programming every day
Reactive programming every dayReactive programming every day
Reactive programming every day
 
After max+phonegap
After max+phonegapAfter max+phonegap
After max+phonegap
 
混搭移动开发:PhoneGap+JQurey+Dreamweaver
混搭移动开发:PhoneGap+JQurey+Dreamweaver混搭移动开发:PhoneGap+JQurey+Dreamweaver
混搭移动开发:PhoneGap+JQurey+Dreamweaver
 
international PHP2011_Bastian Feder_jQuery's Secrets
international PHP2011_Bastian Feder_jQuery's Secretsinternational PHP2011_Bastian Feder_jQuery's Secrets
international PHP2011_Bastian Feder_jQuery's Secrets
 
Bonnes pratiques de développement avec Node js
Bonnes pratiques de développement avec Node jsBonnes pratiques de développement avec Node js
Bonnes pratiques de développement avec Node js
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares web
 
React & The Art of Managing Complexity
React &  The Art of Managing ComplexityReact &  The Art of Managing Complexity
React & The Art of Managing Complexity
 
Building Scalable Websites with Perl
Building Scalable Websites with PerlBuilding Scalable Websites with Perl
Building Scalable Websites with Perl
 
Ajax Lecture Notes
Ajax Lecture NotesAjax Lecture Notes
Ajax Lecture Notes
 
JavaScript Web Development
JavaScript Web DevelopmentJavaScript Web Development
JavaScript Web Development
 
Fact, Fiction, and FP
Fact, Fiction, and FPFact, Fiction, and FP
Fact, Fiction, and FP
 
Honing headers for highly hardened highspeed hypertext
Honing headers for highly hardened highspeed hypertextHoning headers for highly hardened highspeed hypertext
Honing headers for highly hardened highspeed hypertext
 
Honing headers for highly hardened highspeed hypertext
Honing headers for highly hardened highspeed hypertextHoning headers for highly hardened highspeed hypertext
Honing headers for highly hardened highspeed hypertext
 
Modern frontend development with VueJs
Modern frontend development with VueJsModern frontend development with VueJs
Modern frontend development with VueJs
 
Pick up the low-hanging concurrency fruit
Pick up the low-hanging concurrency fruitPick up the low-hanging concurrency fruit
Pick up the low-hanging concurrency fruit
 

Recently uploaded

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 

Code is Cool - Products are Better