Web2expo 2011u

2,448 views

Published on

Presentation from Web2.0 Expo NY 2011.
Good architecture of systems and flexibility of content has also allowed NPR to have the freedom and agility to quickly deploy solid user experience and elegant design to multiple platforms. This presentation will cover how NPR improved the code inside its API to be more efficient, while meeting new and evolving product needs

Published in: Technology, Business
1 Comment
8 Likes
Statistics
Notes
No Downloads
Views
Total views
2,448
On SlideShare
0
From Embeds
0
Number of Embeds
98
Actions
Shares
0
Downloads
0
Comments
1
Likes
8
Embeds 0
No embeds

No notes for slide
  • By 2020:22 billion internet connected devices6 billion mobile phones2.5 billion televisions1.1 billion cars
  • iPhone news app.
  • iPhone music story page.
  • iPad app. home.
  • iPad app. story.
  • Chrome app. story page.
  • iPhone music story page.
  • iPhone music story page.
  • iPhone music story page.
  • iPhone music story page.
  • iPhone music story page.
  • iPhone music story page.
  • iPhone music story page.
  • iPhone music story page.
  • iPhone music story page.
  • Web2expo 2011u

    1. 1. NPR Everywhere: Even Better APIs and Content Strategies<br />Zach Brand<br />NPR, Digital Media@zbrand #NPRAPI<br />
    2. 2. “From NPR News in Washington..” –Jack Speer et al<br />X 784<br />X 35M / Week<br />
    3. 3. NPR Digital Media<br />
    4. 4. But First, Some Definitions…<br />CrossMedia<br />CMS: Content Management System<br />API: Application Programming Interface<br />COPE (Create Once Publish Everywhere)<br />Flexible Content<br />
    5. 5. Why Have A Crossmedia Strategy?<br />0 - 50<br />> 1,000,000,000<br />~ 1,000,000<br />
    6. 6.
    7. 7. Our Technical Principles…<br /><ul><li>Don’t Attempt to Build the ‘One System’
    8. 8. COPE (Create Once Publish Everywhere)
    9. 9. COPE drives all other architectural decisions
    10. 10. Realized at NPR with the NPR News API
    11. 11. Content Management Tools & Presentation Layers
    12. 12. Understand Your Atom
    13. 13. Story is the Atom for NPR
    14. 14. Stories contain ‘Assets’ (ie. text, audio, video, images, etc.)
    15. 15. Stories belong to ‘Lists’
    16. 16. It is better to be incomplete than inaccurate</li></li></ul><li>“Everything should be an API”<br />FCC managing director Steve Van Roekel<br />
    17. 17. Goals for NPR API<br />Improve development efficiencies<br />Distribute content to stations and partners<br />Allow the public to do amazing things with the API<br />Greater flexibility in what we do with NPR content<br />
    18. 18. The Life of a (FLEXIBLE) Story at NPR<br />PresentationLayers<br />CMS<br />API<br />1<br />2<br />3<br />4<br />
    19. 19.
    20. 20. (1) CMS: The Story is Born<br />
    21. 21. (2) API: It Becomes Data..<br />
    22. 22. (3) Distribution: Delivery Service<br />
    23. 23. (4) Presentation Layers…<br />
    24. 24. iPhone Music App<br />
    25. 25. iPhone Music App<br />
    26. 26. iPad App<br />
    27. 27. iPad App<br />
    28. 28. HTML5 site<br />
    29. 29. Station Website<br />
    30. 30. The Life of a (FLEXIBLE) Story at NPR<br />PresentationLayers<br />CMS<br />API<br />1<br />2<br />3<br />4<br />
    31. 31. <br />
    32. 32. Lesson: COPE!<br /><br />
    33. 33. The NPR Architecture of COPE<br />
    34. 34. The NPR Architecture of COPE<br />
    35. 35. The NPR Architecture of COPE<br />
    36. 36. The NPR Architecture of COPE<br />
    37. 37. The NPR Architecture of COPE<br />
    38. 38. The NPR Architecture of COPE<br />
    39. 39. Goals for NPR API<br />Improve development efficiencies<br />Distribute content to stations and partners<br />Allow the public to do amazing things with the API<br />Greater flexibility in what we do with NPR content<br />
    40. 40. Goals for NPR API<br />Case Studies of the ^<br />Improve development efficiencies?<br />Distribute content to stations and partners?<br />Allow the public to do amazing things with the API?<br />Greater flexibility in what we do with NPR content?<br />
    41. 41. Has NPR’s API improvedApp Dev?<br />
    42. 42. Lesson: Enabled Mobile<br />Facebook Integration<br />NPR Music<br />iPhone app<br />NPR<br />iPad app<br />Relaunched NPR<br />mobile site<br />NPR News <br />Android app<br />APILaunch<br />2008<br />Player 2.0<br />NPR MusicRemix<br />NPR BlogsMade API Friendly<br />Homepage Improvements<br />Story PageImprovements<br />NPR News <br />iPhone app<br />
    43. 43.
    44. 44. Lesson:Gotta figure out how to use it.<br />Lesson:Be Scalable<br />
    45. 45. Lesson: Flexible Architecture<br />A P I <br />MySQL Instance<br />Web Server<br />Web Server<br />Content Management System<br />Cache<br />Tier<br />Web Server<br />Web Server<br />MySQL Instance<br />Single Oracle Database<br />Server<br />(Point of Failure)<br />Web Server<br />Web Server<br />MySQL Instance<br />Web Server<br />Web Server<br />Web Server<br />Web Server<br />MySQL Instance<br />Web Server<br />Web Server<br />MySQL Instance<br />Web Server<br />Web Server<br />
    46. 46. Lesson: Maintainability<br />
    47. 47. Better Architecture<br />
    48. 48. Results of New Architecture<br />Response time is 22% faster (0.45 -> 0.35s)<br />Eliminated many (slightly) inaccurate returns<br />Faster Development on the API<br />Cleaner Separation of Output formats<br />No more use of Xpath Queries<br />Easier Ramp up for New Developers<br />
    49. 49. Lesson: Its Not Just Tech..<br />FlexibleContent<br />Tools<br />People<br />
    50. 50.
    51. 51.
    52. 52. Lesson: A thousand words matter<br />
    53. 53.
    54. 54.
    55. 55. Lesson: Have PeopleWorkonStuffthatMatters<br />
    56. 56.
    57. 57.
    58. 58. Image Data in the API<br /><image id="133849355" type="primary" width="200" src="http://media.npr.org/img/a1.jpg" hasBorder="false"><br /><crop type="square" src="http://media.npr.org/img/as.jpg" height="440" width="440"/><br /><crop type=”wide" src="http://media.npr.org/img/aw.jpg" height="400" width=”225"/><br /></image><br />
    59. 59. Case Studies of NPR API<br />Improve development efficiencies?<br />Distribute content to stations and partners?<br />Allow the public to do amazing things with the API?<br />Greater flexibility in what we do with NPR content?<br />
    60. 60. How has NPR’s API served Partners?<br />
    61. 61.
    62. 62. Nationally-Broadcast Reports by Martha Woodroof<br />Martha Woodroof<br />
    63. 63. Connecticut Public Broadcasting <br />Photos Courtesy Derik Elis, CBTV<br />
    64. 64.
    65. 65. Lesson: It’sHard to knowhow it will go.<br />
    66. 66. Lesson: Changes and Deletes<br />
    67. 67. How has NPR’s API served Partners?<br />
    68. 68. Lesson: Ingest is Tricky<br />DRM<br />Data/MetaData Standards<br /><ul><li>Categories</li></ul>Uptime/Performance<br />Integration & QA<br />
    69. 69. Lesson: Tools/Support is Big Deal<br />
    70. 70. Case Studies of NPR API<br />Improve development efficiencies?<br />Distribute content to stations and partners?<br />Allow the public to do amazing things with the API?<br />Greater flexibility in what we do with NPR content?<br />
    71. 71. Has the API resulted in amazing ‘free’ stuff?<br />
    72. 72. NPR Addict iPhone App<br />
    73. 73. Lesson: You’ll drink your own champagne<br />
    74. 74. Paid Dev<br />Public Dev<br />$$$<br />
    75. 75. Lesson: Opportunity to work with the public<br />
    76. 76. Case Studies of NPR API<br />Improve development efficiencies?<br />Distribute content to stations and partners?<br />Allow the public to do amazing things with the API?<br />Greater flexibility in what we do with NPR content?<br />
    77. 77. Has the API made our content flexible?<br />
    78. 78. More than ‘Story’ Pages<br />
    79. 79.
    80. 80.
    81. 81.
    82. 82.
    83. 83. Lesson: New Features…New Versions<br />
    84. 84. To Recap<br /><ul><li>Improve Development Efficiency?
    85. 85. Yes it Does!
    86. 86. Flexible Content Helps Solve the Mobile Problem
    87. 87. An API Requires Investment x2
    88. 88. Content & Technology Are Inextricably Linked
    89. 89. Creates New Editorial & Content Challenges
    90. 90. Needs to be Built for Maintainability</li></li></ul><li>To Recap<br /><ul><li>Improve Development Efficiency?
    91. 91. Improve Distribution to Partners?
    92. 92. Absolutely!
    93. 93. Should Support a Range of User Capabilities
    94. 94. Expedites Business Development
    95. 95. Ingestion has Unique Challenges
    96. 96. Updates, Deletes, & Omissions All Cause Problems.</li></li></ul><li>To Recap<br /><ul><li>Improve Development Efficiency?
    97. 97. Improve Distribution to Partners?
    98. 98. Public Will Do Your Work For you?
    99. 99. They Might Do Some Things
    100. 100. You Must Engage with them Actively
    101. 101. But They Will Work with You.</li></li></ul><li>To Recap<br /><ul><li>Improve Development Efficiency?
    102. 102. Improve Distribution to Partners?
    103. 103. Public Will Do Your Work For You?
    104. 104. Greater Flexibility in What You Can do with Your Content
    105. 105. Yes … But Not Everything
    106. 106. Understanding Your ‘Atom’ helps & also Defines Limits
    107. 107. Content Needs Expands = API Expansion
    108. 108. You’ll Need Versioning
    109. 109. APIs may Beget More APIs</li></li></ul><li>Questions? #NPRAPI<br />PS: We’re Hiring in DC & Boston<br />@NPRJobs | http://www.npr.org/about/careers/<br />Email: zbrand@npr.org<br />Twitter: @zbrand<br />API : www.npr.org/api<br />Blog http://www.npr.org/blogs/inside<br />

    ×