Contenairization of APIs to improve Developer Experience
-
Upload
mehdi-medjaoui -
Category
Technology
-
view
744 -
download
0
description
Transcript of Contenairization of APIs to improve Developer Experience
Containerization of APIs to improve
Developer ExperienceMake the API economy Bigger
@medjawii
Mashup for fun & profit
20TH CENTURY SUPPLY CHAIN
21TH CENTURY SUPPLY CHAIN
From Industry Supply chain
management to
Data Supply chain management
Phoenicians : 3000 BC
November 14th, 1913
November 14th, 1913
From 1926 to 1929, Seatrain Lines had carried railroad boxcars on its sea vessels to transport goods between New York and Cuba. #FAIL
In the mid-1930s, the Chicago Great Western Railway and then the New Haven railroad began piggy-back service limited to their own railroad. #FAIL
1934 : Malcom McLean creates
McLean Trucks, Co
1939-1945
“Give me Liberty or give me Death”
1950’
Shipping costs
$$$
- On a delivery from Chicago to Nancy, France, 48% of the shipping price is the total port cost
- 75% of the cost of port cost is due when the ship is at dock.
- shipping costs can go up to 25% of the goods value, so blocking the international trade to be not worthwhile
“As sexy as a tin can”Marc Levinson
1955 : Malcolm Mc Lean sells McLean Trucks and creates
Waterman Corp.
1956 : price comparison
$5.86
$0.16
1956 : price per ton shipped
Shipping data and services : Containers for APIs ?
API
Classical products distribution
Web service distributed via an API
API
Classical products distribution
Web service distributed via an API
1) Developers portals are a DX bug
API discovery
API documentation
API Authorization
http endpoint
integration
APIkey registration
Developer Experience
Programming costs
$$$
In a Developer Experience perspective, a developer portal is a bug, not a feature.
“As a user, this is a bug not a feature”
This is why iPhone 5s has TouchID for UX, not for security !
Developer portals are a compromise between API providers and Developers on defining a contract.
Why?
- an API is not only an Application Programming InterfaceIt is a contract.
- an API is an API +
Service + Pricing model + Terms of service + Marketing/Branding + Humans
2) http calls are “aliens” in code
http://stackoverflow.com/questions/2138527/php-curl-http-post-sample-code
http is good for interoperability and the network, not for the DX.It is also a compromise.It’s OK. 200 OK.
If we had a Dev DX magic stick, APIs should be librairies.
v1.0
If we had a Dev DX magic stick, APIs should be librairies.
What are the potential containers of APIs?
- Rest APIs abstraction- Objects - Components- Linux Containers
api.container.com/resource/{service_provider}
apis.google.maps()
apis.facebook.getFriends()
apis.twitter.auth()
We strongly recommend using the client libraries listed above for building AdWords API applications. If you would prefer to use a SOAP toolkit to directly interact with the API, read these language-specific instructions for further details.
http calls
Javascript API
Developer
Not all languages are represented into SDK
There are 2nd class Developers
Not all languages are represented into SDK...
There are 2nd class Developers
(no troll)
WSDLWADLSwaggerBlueprintRAMLJavascript wrappersconf.json
API endpoint description
WSDLWADLSwaggerBlueprintRAMLJavascript wrappersconf.json
We could generate SDK out of these API description
models for all languages
API endpoint description
Bonus : Code complete
Widgets Components
Linux Containers