NPR: Digital Distribution Strategy <ul><li>Daniel Jacobson, Director of Application Development </li></ul><ul><li>Jeremy P...
Who is NPR? <ul><li>National Public Radio (now known as NPR) </li></ul><ul><ul><li>Leading producer and distributor of rad...
Page View Growth: NPR.org vs. NPR Mobile NPR News  iPhone app NPR News  Android app Relaunched NPR mobile site NPR iPad ap...
Architectural Philosophies <ul><li>COPE (Create Once Publish Everywhere) </li></ul><ul><ul><li>COPE drives all other archi...
System Architecture Supporting COPE
System Architecture Supporting COPE
System Architecture Supporting COPE Java JSP Struts
System Architecture Supporting COPE R / W MySQL
System Architecture Supporting COPE R / O MySQL Cluster NoSQL-like XML Repository
System Architecture Supporting COPE PHP5 SimpleXML PHP5
Distribution of API Usage by Application PLAYLIST API
Distribution of API Usage by Application Raw data and content is stored in the normalized databases and is made available ...
Distribution of API Usage by Application Core APIs contain the clean API content, closely resembling the data model. PLAYL...
PLAYLIST API Distribution of API Usage by Application Wrapper APIs are custom-built interfaces that serve the needs of a g...
Distribution of API Usage by Application PLAYLIST API Presentation applications can take advantage of the Core APIs direct...
Inside the Black Box of the API
NPR’s Target Audiences for the API <ul><li>Ourselves  </li></ul><ul><ul><li>Supports the entire infrastructure of our new ...
NPR’s Target Audiences for the API <ul><li>Ourselves  </li></ul><ul><ul><li>Supports the entire infrastructure of our new ...
Lifecycle of an NPR story COPE in the wild
NPR CMS
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
NewsMap
Google Chrome Extension
iGoogle Gadget
KQED.org
NorthCountryPublicRadio.org
KPCC.org
WBUR.org
Metrics
NPR Story API : Requests per Month - About 20 requests to the Story API every second
- NPR API delivers almost 400 stories every second Slide provided by John Musser of ProgrammableWeb
API Keys and Consumption by Audience
NPR’s Target Audiences for the API <ul><li>Ourselves  </li></ul><ul><ul><li>Supports the entire infrastructure of our new ...
Output Format Distribution This distribution chart is from June 2009  and does not include NPR consumption.  We believe th...
NPR API : Non-NPRML Output Format Growth
Writable Story API  Station/Partner Ingest
Station Content in the NPR API (today)
KLCC Displaying N3 Stories from NPR API
WBUR Displaying N3 Story from NPR API
Public Media API (future)
API Enables Mobile Growth…
Mobile
The NPR API Powers Mobile Products
The Numbers
Different Modes of Development
Why Open Source?
 
Why Android?
Our Project
 
 
 
NPR News 2.0 for Android
Join Our Community @nprandroid
Questions? <ul><li>To see the API:  http:// www.npr.org/api   </li></ul><ul><li>To follow the API development:  http://www...
Upcoming SlideShare
Loading in...5
×

NPR: Digital Distribution Strategy: OSCON2010

4,853

Published on

When launching the API at OSCON in 2008, NPR targeted four audiences: the open source community; NPR member stations; NPR partners and vendors; and finally our internal developers and product managers. In its short two-year life, the NPR API has grown tremendously, from only a few hundred thousand requests per month to more than 60M. The API, furthermore, has enabled tremendous growth for NPR in the mobile space while facilitating more than 100% growth in total page views in the last year.

Published in: Technology
0 Comments
12 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,853
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
124
Comments
0
Likes
12
Embeds 0
No embeds

No notes for slide
  • Speed of Growth: Dan uses this info as well. This slide differs slightly from his in that it doesn’t use a key. Dan needed a key so that he had room for the flags that he added to the graph. But for your purposes, might be nice to use this version.
  • QR code links to: http://code.google.com/p/npr-android-app/
  • NPR: Digital Distribution Strategy: OSCON2010

    1. 1. NPR: Digital Distribution Strategy <ul><li>Daniel Jacobson, Director of Application Development </li></ul><ul><li>Jeremy Pennycook, Operations Manager for Mobile </li></ul><ul><li>July 23, 2010 </li></ul>
    2. 2. Who is NPR? <ul><li>National Public Radio (now known as NPR) </li></ul><ul><ul><li>Leading producer and distributor of radio programming </li></ul></ul><ul><ul><li>All Things Considered , Morning Edition , Fresh Air , Wait, Wait Don’t Tell Me , Car Talk , etc. </li></ul></ul><ul><ul><li>Broadcasted on over 800 local radio stations nationwide </li></ul></ul><ul><ul><li>Over 35 million weekly listeners </li></ul></ul><ul><li>NPR Digital Media </li></ul><ul><ul><li>Website (npr.org) with audio content from radio programs </li></ul></ul><ul><ul><li>Web-Only content including blogs, video, slideshows, etc. </li></ul></ul><ul><ul><li>Mobile properties including iPhone app, iPad app, Android app, mobile site </li></ul></ul><ul><ul><li>API, RSS, podcasts and other syndication </li></ul></ul>
    3. 3. Page View Growth: NPR.org vs. NPR Mobile NPR News iPhone app NPR News Android app Relaunched NPR mobile site NPR iPad app NPR Music iPhone app API launched in 2008, at OSCON
    4. 4. Architectural Philosophies <ul><li>COPE (Create Once Publish Everywhere) </li></ul><ul><ul><li>COPE drives all other architectural decisions </li></ul></ul><ul><li>Build Content Management tools, not Web Publishing tools </li></ul><ul><ul><li>Separate content/data from display/presentation </li></ul></ul><ul><ul><li>Make sure that content is modular/portable </li></ul></ul><ul><li>Understand the Atom </li></ul><ul><ul><li>Story is the Atom for NPR </li></ul></ul><ul><ul><li>Stories contain ‘Assets’ (ie. text, audio, video, images, etc.) </li></ul></ul><ul><ul><li>Stories belong to ‘Lists’ </li></ul></ul><ul><li>Know When to Build and When to Integrate </li></ul><ul><ul><li>Core systems built and/or managed internally </li></ul></ul><ul><ul><li>Other systems depend on cost/benefit </li></ul></ul><ul><ul><li>When possible, use open source solutions </li></ul></ul><ul><li>It is better to be incomplete than inaccurate </li></ul>
    5. 5. System Architecture Supporting COPE
    6. 6. System Architecture Supporting COPE
    7. 7. System Architecture Supporting COPE Java JSP Struts
    8. 8. System Architecture Supporting COPE R / W MySQL
    9. 9. System Architecture Supporting COPE R / O MySQL Cluster NoSQL-like XML Repository
    10. 10. System Architecture Supporting COPE PHP5 SimpleXML PHP5
    11. 11. Distribution of API Usage by Application PLAYLIST API
    12. 12. Distribution of API Usage by Application Raw data and content is stored in the normalized databases and is made available to APIs through the flattened Infrastructural API.
    13. 13. Distribution of API Usage by Application Core APIs contain the clean API content, closely resembling the data model. PLAYLIST API
    14. 14. PLAYLIST API Distribution of API Usage by Application Wrapper APIs are custom-built interfaces that serve the needs of a given presentation layer. The wrappers can transform API content, pull from multiple APIs and tailor the queries to the abilities of the calling application.
    15. 15. Distribution of API Usage by Application PLAYLIST API Presentation applications can take advantage of the Core APIs directly or they can have a custom Wrapper API built, depending on the needs of the application.
    16. 16. Inside the Black Box of the API
    17. 17. NPR’s Target Audiences for the API <ul><li>Ourselves </li></ul><ul><ul><li>Supports the entire infrastructure of our new site </li></ul></ul><ul><ul><li>Improvements to CMS to enable custom feeds by Editorial and Design </li></ul></ul><ul><li>Stations </li></ul><ul><ul><li>Enables us to serve content to our member stations more easily </li></ul></ul><ul><ul><li>Enables our stations to serve their communities better </li></ul></ul><ul><li>Partners </li></ul><ul><ul><li>Creates new opportunities because - easy to implement with very little integration cost </li></ul></ul><ul><ul><li>Makes existing opportunities easier to maintain and grow </li></ul></ul><ul><li>Public </li></ul><ul><ul><li>Engages the community – part of NPR’s Public Service Mission </li></ul></ul><ul><ul><li>Lots of great widgets, tools, sites built using the API </li></ul></ul>
    18. 18. NPR’s Target Audiences for the API <ul><li>Ourselves </li></ul><ul><ul><li>Supports the entire infrastructure of our new site </li></ul></ul><ul><ul><li>Improvements to CMS to enable custom feeds by Editorial and Design </li></ul></ul><ul><li>Stations </li></ul><ul><ul><li>Enables us to serve content to our member stations more easily </li></ul></ul><ul><ul><li>Enables our stations to serve their communities better </li></ul></ul><ul><li>Partners </li></ul><ul><ul><li>Creates new opportunities because - easy to implement with very little integration cost </li></ul></ul><ul><ul><li>Makes existing opportunities easier to maintain and grow </li></ul></ul><ul><li>Public </li></ul><ul><ul><li>Engages the community – part of NPR’s Public Service Mission </li></ul></ul><ul><ul><li>Lots of great widgets, tools, sites built using the API </li></ul></ul>Launch Expectations: Improve development efficiencies for NPR.org Some sophisticated stations will use the API Partner integration will be easier The public will do amazing things with the API
    19. 19. Lifecycle of an NPR story COPE in the wild
    20. 20. NPR CMS
    21. 21. NPR API
    22. 22. NPR.org
    23. 23. NPR iPad/Tablet Site
    24. 24. NPR.org Audio Player
    25. 25. NPR iPhone App
    26. 26. NPR Mobile Site
    27. 27. NPR Android App
    28. 28. NPR Addict iPhone App
    29. 29. NewsMap
    30. 30. Google Chrome Extension
    31. 31. iGoogle Gadget
    32. 32. KQED.org
    33. 33. NorthCountryPublicRadio.org
    34. 34. KPCC.org
    35. 35. WBUR.org
    36. 36. Metrics
    37. 37. NPR Story API : Requests per Month - About 20 requests to the Story API every second
    38. 38. - NPR API delivers almost 400 stories every second Slide provided by John Musser of ProgrammableWeb
    39. 39. API Keys and Consumption by Audience
    40. 40. NPR’s Target Audiences for the API <ul><li>Ourselves </li></ul><ul><ul><li>Supports the entire infrastructure of our new site </li></ul></ul><ul><ul><li>Improvements to CMS to enable custom feeds by Editorial and Design </li></ul></ul><ul><li>Stations </li></ul><ul><ul><li>Enables us to serve content to our member stations more easily </li></ul></ul><ul><ul><li>Enables our stations to serve their communities better </li></ul></ul><ul><li>Partners </li></ul><ul><ul><li>Creates new opportunities because - easy to implement with very little integration cost </li></ul></ul><ul><ul><li>Makes existing opportunities easier to maintain and grow </li></ul></ul><ul><li>Public </li></ul><ul><ul><li>Engages the community – part of NPR’s Public Service Mission </li></ul></ul><ul><ul><li>Lots of great widgets, tools, sites built using the API </li></ul></ul>Launch Expectations: Improvements to development efficiencies for NPR.org Some sophisticated stations will use the API Partner integration will be easier The public will do amazing things with the API Actual Results: NPR dramatically improved development efficiencies NPR’s mobile strategy took off Some sophisticated stations have used the API Partner integration has been easier API has facilitated business development opportunities The public has done some interesting things
    41. 41. Output Format Distribution This distribution chart is from June 2009 and does not include NPR consumption. We believe the distribution still applies today.
    42. 42. NPR API : Non-NPRML Output Format Growth
    43. 43. Writable Story API Station/Partner Ingest
    44. 44. Station Content in the NPR API (today)
    45. 45. KLCC Displaying N3 Stories from NPR API
    46. 46. WBUR Displaying N3 Story from NPR API
    47. 47. Public Media API (future)
    48. 48. API Enables Mobile Growth…
    49. 49. Mobile
    50. 50. The NPR API Powers Mobile Products
    51. 51. The Numbers
    52. 52. Different Modes of Development
    53. 53. Why Open Source?
    54. 55. Why Android?
    55. 56. Our Project
    56. 60. NPR News 2.0 for Android
    57. 61. Join Our Community @nprandroid
    58. 62. Questions? <ul><li>To see the API: http:// www.npr.org/api </li></ul><ul><li>To follow the API development: http://www.npr.org/blogs/inside </li></ul><ul><li>To see the NPR News Android app code: http:// code.google.com/p/npr -android-app/ </li></ul>Jeremy Pennycook [email_address] Twitter: @tehpennycook Daniel Jacobson [email_address] Twitter: @daniel_jacobson
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×