NPR: Digital Distribution Strategy: OSCON2010

61
NPR: Digital Distribution Strategy Daniel Jacobson, Director of Application Development Jeremy Pennycook, Operations Manager for Mobile July 23, 2010

description

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.

Transcript of NPR: Digital Distribution Strategy: OSCON2010

Page 1: NPR: Digital Distribution Strategy: OSCON2010

NPR: Digital Distribution Strategy

Daniel Jacobson, Director of Application Development

Jeremy Pennycook, Operations Manager for Mobile

July 23, 2010

Page 2: NPR: Digital Distribution Strategy: OSCON2010

Page View Growth: NPR.org vs. NPR Mobile

NPR News iPhone app

NPR News Android app

Relaunched NPRmobile site

NPRiPad app

NPR MusiciPhone app

API launchedin 2008, at

OSCON

Page 3: NPR: Digital Distribution Strategy: OSCON2010

Architectural Philosophies COPE (Create Once Publish Everywhere)

- COPE drives all other architectural decisions

Build Content Management tools, not Web Publishing tools

- Separate content/data from display/presentation

- Make sure that content is modular/portable

Understand the Atom

- Story is the Atom for NPR

- Stories contain ‘Assets’ (ie. text, audio, video, images, etc.)

- Stories belong to ‘Lists’

Know When to Build and When to Integrate

- Core systems built and/or managed internally

- Other systems depend on cost/benefit

- When possible, use open source solutions

It is better to be incomplete than inaccurate

Page 4: NPR: Digital Distribution Strategy: OSCON2010

System Architecture Supporting COPE

Page 5: NPR: Digital Distribution Strategy: OSCON2010

System Architecture Supporting COPE

Page 6: NPR: Digital Distribution Strategy: OSCON2010

System Architecture Supporting COPE

JavaJSP

Struts

Page 7: NPR: Digital Distribution Strategy: OSCON2010

System Architecture Supporting COPE

R / WMySQL

Page 8: NPR: Digital Distribution Strategy: OSCON2010

System Architecture Supporting COPE

R / OMySQLCluster

NoSQL-likeXML

Repository

Page 9: NPR: Digital Distribution Strategy: OSCON2010

System Architecture Supporting COPE

PHP5

SimpleXMLPHP5

Page 10: NPR: Digital Distribution Strategy: OSCON2010

Distribution of API Usage by Application

PLAYLISTAPI

Page 11: NPR: Digital Distribution Strategy: OSCON2010

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.

Page 12: NPR: Digital Distribution Strategy: OSCON2010

Distribution of API Usage by Application

Core APIs contain the clean API content, closely resembling the data model.

PLAYLISTAPI

Page 13: NPR: Digital Distribution Strategy: OSCON2010

PLAYLISTAPI

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.

Page 14: NPR: Digital Distribution Strategy: OSCON2010

Distribution of API Usage by Application

PLAYLISTAPI

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.

Page 15: NPR: Digital Distribution Strategy: OSCON2010

Inside the Black Box of the API

Page 16: NPR: Digital Distribution Strategy: OSCON2010

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

Page 17: NPR: Digital Distribution Strategy: OSCON2010

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

Page 18: NPR: Digital Distribution Strategy: OSCON2010

Lifecycle of an NPR storyCOPE in the wild

Page 19: NPR: Digital Distribution Strategy: OSCON2010

NPR CMS

Page 20: NPR: Digital Distribution Strategy: OSCON2010

NPR API

Page 21: NPR: Digital Distribution Strategy: OSCON2010

NPR.org

Page 22: NPR: Digital Distribution Strategy: OSCON2010

NPR iPad/Tablet Site

Page 23: NPR: Digital Distribution Strategy: OSCON2010

NPR.org Audio Player

Page 24: NPR: Digital Distribution Strategy: OSCON2010

NPR iPhone App

Page 25: NPR: Digital Distribution Strategy: OSCON2010

NPR Mobile Site

Page 26: NPR: Digital Distribution Strategy: OSCON2010

NPR Android App

Page 27: NPR: Digital Distribution Strategy: OSCON2010

NPR Addict iPhone App

Page 28: NPR: Digital Distribution Strategy: OSCON2010

NewsMap

Page 29: NPR: Digital Distribution Strategy: OSCON2010

Google Chrome Extension

Page 30: NPR: Digital Distribution Strategy: OSCON2010

iGoogle Gadget

Page 31: NPR: Digital Distribution Strategy: OSCON2010

KQED.org

Page 32: NPR: Digital Distribution Strategy: OSCON2010

NorthCountryPublicRadio.org

Page 33: NPR: Digital Distribution Strategy: OSCON2010

KPCC.org

Page 34: NPR: Digital Distribution Strategy: OSCON2010

WBUR.org

Page 35: NPR: Digital Distribution Strategy: OSCON2010

Metrics

Page 36: NPR: Digital Distribution Strategy: OSCON2010

NPR Story API : Requests per Month

- About 20 requests to the Story API every

second

Page 37: NPR: Digital Distribution Strategy: OSCON2010

- NPR API delivers almost 400 stories every second

Slide provided by John Musser of ProgrammableWeb

Page 38: NPR: Digital Distribution Strategy: OSCON2010

API Keys and Consumption by Audience

Page 39: NPR: Digital Distribution Strategy: OSCON2010

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: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

Page 40: NPR: Digital Distribution Strategy: OSCON2010

Output Format Distribution

This distribution chart is from June 2009 and does not include NPR consumption.

We believe the distribution still applies today.

Page 41: NPR: Digital Distribution Strategy: OSCON2010

NPR API : Non-NPRML Output Format Growth

Page 42: NPR: Digital Distribution Strategy: OSCON2010

Writable Story API

Station/Partner Ingest

Page 43: NPR: Digital Distribution Strategy: OSCON2010

Station Content in the NPR API (today)

Page 44: NPR: Digital Distribution Strategy: OSCON2010

KLCC Displaying N3 Stories from NPR API

Page 45: NPR: Digital Distribution Strategy: OSCON2010

WBUR Displaying N3 Story from NPR API

Page 46: NPR: Digital Distribution Strategy: OSCON2010

Public Media API (future)

Page 47: NPR: Digital Distribution Strategy: OSCON2010

API Enables Mobile Growth…

Page 48: NPR: Digital Distribution Strategy: OSCON2010

Mobile

Page 49: NPR: Digital Distribution Strategy: OSCON2010

The NPR API Powers Mobile Products

Page 50: NPR: Digital Distribution Strategy: OSCON2010

The Numbers

Page 51: NPR: Digital Distribution Strategy: OSCON2010

Different Modes of Development

Page 52: NPR: Digital Distribution Strategy: OSCON2010

Why Open Source?

Page 53: NPR: Digital Distribution Strategy: OSCON2010
Page 54: NPR: Digital Distribution Strategy: OSCON2010

Why Android?

Page 55: NPR: Digital Distribution Strategy: OSCON2010

Our Project

Page 56: NPR: Digital Distribution Strategy: OSCON2010
Page 57: NPR: Digital Distribution Strategy: OSCON2010
Page 58: NPR: Digital Distribution Strategy: OSCON2010
Page 59: NPR: Digital Distribution Strategy: OSCON2010

NPR News 2.0 for Android

Page 60: NPR: Digital Distribution Strategy: OSCON2010

Join Our Community

@nprandroid

Page 61: NPR: Digital Distribution Strategy: OSCON2010

Questions?

To see the API: http://www.npr.org/api

To follow the API development: http://www.npr.org/blogs/inside

To see the NPR News Android app code: http://code.google.com/p/npr-android-app/

Daniel Jacobson

[email protected]

Twitter: @daniel_jacobson

Jeremy Pennycook

[email protected]

Twitter: @tehpennycook