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.

NPR API: Create Once Publish Everywhere

46,988 views

Published on

From SXSW. NPR's API: Create Once Publish Everywhere. Discover how and why NPR's API works.

Published in: Technology
  • CHENNAI GST ROAD - ON ROAD PROPERTY - WITHSTOOD THE ONSLAUGHT. FOR SALE - MAIN ROAD PROPERTY - IN CHENNAI, TAMIL NADU - ENTRY FROM NH-45. Prime Vacant Land 5.8 Grounds (13940 sq.ft.) in Singaperumal Koil, Chennai, India on Main GST Road with direct entry from GST Road. Mahindra World City is 1.2 Kms. on one side and Ford Motor Co. is 3.2 Kms. on the other side. Plot with direct entrance from Wide National Highway NH-45. Frontage Width is 46 feet, Rear Width is 56 feet and length is 286 feet. Companies like BMW, Nissan-Renault, Daimler, Enfield, Nokia, Siemens, Hyundai, Ford are in close proximity to this place. The Property has a Security Room with 3-Phase Power Supply and has a Compound Wall of about 11 feet on all sides with a 15 feet gate in the front. Since the Land is located amidst various International Companies, it will be ideally suited for Offices, IT/ITES/BPO Companies, Residential Apartments, etc. Very Ideally suited for Investment Purposes, Immediate Construction of Residential Apartments, Show Rooms, Departmental Stores, Hospitals, Logistics, etc. Appreciation Guaranteed on Investment. In case of interest, please contact:- Mr. K.Aravamudan, Mob:- 0 – 94440 12056. e.mail : hiraytech@yahoo.co.in VERY IMPORTANT NOTE:- The above Site is not affected by the heavy Rains and Thunder Storms that lashed Chennai just recently.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • What is the cropping tool on slides 54-56?

    Thanks!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • The audio for this presentation is available at http://schedule.sxsw.com/2011/events/event_IAP7331
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

NPR API: Create Once Publish Everywhere

  1. 1. NPR’s API: Create Once Publish Everywhere <ul><li>Zach Brand @zbrand </li></ul><ul><li>Sr. Director Technology & Strategy </li></ul><ul><li>NPR, Digital Media </li></ul><ul><li>#nprapi </li></ul>
  2. 2. “ From NPR News in Washington..” –Jack Speer et al
  3. 3. “ From NPR News in Washington..” –Jack Speer et al X 35M / Week X 784
  4. 4. NPR Digital Media
  5. 5. Today <ul><li>Why You Should Care About COPE </li></ul><ul><li>Our Digital Media History & Philosophy </li></ul><ul><li>How COPE works </li></ul><ul><li>Ten lessons we’ve learned </li></ul><ul><li>… including what we did wrong </li></ul><ul><li>What’s New and Coming Soon in the NPR API </li></ul>
  6. 6. But First, Some Definitions… <ul><li>API: Application Programming Interface </li></ul><ul><li>COPE (Create Once Publish Everywhere) </li></ul><ul><li>Flexible Content </li></ul><ul><li>CrossMedia </li></ul><ul><li>TransMedia </li></ul>
  7. 7. So Why Should YOU Care about Flexible Content? Three Reasons…
  8. 8. 1) It’s Worked Well For Us… NPR News iPhone app NPR News Android app Relaunched NPR mobile site NPR iPad app NPR Music iPhone app API launched in 2008 NPR Music Remix NPR Blogs Made API Friendly Facebook Integration Player 2.0 Homepage Improvements Story Page Improvements
  9. 9. #2) Getting Found is Getting Harder.. 0 - 50 > 1,000,000,000 > 800,000
  10. 10. #3) …and Everybody Else Is Doing It. … and Thousands More
  11. 11. Our Principles… <ul><li>Don’t Attempt to Build the ‘One System’ </li></ul><ul><li>COPE (Create Once Publish Everywhere) </li></ul><ul><ul><li>COPE drives all other architectural decisions </li></ul></ul><ul><ul><li>Realized at NPR with the NPR News API </li></ul></ul><ul><li>Content Management Tools & Presentation Layers </li></ul><ul><li>Understand Your 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>It is better to be incomplete than inaccurate </li></ul>
  12. 12. Good Tools Good People … Flexible Content
  13. 13. <ul><li>1997 </li></ul><ul><li>(No CMS) </li></ul>
  14. 15. <ul><li>2003 </li></ul><ul><li>(CMS) </li></ul>
  15. 17. <ul><li>2005 </li></ul><ul><li>(CMS) </li></ul>
  16. 19. <ul><li>2008 </li></ul><ul><li>(API) </li></ul>
  17. 20. 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
  18. 21. The Life of a (FLEXIBLE) Story at NPR 1 2 3 4 CMS API Presentation Layers
  19. 22. 1: NPR CMS
  20. 23. 2: NPR API
  21. 24. 3: API  Presentation Layers (or other Apps)
  22. 25. 4: Examples of Presentation Layers
  23. 26. iPhone App Android App Mobile Site
  24. 27. NPR.org Audio Player
  25. 28. Google Chrome Extension
  26. 29. The Life of a (FLEXIBLE) Story at NPR 1 2 3 4 CMS API Presentation Layers
  27. 30. System Architecture Supporting COPE (2008)
  28. 31. System Architecture Supporting COPE
  29. 32. System Architecture Supporting COPE Java JSP Struts
  30. 33. System Architecture Supporting COPE R / W MySQL
  31. 34. System Architecture Supporting COPE R / O MySQL Cluster NoSQL-like XML Repository
  32. 35. System Architecture Supporting COPE PHP5 SimpleXML PHP5
  33. 37. WBUR.org
  34. 38. Connecticut Public Broadcasting Photos Courtesy Derik Elis, CBTV NPR API CPTV’s Drupal Based CMS Website
  35. 39. So What did We Learn….
  36. 40. #1 Flexible Content is Design Agnostic Home Page Design Pre-API Launch Home Page Design Post-API Launch
  37. 41. And Good Design Requires Flexibility Too… <ul><li>You Still Have to Make the Presentation Compelling </li></ul>
  38. 42. “ From Washington DC… this is NPR”
  39. 45. #2 Content & Technology Are Inextricably Linked Good Tools Good People … Flexible Content
  40. 50. A thousand words of COPE
  41. 57. #3 Team structure based on Tech/Content link
  42. 58. #3 Team structure should recognize Tech/Content link Good Tools Good People … Flexible Content
  43. 60. “ I had to actually purchase a book to learn the API and write the client.” Shawn Fanning of Napster Fame on MS API #4 …. Its an investment
  44. 61. #4 Its an investment … Figuring it out… US Election Related Traffic Bumps
  45. 62. … Not Magic, but Does Allow Cool Things
  46. 63. HTML5 Version of NPR.org (npr.org/tablet)
  47. 64. #5 It Does Drive the Business Forward 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
  48. 65. NPR Addict iPhone App
  49. 66. #5 It Does Drive the Business Forward 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 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 We’ve been able to do amazing things with the public
  50. 67. Paid Dev Public Dev $$$
  51. 68. #5 It Does Drive the Business Forward Feb 2011: Over 2 Billion Stories Served by API
  52. 69. #7 People are interested in Examples more than Documentation
  53. 70. #8 You will eat your own dog food
  54. 71. #9 Our Architecture (2008) Struggled with Change
  55. 72. The New Architecture of COPE
  56. 73. The New Architecture of COPE
  57. 74. The New Architecture of COPE
  58. 75. The New Architecture of COPE
  59. 76. The New Architecture of COPE
  60. 77. The New Architecture of COPE
  61. 78. The New Architecture of COPE
  62. 79. Results of New Architecture <ul><ul><li>Response time is 22% faster (0.45 -> 0.35s) </li></ul></ul><ul><ul><li>Eliminated many (slightly) inaccurate returns </li></ul></ul><ul><ul><li>Faster Development on the API </li></ul></ul><ul><ul><li>Cleaner Separation of Output formats </li></ul></ul><ul><ul><li>No more use of Xpath Queries </li></ul></ul><ul><ul><li>Easier Ramp up for New Developers </li></ul></ul>
  63. 80. #10 There are Lots of Lame Excuses Why Not <ul><li>People Can Steal Your Content </li></ul><ul><li>Leadership Doesn’t understand what an API is / Benefits </li></ul><ul><li>It Building an API Doesn’t Result in new Product for your Customers </li></ul><ul><li>You’ll have to Replace CMS </li></ul><ul><li>You Don’t Have the Time/Money/Resources </li></ul><ul><li>Your Data is Structured for it Today </li></ul><ul><li>The Benefit is intangible </li></ul><ul><li>It’s Too Risky </li></ul><ul><li>Requires Too Much Investment </li></ul><ul><li>Too Many Other Priorities </li></ul>
  64. 81. What’s New and What’s Coming <ul><li>Collections </li></ul><collection> <title> New Mix: Bright Eyese, G-Side, And More</title> <member id=&quot;132652688&quot;> <image refId=&quot;132652709&quot; crop=&quot;square&quot; num=&quot;1&quot;/> <title num=&quot;2&quot;><![CDATA[Nat Geo]]</title> <audio refId=&quot;132652704&quot; num=&quot;3&quot;/> <song refId=&quot;132649319&quot; num=&quot;4&quot;/> <memberText num=&quot;5&quot;><![CDATA [<p><em><strong>Advisory: </strong> This song contains explicit language not suitable for all audiences.</em></p>]] </memberText> <link refId=&quot;132652740&quot; num=&quot;6&quot;/> </member>
  65. 82. What’s New and What’s Coming <ul><li>Collections </li></ul><ul><li>Image Crops </li></ul><image id=&quot;133849355&quot; type=&quot;primary&quot; width=&quot;200&quot; src=&quot;http://media.npr.org/img/a.jpg&quot; hasBorder=&quot;false&quot;> <crop type=&quot;square&quot; src=&quot;http://media.npr.org/img/a.jpg&quot; height=&quot;440&quot; width=&quot;440&quot;/> <crop type=”wide&quot; src=&quot;http://media.npr.org/img/a.jpg&quot; height=&quot;400&quot; width=”225&quot;/> </image>
  66. 83. What’s New and What’s Coming <ul><li>Collections </li></ul><ul><li>Image Crops </li></ul><ul><ul><li>standard: 4:3 </li></ul></ul><ul><ul><li>square: 1:1 </li></ul></ul><ul><ul><li>wide: 16:9 </li></ul></ul><ul><ul><li>brick: 300:138 </li></ul></ul><ul><ul><li>alt promo: 4:3 </li></ul></ul><ul><ul><li>vertical: 3:4 </li></ul></ul><ul><li>New Output Types are Easier </li></ul><ul><ul><li>Plists (Binary) </li></ul></ul><?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <!DOCTYPE plist PUBLIC &quot;-//Apple Computer//DTD PLIST 1.0//EN&quot; &quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd&quot;> <plist version=&quot;1.0&quot;> <dict> <key>Story_ID</key> <integer>12321312</integer> <key>Photo_ID</key> <integer>234523452345</integer> <key>Category</key> <string>Politics</string> </dict> </plist>
  67. 84. What’s New and What’s Coming <ul><li>Collections </li></ul><ul><li>Image Crops </li></ul><ul><ul><li>standard: 4:3 </li></ul></ul><ul><ul><li>square: 1:1 </li></ul></ul><ul><ul><li>wide: 16:9 </li></ul></ul><ul><ul><li>brick: 300:138 </li></ul></ul><ul><ul><li>alt promo: 4:3 </li></ul></ul><ul><ul><li>vertical: 3:4 </li></ul></ul><ul><li>New Output Types are Easier </li></ul><ul><ul><li>Plists (Binary) </li></ul></ul>
  68. 85. What’s New and What’s Coming <ul><li>Collections </li></ul><ul><li>Image Crops </li></ul><ul><ul><li>standard: 4:3 </li></ul></ul><ul><ul><li>square: 1:1 </li></ul></ul><ul><ul><li>wide: 16:9 </li></ul></ul><ul><ul><li>brick: 300:138 </li></ul></ul><ul><ul><li>alt promo: 4:3 </li></ul></ul><ul><ul><li>vertical: 3:4 </li></ul></ul><ul><li>New Output Types are Easier </li></ul><ul><ul><li>Plists (Binary) </li></ul></ul><ul><li>More Ingest Partners… and a Public Media Platform </li></ul>
  69. 86. To Recap <ul><li>Content & Technology Are Inextricably Linked </li></ul><ul><ul><ul><ul><li>Team Structure and Process Should Recognize this </li></ul></ul></ul></ul><ul><ul><li>To Be ‘Findable’ Your Content Should Be Flexible. </li></ul></ul><ul><ul><li>Flexible Content (i.e. Embraces COPE): </li></ul></ul><ul><ul><ul><li>Requires An Investment x2 </li></ul></ul></ul><ul><ul><ul><li>Improves Editorial Efficiency </li></ul></ul></ul><ul><ul><ul><li>Will Help Drive Growth / Relevancy </li></ul></ul></ul><ul><ul><ul><li>Revolutionizes Your Biz Dev </li></ul></ul></ul><ul><ul><ul><li>Creates Opportunities with Public </li></ul></ul></ul><ul><ul><ul><li>Accelerates Your Tech Development </li></ul></ul></ul>
  70. 87. Questions? <ul><li>Email: [email_address] </li></ul><ul><li>Twitter: @zbrand </li></ul><ul><li>API : www.npr.org/api </li></ul><ul><li>Blog http://www.npr.org/blogs/inside </li></ul><ul><li>PS Rate me on SXSW Mobile App or Website </li></ul><ul><li>PPS: We’re Hiring </li></ul><ul><li>SW Architect </li></ul><ul><li>SW Programmers </li></ul><ul><li>Designers </li></ul><ul><li>UX Specialist </li></ul>

×