NPR’s API:  Create Once Publish Everywhere Zach Brand  @zbrand Sr. Director Technology & Strategy NPR, Digital Media #nprapi
“ From NPR News in Washington..”  –Jack Speer et al
“ From NPR News in Washington..”  –Jack Speer et al X 35M / Week X 784
NPR Digital Media
Today Why You Should Care About COPE Our Digital Media History & Philosophy How COPE works Ten lessons we’ve learned …  including what we did wrong What’s New and Coming Soon in the NPR API
But First, Some Definitions… API: Application Programming Interface COPE (Create Once Publish Everywhere) Flexible Content CrossMedia TransMedia
So Why Should  YOU  Care about Flexible Content? Three Reasons…
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
#2) Getting Found is Getting Harder.. 0 - 50 > 1,000,000,000 > 800,000
#3) …and Everybody Else Is Doing It. …  and Thousands More
Our Principles… Don’t  Attempt  to Build the ‘One System’ COPE (Create Once Publish Everywhere) COPE drives all other architectural decisions Realized at NPR with the NPR News API Content Management Tools &  Presentation Layers Understand Your Atom Story is the Atom for NPR Stories contain ‘Assets’ (ie. text, audio, video, images, etc.) Stories belong to ‘Lists’ It is better to be incomplete than inaccurate
Good Tools Good People … Flexible Content
1997 (No CMS)
 
2003 (CMS)
 
2005 (CMS)
 
2008 (API)
NPR’s Target Audiences for the API Ourselves  Supports the entire infrastructure of our new site Improvements to CMS to enable custom feeds by Editorial and Design Stations Enables us to serve content to our member stations more easily Enables our stations to serve their communities better Partners Creates new opportunities because - easy to implement with very little integration cost Makes existing opportunities easier to maintain and grow Public Engages the community – part of NPR’s Public Service Mission Lots of great widgets, tools, sites built using the API 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
The Life of a (FLEXIBLE) Story at NPR 1 2 3 4 CMS API Presentation Layers
1: NPR CMS
2: NPR API
3: API    Presentation Layers (or other Apps)
4: Examples of Presentation Layers
iPhone App Android App Mobile Site
NPR.org Audio Player
Google Chrome Extension
The Life of a (FLEXIBLE) Story at NPR 1 2 3 4 CMS API Presentation Layers
System Architecture Supporting COPE (2008)
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
 
WBUR.org
Connecticut Public Broadcasting Photos Courtesy Derik Elis, CBTV NPR API CPTV’s Drupal  Based CMS Website
So What did We Learn….
#1 Flexible Content is Design Agnostic Home Page Design Pre-API Launch Home Page Design Post-API Launch
And Good Design Requires Flexibility Too… You Still Have to Make the Presentation Compelling
“ From Washington DC…  this is NPR”
 
 
#2 Content & Technology Are Inextricably Linked  Good  Tools Good People … Flexible  Content
 
 
 
 
A thousand words of COPE
 
 
 
 
 
 
#3 Team structure based on Tech/Content link
#3 Team structure should recognize Tech/Content link Good Tools Good People … Flexible Content
 
“ 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
#4  Its an investment … Figuring it out… US Election Related Traffic Bumps
…  Not Magic, but Does Allow Cool Things
HTML5 Version of NPR.org (npr.org/tablet)
#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
NPR Addict iPhone App
#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
Paid Dev Public Dev $$$
#5  It Does Drive the Business Forward Feb 2011:  Over 2  Billion  Stories Served by API
#7 People are interested in  Examples  more than Documentation
#8 You will eat your own dog food
#9 Our Architecture (2008) Struggled with Change
The New Architecture of COPE
The New Architecture of COPE
The New Architecture of COPE
The New Architecture of COPE
The New Architecture of COPE
The New Architecture of COPE
The New Architecture of COPE
Results of New Architecture Response time is 22% faster  (0.45 -> 0.35s) Eliminated many (slightly) inaccurate returns Faster Development on the API Cleaner Separation of Output formats No more use of Xpath Queries Easier Ramp up for New Developers
#10  There are Lots of Lame Excuses Why Not People Can Steal Your Content Leadership Doesn’t understand what an API is / Benefits  It Building an API Doesn’t Result in new Product for your Customers You’ll have to Replace CMS You Don’t Have the Time/Money/Resources Your Data is Structured for it Today The Benefit is intangible It’s Too Risky Requires Too Much Investment Too Many Other Priorities
What’s New and What’s Coming Collections <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>
What’s New and What’s Coming Collections Image Crops <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>
What’s New and What’s Coming Collections Image Crops standard: 4:3 square: 1:1 wide: 16:9 brick: 300:138 alt promo: 4:3 vertical: 3:4 New Output Types are Easier Plists (Binary) <?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>
What’s New and What’s Coming Collections Image Crops standard: 4:3 square: 1:1 wide: 16:9 brick: 300:138 alt promo: 4:3 vertical: 3:4 New Output Types are Easier Plists (Binary)
What’s New and What’s Coming Collections Image Crops standard: 4:3 square: 1:1 wide: 16:9 brick: 300:138 alt promo: 4:3 vertical: 3:4 New Output Types are Easier Plists (Binary) More Ingest Partners… and a Public Media Platform
To Recap Content & Technology Are Inextricably Linked Team Structure and Process Should Recognize this To Be ‘Findable’  Your Content Should Be Flexible. Flexible Content (i.e. Embraces COPE): Requires An Investment x2 Improves Editorial Efficiency Will Help Drive Growth / Relevancy Revolutionizes Your Biz Dev Creates Opportunities with Public Accelerates Your Tech Development
Questions? Email:  [email_address] Twitter: @zbrand API :  www.npr.org/api Blog  http://www.npr.org/blogs/inside PS Rate me on SXSW    Mobile App or Website PPS:  We’re Hiring SW Architect SW Programmers Designers UX Specialist

NPR API: Create Once Publish Everywhere

  • 1.
    NPR’s API: Create Once Publish Everywhere Zach Brand @zbrand Sr. Director Technology & Strategy NPR, Digital Media #nprapi
  • 2.
    “ From NPRNews in Washington..” –Jack Speer et al
  • 3.
    “ From NPRNews in Washington..” –Jack Speer et al X 35M / Week X 784
  • 4.
  • 5.
    Today Why YouShould Care About COPE Our Digital Media History & Philosophy How COPE works Ten lessons we’ve learned … including what we did wrong What’s New and Coming Soon in the NPR API
  • 6.
    But First, SomeDefinitions… API: Application Programming Interface COPE (Create Once Publish Everywhere) Flexible Content CrossMedia TransMedia
  • 7.
    So Why Should YOU Care about Flexible Content? Three Reasons…
  • 8.
    1) It’s WorkedWell 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.
    #2) Getting Foundis Getting Harder.. 0 - 50 > 1,000,000,000 > 800,000
  • 10.
    #3) …and EverybodyElse Is Doing It. … and Thousands More
  • 11.
    Our Principles… Don’t Attempt to Build the ‘One System’ COPE (Create Once Publish Everywhere) COPE drives all other architectural decisions Realized at NPR with the NPR News API Content Management Tools & Presentation Layers Understand Your Atom Story is the Atom for NPR Stories contain ‘Assets’ (ie. text, audio, video, images, etc.) Stories belong to ‘Lists’ It is better to be incomplete than inaccurate
  • 12.
    Good Tools GoodPeople … Flexible Content
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
    NPR’s Target Audiencesfor the API Ourselves Supports the entire infrastructure of our new site Improvements to CMS to enable custom feeds by Editorial and Design Stations Enables us to serve content to our member stations more easily Enables our stations to serve their communities better Partners Creates new opportunities because - easy to implement with very little integration cost Makes existing opportunities easier to maintain and grow Public Engages the community – part of NPR’s Public Service Mission Lots of great widgets, tools, sites built using the API 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
  • 21.
    The Life ofa (FLEXIBLE) Story at NPR 1 2 3 4 CMS API Presentation Layers
  • 22.
  • 23.
  • 24.
    3: API  Presentation Layers (or other Apps)
  • 25.
    4: Examples ofPresentation Layers
  • 26.
    iPhone App AndroidApp Mobile Site
  • 27.
  • 28.
  • 29.
    The Life ofa (FLEXIBLE) Story at NPR 1 2 3 4 CMS API Presentation Layers
  • 30.
  • 31.
  • 32.
    System Architecture SupportingCOPE Java JSP Struts
  • 33.
  • 34.
    System Architecture SupportingCOPE R / O MySQL Cluster NoSQL-like XML Repository
  • 35.
    System Architecture SupportingCOPE PHP5 SimpleXML PHP5
  • 36.
  • 37.
  • 38.
    Connecticut Public BroadcastingPhotos Courtesy Derik Elis, CBTV NPR API CPTV’s Drupal Based CMS Website
  • 39.
    So What didWe Learn….
  • 40.
    #1 Flexible Contentis Design Agnostic Home Page Design Pre-API Launch Home Page Design Post-API Launch
  • 41.
    And Good DesignRequires Flexibility Too… You Still Have to Make the Presentation Compelling
  • 42.
    “ From WashingtonDC… this is NPR”
  • 43.
  • 44.
  • 45.
    #2 Content &Technology Are Inextricably Linked Good Tools Good People … Flexible Content
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
    #3 Team structurebased on Tech/Content link
  • 58.
    #3 Team structureshould recognize Tech/Content link Good Tools Good People … Flexible Content
  • 59.
  • 60.
    “ I hadto actually purchase a book to learn the API and write the client.” Shawn Fanning of Napster Fame on MS API #4 …. Its an investment
  • 61.
    #4 Itsan investment … Figuring it out… US Election Related Traffic Bumps
  • 62.
    … NotMagic, but Does Allow Cool Things
  • 63.
    HTML5 Version ofNPR.org (npr.org/tablet)
  • 64.
    #5 ItDoes 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
  • 65.
  • 66.
    #5 ItDoes 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
  • 67.
  • 68.
    #5 ItDoes Drive the Business Forward Feb 2011: Over 2 Billion Stories Served by API
  • 69.
    #7 People areinterested in Examples more than Documentation
  • 70.
    #8 You willeat your own dog food
  • 71.
    #9 Our Architecture(2008) Struggled with Change
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
    Results of NewArchitecture Response time is 22% faster (0.45 -> 0.35s) Eliminated many (slightly) inaccurate returns Faster Development on the API Cleaner Separation of Output formats No more use of Xpath Queries Easier Ramp up for New Developers
  • 80.
    #10 Thereare Lots of Lame Excuses Why Not People Can Steal Your Content Leadership Doesn’t understand what an API is / Benefits It Building an API Doesn’t Result in new Product for your Customers You’ll have to Replace CMS You Don’t Have the Time/Money/Resources Your Data is Structured for it Today The Benefit is intangible It’s Too Risky Requires Too Much Investment Too Many Other Priorities
  • 81.
    What’s New andWhat’s Coming Collections <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>
  • 82.
    What’s New andWhat’s Coming Collections Image Crops <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>
  • 83.
    What’s New andWhat’s Coming Collections Image Crops standard: 4:3 square: 1:1 wide: 16:9 brick: 300:138 alt promo: 4:3 vertical: 3:4 New Output Types are Easier Plists (Binary) <?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>
  • 84.
    What’s New andWhat’s Coming Collections Image Crops standard: 4:3 square: 1:1 wide: 16:9 brick: 300:138 alt promo: 4:3 vertical: 3:4 New Output Types are Easier Plists (Binary)
  • 85.
    What’s New andWhat’s Coming Collections Image Crops standard: 4:3 square: 1:1 wide: 16:9 brick: 300:138 alt promo: 4:3 vertical: 3:4 New Output Types are Easier Plists (Binary) More Ingest Partners… and a Public Media Platform
  • 86.
    To Recap Content& Technology Are Inextricably Linked Team Structure and Process Should Recognize this To Be ‘Findable’ Your Content Should Be Flexible. Flexible Content (i.e. Embraces COPE): Requires An Investment x2 Improves Editorial Efficiency Will Help Drive Growth / Relevancy Revolutionizes Your Biz Dev Creates Opportunities with Public Accelerates Your Tech Development
  • 87.
    Questions? Email: [email_address] Twitter: @zbrand API : www.npr.org/api Blog http://www.npr.org/blogs/inside PS Rate me on SXSW Mobile App or Website PPS: We’re Hiring SW Architect SW Programmers Designers UX Specialist

Editor's Notes

  • #10 Android 120K Apple 250K RIM 7K Get Jar 68K Handango 190K PocketGear 140K