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.

Towards an API Commons


Published on

Keynote presentation - proposing API Commons Kin Lane and Steven Willmott

Published in: Technology, Education
  • Hi there! Get Your Professional Job-Winning Resume Here - Check our website!
    Are you sure you want to  Yes  No
    Your message goes here

Towards an API Commons

  1. 1. Towards an API Commons Kin Lane and Steven Willmott
  2. 2. Who We Are...
  3. 3. No Legal Guarantees...
  4. 4. API Growth...
  5. 5. APIs are Awesome
  6. 6. Data Control Commerce Sensors Mobile Internal
  7. 7. The Number of APIs will explode Also Awesome!
  8. 8. But there is a problem...
  9. 9. A huge amount of client code is going to have to be written
  10. 10. Intelligent Clients: e.g. Hypermedia Will Take A Long time to Work Automation: Code Generation Didn’t work out so well last time around.. But we know how to solve this right?...
  11. 11. And there is at least one other problem: copyright
  12. 12. API Copyright • Legal Grey Area • Hundreds of thousands of APIs means a lot of overlap • Risk in Re-use • No attribution and a lot of unhappiness
  13. 13. Very Messy Hundreds of Thousands / Millions of APIs with similar definitions, all needing client code and potential copyright claims in the mix
  14. 14. So What If API Definitions were actually explicitly open and shareable instead?
  15. 15. Why Not... Borrow from the Creative Commons and Open Source?
  16. 16. API Commons
  17. 17. The Idea • Enable (and Encourage) people to openly declare API Interface definitions to be under Reusable • Enable discovery, sharing and forking • Apply to API Definitions and Data Models (not implementations)
  18. 18. Example • Facilities API • Own the definition • Explicitly make it Sharable •Others can Reuse •Others can Extend •Client code can be shared So can the server code •
  19. 19. Example Objective C Ruby PHP API Definition AP1 1 AP1 2 AP1 3 Swagger WADL WSDL RAML ... Single Interface Multiple Implementations
  20. 20. Example API Definition Swagger WADL WSDL RAML JSON Schema etc.. Copyright Free } Others can Reuse, Implement Servers Implement Clients Improve and Remix
  21. 21. Benefits to API Designer • Get broader adoption • Get more shared tooling • Feedback & Input • Community Driven Standardisation • Kudos Just Like Open Source
  22. 22. Benefits of using APIS from the Commons • Save work • Clear copyright footing • Increase the likelyhood of clients being available • Help improve something existing • Many Eyeballs ...: Just Like Open Source
  23. 23. • First Cut Solution
  24. 24. Properties • Bottom Up: Just put a manifest somewhere (no “control”) • Format agnostic • On platforms like Github, it’s Forkable • Uses established licenses (Creative Commons)
  25. 25. Licensing • Highly Recommend: Creative Commons Attribution (Permit Unrestricted Commercial Use)
  26. 26. But How do you Start? • 10 APIs in as examples • More to come • Mostly public sector <- makes most sense • Accumulate commercial ones as we go • Encourage use of Existing Data Models
  27. 27. • Aiming to index commons APIs • Place to stimulate discussion and best practice • No commercial interest • No reason for this to be the only hub
  28. 28. Why Do This?
  29. 29. Will people do this? • Is it valuable enough? • What about commercial conflicts? • How will it be bootstrapped?
  30. 30. Value for APIs as a Whole • Huge: In fact - APIs are probably not viable as a technology without it! • Reduce the amount of client code by orders of magnitude • We will end up with fewer better API interfaces and more APIs
  31. 31. Why does this matter? 50000000 No Sharing Shared Interfaces Semantic Technology 37500000 25000000 12500000 0 10000 100000 1000000 10000000 Assume 5 clients per API, Assume factor of 10 shared API defs over time
  32. 32. Open Data? • Seems to be the logical place to start • There is no incentive to have different models for the same data! • No commercial barriers
  33. 33. Commercial Use • Some API Designs are Competitive Advantage • In some cases shared standards would be better • Parallels to the evolution of Open Source
  34. 34. Why Not OS? • There have been copyright lawsuits so descriptions are at least subject to copyright • Descriptions are generally not executable by themselves • Maybe Open Source licenses are needed in the future too
  35. 35. Why not just Creative Commons? • Creative Commons is great • But we need more structure and guidance • We also need to be able to discover APIs in the commons easily • We need to evaluate if creative commons is the right model
  36. 36. What Now?
  37. 37. Challenges • Technical • Understanding • Adoption • Business Models
  38. 38. Adoption • No doubt it will take time • It doesn’t make sense for everybody today • Over time though it’ll become a popular choice
  39. 39. Thank You! • • Group:!forum/apicommons • Twitter: @apicommons
  40. 40. • Photo Credits: • • Ryusuke Komori / 500px Milan Cherian / 500px