reliefweb's journey from rss feed to public api
DESCRIPTION
Software Architect Adam Ross presented "ReliefWeb's Journal from RSS Feed to Public API" at the 2014 API Strategy & Practice Conference in Chicago on September 25. He answers the questions: What is ReliefWeb? Why does it have an API? How was it built? What did it take to open it? What's next?TRANSCRIPT
ReliefWeb’s Journey from RSS Feed to API
9/26/2014
What is ReliefWeb?
Why does it have an API?
How was it built?
What did it take to open it?
What’s next?
What is ReliefWeb
• ReliefWeb is a specialized digital service for the
United Nations Office for the Coordination of
Humanitarian Affairs) established in 1996.
• Global staff of 30 content editors aggregating and
curating content on a daily basis for the
Humanitarian sector.
• Over half a million items, growing by tens of
thousands per year, especially in the community-
sourced areas of jobs and training.
RSS Was Not Enough
• “Here are the last 10 things: build your UI”
• Deep integrations are RSS-driven migrations, you need to build an entire application and be responsible for your own scraped copy.
• This means lots of overhead for innovation
So they Made an API and...
• Built a mobile version of the site
• Built a trends & analytics site to
examine what’s going on in the world
across decades
• Building a new search system on top
of the API
Built on Open SourcePHP
nginx
ElasticSearch
Swagger
Composer
Klein
Elastica
Jenkins
... etc
Especially ElasticSearch
• Provides a wealth of search & analysis
functionality for the API.
• Booming community of tools, especially
monitoring.
• Separately scales from main content storage.
• API app focuses on creating a developer
experience.
• Public data, public need, public innovation.
• Already have a webapp, what more could we need?
• (A systematically managed platform.)
Opening the API
API Provider says...Scale
AnalyticsPolicing
API Consumer says...ReliabilityUsability
DocumentationInvested
Usability & Reliability• Hypermedia
• JSON
• CORS (Browser-friendliness)
• Backwards Compatibility a.k.a.
Forwards Compatibility
• Testing (all the ways)
• Getting here is a new version and
over 80% code change
More People Sharing ReliefWeb’s Mission
• Want people to be able to easily
execute on ideas
• There’s not time to spend days or
weeks learning the system.
• Meaningful usage helps fulfill
ReliefWeb’s goals and drives
technology investment.
Roadmap Teaser
• Infrastructure Upgrade to improve Reliability & Scale
• Usage analytics to target improvements and monitor community impact.
• SDK & Web Widgets to facilitate integration
• Geo & Semantic use cases
reliefweb.intapi.rwlabs.org
PHASE2TECHNOLOGY.COM