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.

Want Your API to Stick? Try Story-Telling...


Published on

Design your API at Level 4. Focus on User Activities and Story-Telling

  • Be the first to comment

Want Your API to Stick? Try Story-Telling...

  1. 1. Want Your API to Stick?Try Story-Telling... Once Upon A Time...PatCappelaerepat@cappelaere.comwww.vightel.comtwitter: @cappelaere 1
  2. 2. Rationale• Certain parts of the monkey’s brains are activated both when the monkeys perform an action and when they witness other monkeys performing that same action.• We live through the actions and stories of others. Good stories are more memorable• An API that helps users tell stories will create stronger emotional relevance than resource-centric API Your API needs to enable users to tell GREAT Stories This will increases the likelihood that it will be accepted and adopted. 2
  3. 3. Why Do People Love Facebook?• Gives People An Opportunity To Tell Great Stories (with Pictures)• Gives People An Opportunity To Read Other People’s Good And Bad Stories (with Pictures) 3
  4. 4. Emil’s Story• Emil Cherrington, CATHALAC (Panama) also on Facebook Belize Group• Emil tasked EO1 satellite• Emil downloaded observation• Emil processed imagery• Emil shared imagery Story Went Viral... Environment Ministry Was Alerted... Spanish Company Was Fined For Breaking The Law 4
  5. 5. Story Corollary• Belize Group Users Read Emil’s Story• They Now Know They Can Duplicate Emil’s Activities During a Disaster• They Shared it With Their Friends• Now They Are Empowered... 5
  6. 6. Stories Can Be Simple...• {user} {verb} {object} {context} 6
  7. 7. OpenGeoSpatial Consortium Activities Examples {user | system} {acquired} {observation} {user} {searches for} {observations | products | maps | features | …} {user} {is viewing} {an observation | map | product | …} {user} {likes} {observation} {user} {processed} {observation} {user} {executed} {algorithm} {observation} {user} {downloaded} {observations | products | map layer} {user} {ordered} {imagery product} {user} {requested feasibility) {location} {user} {requested imaging) {location} {user} {collaborates with} {user} 7
  8. 8. Stories Are Easy To Generate and Share• Activity Streams Standard • Facebook, MySpaces, Google Buzz, Yammer, Atlassian, Superfeedr, Windows Live, IBM, BBC, Drupal... 8
  9. 9. Current State of the API REST Level 3 Resources HTTP Verbs, Caching, Hypermedia Controls 9
  10. 10. Activity-Oriented Architecture - Level 4Focus On Users Activities that Are Enabled By API 10
  11. 11. Activity = MOST Important Resource We Are Still Talking About REST...
  12. 12. Example: VerbsFacebook WebApps Objects 12
  13. 13. And Linked Data <head prefix="og: fb:"> <meta property="fb:app_id" content="174581479345038" /> <meta property="og:type" content="radarsat:floodmap" /> <meta property="og:url" content="" /> <meta property="og:title" content="My Floodmap" /> <meta property="og:image" content="" /> 13
  14. 14. Why Does This Matter?• Because It Will Get Us To The Next Level 14
  15. 15. The Other ThingTomorrow’s Primary Usersof Your Web Site Will NotBe Humans Forget about a web page interface... User-agents will be primary users of your app... 15
  16. 16. Preparing For Level 5 SIRI or Paperclip as User-Agents Web Apps Goal Activities Behavior Tree 16
  17. 17. Everything Becomes Connected in OpenGraph And Searchable... Including Activities Sparql? 17
  18. 18. UserAgents Will Crawl The Web Not For Web Pages But For Activities to Perform on Behalf of Users ... And Meet User Goals. 18
  19. 19. Activities = Action Links = Hypermedia Controls • Can Be Represented in JSON • SIREN • HAL • JSON-Schema / Hyper Meta-Schema • Can Be Described in API Discovery Document Not a Foreign Concept 19
  20. 20. “Agile” Instructions ActivityDesign User StoriesImplement User ActivitiesPublish User ActivitiesGenerate User Activity StreamRepeat 20
  21. 21. Take Away: Story-Telling For Your API Linked Data in Web Apps For Tomorrow’s Users (Not Human) Using Activities and Action Links Within a Semantic Web and Social Networks Thank You YOUR API Pat Cappelaere 21