9. A huge amount of client code is going
to have to be written
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. And there is at least one other
problem: copyright
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. Very Messy
Hundreds of Thousands / Millions of APIs with
similar definitions, all needing client code and
potential copyright claims in the mix
14. So What If
API Definitions were actually explicitly
open and shareable instead?
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. 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
•
21. Benefits to API Designer
• Get broader adoption
• Get more shared tooling
• Feedback & Input
• Community Driven Standardisation
• Kudos
Just Like Open
Source
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
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)
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. apicommons.org
• Aiming to index commons APIs
• Place to stimulate discussion and best practice
• No commercial interest
• No reason for this to be the only hub
29. Will people do this?
• Is it valuable enough?
• What about commercial conflicts?
• How will it be bootstrapped?
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. 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. 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. Commercial Use
• Some API Designs are Competitive Advantage
• In some cases shared standards would be better
• Parallels to the evolution of Open Source
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. 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