Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Set Your Content      Free!    By Daniel Jacobson    @daniel_jacobson
Please read the notes for each slideto understand the full context of the            presentation
Streaming
More than 33 Million SubscribersMore than 50 Countries & Territories
Netflix Accounts for 33% of Peak Internet Traffic in North AmericaNetflix subscribers are watching more than 1 billion hou...
2007
Bird is in the cage
Netflix REST API:One-Size-Fits-All Solution
Bird is set free to the world
Netflix API Requests by Audience          At Launch In 2008                               External                        ...
APIPersonaliz                          Movie     Movie     Similar             A/B Test  ation      User Info             ...
Netflix API Requests by Audience             From 2011                            External                           Devel...
Bird is free but mostly flies in the house
Change in Audience = Change in Design
Scaling
Growth of Netflix API Requests                      45                                                                 41....
Growth of the Netflix API    2 billion requests per day Exploding out to 14 billion dependency calls per day
<catalog_titles> <number_of_results>1140</number_of_results> <start_index>0</start_index> <results_per_page>10</results_pe...
{"catalog_title":{"id":"http://api.netflix.com/catalog/titles/movies/60034967","title":{"title_short":"Rosencrantz and Gui...
What if the API request growth rate                                looks like this???                      160            ...
Improve Efficiency of API RequestsCould it have been 300 million requests per day? Or less?             (Assuming everythi...
Variability Across Devices
Screen Real Estate
Controller
Technical Capabilities
Slowed Innovation
Request              Request    RequestOne-Size-Fits-All      API
Our Solution…
There has to be a better tool for thejob than the One-Size-Fits-All REST API
Network Border                                        Network Border                             One-Size-                ...
Network Border                                       Network Border                            Optimized                  ...
Recipe for Optimized APIsAPI providers that have a:• small number of targeted API consumers• very close relationships betw...
Recipe for Optimized APIsAPI providers that have a:• small number of targeted API consumers• very close relationships betw...
< 3 Years
SQL             Server            InformixEditorial  Staff
Static, Non-Reusable Data              Disparate Technologies                 Disparate Skill Sets                        ...
Bird is in the cage
CreateCOnceOPublishPEverywhereE
Key COPE Philosophies• Build Content Management Systems  – Not Web Publishing Tools• Separate Content From Display• Ensure...
COPE in Action
COPE in Action
Bird is set free in the house
Lifecycle of an NPR story       COPE in the wild
NPR Content Capture Application
NPR API
NPR.org
NPR iPad/Tablet Site
NPR.org Audio Player
NPR iPhone App
NPR Mobile Site
NPR Android App
NPR Addict iPhone App    (user generated app)
KQED.org
WBUR.org
Bird is free in the house, but also sees                the world
NPR API Requests               Partners                      External                     Developers                      ...
Netflix API Requests by Audience             From 2011                            External                           Devel...
Evernote API Requests                         External                        Developers
Guardian API Requests                         External                        Developers
Public API             Internal API
Daniel Jacobson        Director of Engineering, Netflix API          djacobson@netflix.com             @daniel_jacobsonhtt...
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
Upcoming SlideShare
Loading in …5
×

Set Your Content Free! : Case Studies from Netflix and NPR

26,734 views

Published on

Last Friday (February 8th), I spoke at the Intelligent Content Conference 2013. When Scott Abel (aka The Content Wrangler) first contacted me to speak at the event, he asked me to speak about my content management and distribution experiences from both NPR and Netflix. The two experiences seemed to him to be an interesting blend for the conference. These are the slides from that presentation.

I have applied comments to every slide in this presentation to include the context that I otherwise provided verbally during the talk.

Published in: Technology

Set Your Content Free! : Case Studies from Netflix and NPR

  1. Set Your Content Free! By Daniel Jacobson @daniel_jacobson
  2. Please read the notes for each slideto understand the full context of the presentation
  3. Streaming
  4. More than 33 Million SubscribersMore than 50 Countries & Territories
  5. Netflix Accounts for 33% of Peak Internet Traffic in North AmericaNetflix subscribers are watching more than 1 billion hours a month
  6. 2007
  7. Bird is in the cage
  8. Netflix REST API:One-Size-Fits-All Solution
  9. Bird is set free to the world
  10. Netflix API Requests by Audience At Launch In 2008 External Developers
  11. APIPersonaliz Movie Movie Similar A/B Test ation User Info Reviews Engine Metadata Ratings Movies Engine
  12. Netflix API Requests by Audience From 2011 External Developers
  13. Bird is free but mostly flies in the house
  14. Change in Audience = Change in Design
  15. Scaling
  16. Growth of Netflix API Requests 45 41.7 40 70x growth in two years! 35Request in Billions 30 25 20.7 20 15 10 5 0.6 - Jan-10 Jan-11 Jan-12
  17. Growth of the Netflix API 2 billion requests per day Exploding out to 14 billion dependency calls per day
  18. <catalog_titles> <number_of_results>1140</number_of_results> <start_index>0</start_index> <results_per_page>10</results_per_page> <catalog_title> <id>http://api.netflix.com/catalog/titles/movies/60021896</id><title short="Star" regular="Star"></title> <box_art small="http://alien2.netflix.com/us/boxshots/tiny/60021896.jpg" medium="http://alien2.netflix.com/us/boxshots/small/60021896.jpg" large="http://alien2.netflix.com/us/boxshots/large/60021896.jpg"></box_art> <link href="http://api.netflix.com/catalog/titles/movies/60021896/synopsis" rel="http://schemas.netflix.com/catalog/titles/synopsis" title="synopsis"></link> <release_year>2001</release_year> <category scheme="http://api.netflix.com/catalog/titles/mpaa_ratings" label="NR"></category> <category scheme="http://api.netflix.com/categories/genres" label="Foreign"></category> <link href="http://api.netflix.com/catalog/titles/movies/60021896/cast" rel="http://schemas.netflix.com/catalog/people.cast" title="cast"></link><link href="http://api.netflix.com/catalog/titles/movies/60021896/screen_formats" rel="http://schemas.netflix.com/catalog/titles/screen_formats" title="screenformats"></link <link href="http://api.netflix.com/catalog/titles/movies/60021896/languages_and_audio" rel="http://schemas.netflix.com/catalog/titles/languages_and_audio"title="languages and audio"></link> <average_rating>1.9</average_rating> <link href="http://api.netflix.com/catalog/titles/movies/60021896/similars" rel="http://schemas.netflix.com/catalog/titles.similars" title="similars"></link> <link href="http://www.netflix.com/Movie/Star/60021896" rel="alternate" title="webpage"></link> </catalog_title> <catalog_title> <id>http://api.netflix.com/catalog/titles/movies/17985448</id><title short="Lone Star" regular="Lone Star"></title> <box_art small="http://alien2.netflix.com/us/boxshots/tiny/17985448.jpg" medium="http://alien2.netflix.com/us/boxshots/small/17985448.jpg" large=""></box_art> <link href="http://api.netflix.com/catalog/titles/movies/17985448/synopsis" rel="http://schemas.netflix.com/catalog/titles/synopsis" title="synopsis"></link> <release_year>1996</release_year> <category scheme="http://api.netflix.com/catalog/titles/mpaa_ratings" label="R"></category> <category scheme="http://api.netflix.com/categories/genres" label="Drama"></category><link href="http://api.netflix.com/catalog/titles/movies/17985448/awards" rel="http://schemas.netflix.com/catalog/titles/awards" title="awards"></link> <link href="http://api.netflix.com/catalog/titles/movies/17985448/format_availability" rel="http://schemas.netflix.com/catalog/titles/format_availability"title="formats"></link> <link href="http://api.netflix.com/catalog/titles/movies/17985448/screen_formats" rel="http://schemas.netflix.com/catalog/titles/screen_formats" title="screenformats"></link> <link href="http://api.netflix.com/catalog/titles/movies/17985448/languages_and_audio" rel="http://schemas.netflix.com/catalog/titles/languages_and_audio"title="languages and audio"></link> <average_rating>3.7</average_rating> <link href="http://api.netflix.com/catalog/titles/movies/17985448/previews" rel="http://schemas.netflix.com/catalog/titles/previews" title="previews"></link> <link href="http://api.netflix.com/catalog/titles/movies/17985448/similars" rel="http://schemas.netflix.com/catalog/titles.similars" title="similars"></link> <link href="http://www.netflix.com/Movie/Lone_Star/17985448" rel="alternate" title="webpage"></link> </catalog_title></catalog_titles>
  19. {"catalog_title":{"id":"http://api.netflix.com/catalog/titles/movies/60034967","title":{"title_short":"Rosencrantz and Guildenstern Are Dead","regular":"Rosencrantz and Guildenstern Are Dead"},"maturity_level":60,"release_year":"1990","average_rating":3.7,"box_art":{"284pix_w":"http://cdn-7.nflximg.com/en_US/boxshots/ghd/60034967.jpg","110pix_w":"http://cdn-7.nflximg.com/en_US/boxshots/large/60034967.jpg","38pix_w":"http://cdn-7.nflximg.com/en_US/boxshots/tiny/60034967.jpg","64pix_w":"http://cdn-7.nflximg.com/en_US/boxshots/small/60034967.jpg","150pix_w":"http://cdn-7.nflximg.com/en_US/boxshots/150/60034967.jpg","88pix_w":"http://cdn-7.nflximg.com/en_US/boxshots/88/60034967.jpg","124pix_w":"http://cdn-7.nflximg.com/en_US/boxshots/124/60034967.jpg"},"language":"en","web_page":"http://www.netflix.com/Movie/Rosencrantz_and_Guildenstern_Are_Dead/60034967","tiny_url":"http://movi.es/ApUP9"},"meta":{"expand":["@directors","@bonus_materials","@cast","@awards","@short_synopsis","@synopsis","@box_art","@screen_formats","@"links":{"id":"http://api.netflix.com/catalog/titles/movies/60034967","languages_and_audio":"http://api.netflix.com/catalog/titles/movies/60034967/languages_and_audio","title":"http://api.netflix.com/catalog/titles/movies/60034967/title","screen_formats":"http://api.netflix.com/catalog/titles/movies/60034967/screen_formats","cast":"http://api.netflix.com/catalog/titles/movies/60034967/cast","awards":"http://api.netflix.com/catalog/titles/movies/60034967/awards","short_synopsis":"http://api.netflix.com/catalog/titles/movies/60034967/short_synopsis","box_art":"http://api.netflix.com/catalog/titles/movies/60034967/box_art","synopsis":"http://api.netflix.com/catalog/titles/movies/60034967/synopsis","directors":"http://api.netflix.com/catalog/titles/movies/60034967/directors","similars":"http://api.netflix.com/catalog/titles/movies/60034967/similars","format_availability":"http://api.netflix.com/catalog/titles/movies/60034967/format_availability"}}}
  20. What if the API request growth rate looks like this??? 160 140 Is this good for the long run??? 120Request is Billions 100 80 60 40 20 -
  21. Improve Efficiency of API RequestsCould it have been 300 million requests per day? Or less? (Assuming everything else remained the same)
  22. Variability Across Devices
  23. Screen Real Estate
  24. Controller
  25. Technical Capabilities
  26. Slowed Innovation
  27. Request Request RequestOne-Size-Fits-All API
  28. Our Solution…
  29. There has to be a better tool for thejob than the One-Size-Fits-All REST API
  30. Network Border Network Border One-Size- Fits-All REST API START- A/B MEMBER RECOMME MOVIE SIMILARAUTH NDATIONS RATINGS UP TESTS DATA DATA MOVIES
  31. Network Border Network Border Optimized API START- A/B MEMBER RECOMME MOVIE SIMILARAUTH NDATIONS RATINGS UP TESTS DATA DATA MOVIES
  32. Recipe for Optimized APIsAPI providers that have a:• small number of targeted API consumers• very close relationships between with API consumers• increasing divergence of needs across these API consumers• strong desire for optimization by the API consumers• optimized APIs offer high value proposition
  33. Recipe for Optimized APIsAPI providers that have a:• small number of targeted API consumers• very close relationships between with API consumers• increasing divergence of needs across these API consumers• strong desire for optimization by the API consumers• optimized APIs offer high value proposition• a generous helping of chocolate (to keep engineers happy)
  34. < 3 Years
  35. SQL Server InformixEditorial Staff
  36. Static, Non-Reusable Data Disparate Technologies Disparate Skill Sets Redundant Redundancy in Redundant Data Data SQL Applications In Server Across the Databases Disparate Two Sites Technologies Disparate Technologies Disparate Skill Sets Disparate Informix Skill SetsEditorial Staff
  37. Bird is in the cage
  38. CreateCOnceOPublishPEverywhereE
  39. Key COPE Philosophies• Build Content Management Systems – Not Web Publishing Tools• Separate Content From Display• Ensure Content Modularity• Ensure Content Portability
  40. COPE in Action
  41. COPE in Action
  42. Bird is set free in the house
  43. Lifecycle of an NPR story COPE in the wild
  44. NPR Content Capture Application
  45. NPR API
  46. NPR.org
  47. NPR iPad/Tablet Site
  48. NPR.org Audio Player
  49. NPR iPhone App
  50. NPR Mobile Site
  51. NPR Android App
  52. NPR Addict iPhone App (user generated app)
  53. KQED.org
  54. WBUR.org
  55. Bird is free in the house, but also sees the world
  56. NPR API Requests Partners External Developers Member Stations
  57. Netflix API Requests by Audience From 2011 External Developers
  58. Evernote API Requests External Developers
  59. Guardian API Requests External Developers
  60. Public API Internal API
  61. Daniel Jacobson Director of Engineering, Netflix API djacobson@netflix.com @daniel_jacobsonhttp://www.linkedin.com/in/danieljacobson http://www.slideshare.net/danieljacobson

×