Web   Hooks Forging a Personalized Programmable Interconnected Internet Ryan Teixeira Bar Camp  Miami Feb 2009
Programmable World of Tomorrow <ul><li>Give credit where credit is due </li></ul><ul><li>Jeff Lindsay </li></ul><ul><li>“W...
Traditional Communication My Bank
Personal Computing
We Discovered the Internet
Email Is Still The Killer App Now we can send email Yeah
My Bank and I Can Talk Your balance is low Online banking Email notifications
Now I'm Getting Social What do they all do?
Send Me Email!
Email Is Great We Need to Move On
I Sign Up for a New Service I have a new service called QUIBLR Ok Cool. Sign me up.
http://ryantxr.appjet.com/hello Please send it to this URL... I might have some information for you.  I'll email it to you.
What is that? It's a PHP script on my web host.
What does that do? Whatever I  want
The Idea Is Not New Been doing it for years
RESTful Web Services Did not really get popular until it had a name
Two Sides of The Same Coin
Feeds Are Everywhere
The One Way World of Yesteryear This made sense when desktops were  readers and the web was viewed primarily as a content ...
Web Applications Consume Feeds
Polling Sucks! Can I have the data? Here it is Bored
Joshua Schachter Had An Idea http://joshua.schachter.org/
Worked For Paypal
Proposal  Building on top of suggestions and proposals for mechanisms to notify of page changes via Web Hooks and XMPP, Ge...
Consider GNIP Making data portability suck less.
Push Is Good But that is not the point
Once Upon A Time There was a command line system that let you combine apps together for a greater purpose.
The Key Was Input and Output Program Processed data comes out Raw data in
We Had All These Programs <ul><li>They were far more useful when strung together </li></ul><ul><li>You could combine them ...
The UNIX Philosophy <ul><li>Write programs that do  ONE THING  and do it well </li></ul><ul><li>Write programs to  work to...
Web Apps Can Only Respond <ul><li>They can respond to us </li></ul><ul><li>The can give us information when we ask for it ...
They Need Web Hooks <ul><li>Use the mechanisms the web already has </li></ul><ul><li>Use existing protocols </li></ul><ul>...
Combine Applications Like UNIX Command Line Apps
Imagine  Basecamp With Hooks
 
Anything Can Trigger A Handler
Back To Github
RunCodeRun Integrates With Github
Service Integration
Web Synthesis
Code as Glue
Separation of Concerns
Appjet <ul><li>Server side Javascript </li></ul><ul><li>Create small handlers </li></ul><ul><li>Use them as web hooks </li...
 
Google App Engine <ul><li>More complicated than AppJet </li></ul><ul><li>Need to know Python </li></ul><ul><li>Certainly v...
What Else Should Have Web Hooks? My Bank
RSS As Input Use RSSFWD so there is no need for polling
Yahoo Pipes and YQL <ul><li>Has all the data filtering features </li></ul><ul><li>Needs web hooks </li></ul><ul><li>Needs ...
Forget About Pushing Content It's All About Integration
Everyone should use whatever apps they want then integrate them
Web Hooks and Feeds <ul><li>Web Hooks do not replace feeds </li></ul><ul><li>Both a feed and a web hook should be supporte...
Web Hooks and XMPP <ul><li>They are not the same </li></ul><ul><li>Web Hooks are simpler </li></ul><ul><li>Web Hooks are p...
Is there a standard <ul><li>Short answer: NO </li></ul><ul><li>Perhaps there will be on at some point </li></ul><ul><li>On...
John Udell Envisions the Internet As a new programming paradigm that takes the whole  Internet  as its platform
One More Cool Thing
Thanks Ryan Teixeira [email_address] ryantxr ryantxr http:// devsanctum . com
Upcoming SlideShare
Loading in …5
×

Webhooks - Creating a Programmable Internet

3,630 views

Published on

Presents an idea for how to make the internet into one programmable space by allowing applications to communicate using web hooks.

Published in: Technology
  • Be the first to comment

Webhooks - Creating a Programmable Internet

  1. 1. Web Hooks Forging a Personalized Programmable Interconnected Internet Ryan Teixeira Bar Camp Miami Feb 2009
  2. 2. Programmable World of Tomorrow <ul><li>Give credit where credit is due </li></ul><ul><li>Jeff Lindsay </li></ul><ul><li>“Web Hooks and the Programmable World of Tomorrow” on slideshare </li></ul>
  3. 3. Traditional Communication My Bank
  4. 4. Personal Computing
  5. 5. We Discovered the Internet
  6. 6. Email Is Still The Killer App Now we can send email Yeah
  7. 7. My Bank and I Can Talk Your balance is low Online banking Email notifications
  8. 8. Now I'm Getting Social What do they all do?
  9. 9. Send Me Email!
  10. 10. Email Is Great We Need to Move On
  11. 11. I Sign Up for a New Service I have a new service called QUIBLR Ok Cool. Sign me up.
  12. 12. http://ryantxr.appjet.com/hello Please send it to this URL... I might have some information for you. I'll email it to you.
  13. 13. What is that? It's a PHP script on my web host.
  14. 14. What does that do? Whatever I want
  15. 15. The Idea Is Not New Been doing it for years
  16. 16. RESTful Web Services Did not really get popular until it had a name
  17. 17. Two Sides of The Same Coin
  18. 18. Feeds Are Everywhere
  19. 19. The One Way World of Yesteryear This made sense when desktops were readers and the web was viewed primarily as a content distribution media. We have to request the data
  20. 20. Web Applications Consume Feeds
  21. 21. Polling Sucks! Can I have the data? Here it is Bored
  22. 22. Joshua Schachter Had An Idea http://joshua.schachter.org/
  23. 23. Worked For Paypal
  24. 24. Proposal Building on top of suggestions and proposals for mechanisms to notify of page changes via Web Hooks and XMPP, GetPingd proposes mechanisms for subscribing to content change notifications in a generic and standardized way.
  25. 25. Consider GNIP Making data portability suck less.
  26. 26. Push Is Good But that is not the point
  27. 27. Once Upon A Time There was a command line system that let you combine apps together for a greater purpose.
  28. 28. The Key Was Input and Output Program Processed data comes out Raw data in
  29. 29. We Had All These Programs <ul><li>They were far more useful when strung together </li></ul><ul><li>You could combine them in any way you wanted </li></ul>
  30. 30. The UNIX Philosophy <ul><li>Write programs that do ONE THING and do it well </li></ul><ul><li>Write programs to work together </li></ul><ul><li>Write programs that handle text streams because that is a universal interface </li></ul>
  31. 31. Web Apps Can Only Respond <ul><li>They can respond to us </li></ul><ul><li>The can give us information when we ask for it </li></ul><ul><li>They generally cannot initiate communication that can be consumed by another app </li></ul>
  32. 32. They Need Web Hooks <ul><li>Use the mechanisms the web already has </li></ul><ul><li>Use existing protocols </li></ul><ul><li>Give them a way to call us (or our apps) </li></ul>
  33. 33. Combine Applications Like UNIX Command Line Apps
  34. 34. Imagine Basecamp With Hooks
  35. 36. Anything Can Trigger A Handler
  36. 37. Back To Github
  37. 38. RunCodeRun Integrates With Github
  38. 39. Service Integration
  39. 40. Web Synthesis
  40. 41. Code as Glue
  41. 42. Separation of Concerns
  42. 43. Appjet <ul><li>Server side Javascript </li></ul><ul><li>Create small handlers </li></ul><ul><li>Use them as web hooks </li></ul><ul><li>Run on Appjet site </li></ul><ul><li>Download AppJet and run on your own server </li></ul>
  43. 45. Google App Engine <ul><li>More complicated than AppJet </li></ul><ul><li>Need to know Python </li></ul><ul><li>Certainly viable </li></ul>
  44. 46. What Else Should Have Web Hooks? My Bank
  45. 47. RSS As Input Use RSSFWD so there is no need for polling
  46. 48. Yahoo Pipes and YQL <ul><li>Has all the data filtering features </li></ul><ul><li>Needs web hooks </li></ul><ul><li>Needs an input so data can be pushed to it </li></ul>
  47. 49. Forget About Pushing Content It's All About Integration
  48. 50. Everyone should use whatever apps they want then integrate them
  49. 51. Web Hooks and Feeds <ul><li>Web Hooks do not replace feeds </li></ul><ul><li>Both a feed and a web hook should be supported </li></ul><ul><li>HTTP call backs are not new </li></ul><ul><li>Exposing them to users is the concept </li></ul>
  50. 52. Web Hooks and XMPP <ul><li>They are not the same </li></ul><ul><li>Web Hooks are simpler </li></ul><ul><li>Web Hooks are probably more suited to smaller data that is less frequent </li></ul><ul><li>XMPP probably more suited to more data and higher frequency </li></ul>
  51. 53. Is there a standard <ul><li>Short answer: NO </li></ul><ul><li>Perhaps there will be on at some point </li></ul><ul><li>On his blog data Feb 20 2009, Jeff said this: </li></ul><ul><ul><li>I’m not going to assume we’ll know everything about the implications of this mechanism that we can encode them in a document that will either be ignored or adopted by everybody, making it harder to adapt to change. The longer we can put off standardizing, the better. </li></ul></ul>
  52. 54. John Udell Envisions the Internet As a new programming paradigm that takes the whole Internet as its platform
  53. 55. One More Cool Thing
  54. 56. Thanks Ryan Teixeira [email_address] ryantxr ryantxr http:// devsanctum . com

×