SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
The State of Web API
Languages
Jerome Louvel, Chief Geek
@jlouvel
About me
● Launched Restlet Framework, first REST framework in 2005
● Contributor to “RESTful Web Services” (O’Reilly, 2007)
● Member of the JAX-RS 1.0 expert group (2007 - 2009)
● Co-author of “Restlet in Action” (Manning, 2012)
● InfoQ editor covering Web APIs since 2014
● CTO & Founder of Restlet, Web API platform vendor
Major API use cases
IoT
Devices
Conn-
ectors
Open
Data
Web
Apps
Desktop
Apps
Partner
Apps
Mobile
Apps
Open
APIs
APIs
APIs
APIs
APIs
APIs
APIs
APIs
APIs
Digital
Applications
● New types of APIs
○ internal & external APIs
○ composite & micro APIs
○ experience & open APIs
● Number of APIs increases
○ channels growth
○ history of versions
○ microservices pattern
○ quality of service
● → Industrialization needed
○ new development workflows
○ importance of API languages
○ new tooling
Impacts on API development
API Platform
Micro APIs
(domain data & logic)
Composite APIs
(domain services)
Experience APIs
(backends)
User Interfaces
(frontends)
Open APIs
(public)
End-users
Micro APIs
(external SaaS)
Partner devs
1 | Code-first & Back-end Driven
Back-end team
Front-end teams
API
Impl
SDK
Client
A
SDK
Client
B
...
...
3
1
2
2 | API-first & Back-end Driven
Back-end team
Front-end teams
Impl
SDK
Client
A
SDK
Client
B
...
...
2
1
Mock
2
API
3 | Collaborative API-first
Back-end team
Front-end teams
Impl
SDK
Client
A
SDK
Client
B
...
...
2
1
Mock
2
API
4 | API-first & Front-end Driven
Back-end team
Front-end teams
Impl
SDK
Client
A
SDK
Client
B
...
...
2
1
Mock
2
API
Mock
API
Impl
Mock
API
Impl
ServicesData
5 | API-first & Front-end Owned
Back-end team
Front-end teams
Impl
SDK
Client
A
SDK
Client
B
...
...
2
1
Mock
2
API
Mock
API
Impl
Mock
API
Impl
Data Services
● 1) Describe API contract
○ endpoints, resources, HTTP methods, representations
○ enable the generation of:
■ client SDKs
■ server skeletons
■ test suites
■ mock servers
● 2) Implement API
○ wrap regular applications written with classic languages
○ compose lower-level APIs into higher-level APIs
○ integration purpose at web scale
● 3) Operate API
○ provide the infrastructure to deliver the API
○ access to data and services
Maturity levels of API Languages
Lower level
languages
API delivery
network
● Swagger (2.0)
○ acquisition by SmartBear from Reverb
○ tooling has been upgraded
○ leader in term of community adoption
○ specification contributed to Linux Foundation
● RAML (1.0 RC)
○ added libraries, overlays, improved examples,
security schemas, annotations, and data-typing
● API Blueprint (1A9)
○ support for MSON and URI template added
● Will all three languages be able to converge?
What changed in 2015?
Languages are Abstraction Layers
Hardware
Assembly languages
System languages
Application languages
Web API languages
software level, drivers
NASM / TASM
OS level, high performance
C / C++ / C# / Go
productivity, portability, business logic
Java / PHP / Visual Basic
web scale, interoperability, integration, DSLs
Swagger / RAML / API Blueprint
lowest level, machine code
x86 / CISC / RISC / etc.
1st generation
2nd generation
3rd generation
4th generation
3rd generation
● 50% of classic
languages at the top
● Java rising to 1st place
on its 20 years
anniversary.
● Cobol and Assembly in
the top 20 and rising
● New languages
emerging (Swift, Dart,
Go)
● An API language in
this list?
Source: TIOBE index
Top programming languages 2015
API provider activities
DEVELOP OPERATE PROMOTE
API Provider
API Consumers
DEPLOY PUBLISH
team effect
try out / compose
API provider tooling
IDE ADN HUB
API Provider
API Consumers
DEPLOY PUBLISH
team effect
try out / compose
IDE: API Integrated Deveqlopment Environment
ADN: API Delivery Network
HUB: Collaborative API Portal
API consumer activities
DISCOVER DEVELOP USE
API Consumer
TRY OUT DEPLOY
team effect
End Users
API consumer tooling
HUB IDE ADN
API Consumer
End users
TRY OUT DEPLOY
team effect
Design IDE: Mulesoft API Designer
Design IDE: Apiary
Design IDE: Apigee Studio
Design IDE: Stoplight
Design IDE: Restlet Studio
Sample IDE: Restlet Studio
Sample IDE: Restlet Studio
● Browser-based IDE
○ accelerate the design of APIs
○ Chrome application
○ compatible with other modern browsers
● Supports
○ visual design of APIs
○ source code views
○ APIs with large # of resources (sections)
○ skeleton and SDK generation
○ adherence to REST
○ multiple API languages
■ Swagger 1.2, 2.0 & RAML 0.8
■ RAML 1.0 & API Blueprint planned
■ first tool of this kind
http://studio.restlet.com
Design APIs with Restlet
Testing IDE: Paw
Testing IDE: Postman
Testing IDE: DHCby Restlet
● 1 | API language convergence
○ move innovation to another level
○ accelerate tooling ecosystem
● 2 | API implementation
○ API coding & assembly
○ need full IDEs for APIs
● 3 | API delivery
○ low latency
○ high availability
○ elastic scalability
○ pervasive security
○ specialized API PaaS
→ A whole new API Stack is emerging!
Our API challenges
Thank you
Q&A

Más contenido relacionado

La actualidad más candente

How to GraphQL
How to GraphQLHow to GraphQL
How to GraphQLTomasz Bak
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQLKnoldus Inc.
 
Real world microservice architecture
Real world microservice architectureReal world microservice architecture
Real world microservice architectureViacheslav Poturaev
 
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...apidays
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQLRodrigo Prates
 
Taking Control of your Data with GraphQL
Taking Control of your Data with GraphQLTaking Control of your Data with GraphQL
Taking Control of your Data with GraphQLVinci Rufus
 
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...Restlet
 
Semantic versioning and microservices in GO
Semantic versioning and microservices in GOSemantic versioning and microservices in GO
Semantic versioning and microservices in GOViacheslav Poturaev
 
Developing Great Apps with Apache Cordova
Developing Great Apps with Apache CordovaDeveloping Great Apps with Apache Cordova
Developing Great Apps with Apache CordovaShekhar Gulati
 
Introduction to graphQL
Introduction to graphQLIntroduction to graphQL
Introduction to graphQLMuhilvarnan V
 
Into to GraphQL
Into to GraphQLInto to GraphQL
Into to GraphQLshobot
 
WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.
WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.
WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.WebCamp
 
REST vs GraphQL
REST vs GraphQLREST vs GraphQL
REST vs GraphQLSquareboat
 
Benefits of using Ruby on rails for Apps Development
Benefits of using Ruby on rails for Apps Development Benefits of using Ruby on rails for Apps Development
Benefits of using Ruby on rails for Apps Development Chetu
 
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema StitchingModular GraphQL with Schema Stitching
Modular GraphQL with Schema StitchingSashko Stubailo
 
ECS19 - Daniel Neumann - AZURE FUNCTIONS 2.0 - RUNNING SERVERLESS EVERYWHERE
ECS19 - Daniel Neumann - AZURE FUNCTIONS 2.0 - RUNNING SERVERLESS EVERYWHEREECS19 - Daniel Neumann - AZURE FUNCTIONS 2.0 - RUNNING SERVERLESS EVERYWHERE
ECS19 - Daniel Neumann - AZURE FUNCTIONS 2.0 - RUNNING SERVERLESS EVERYWHEREEuropean Collaboration Summit
 
Mumbai MuleSoft Meetup #17 - GraphQL
Mumbai MuleSoft Meetup #17 - GraphQLMumbai MuleSoft Meetup #17 - GraphQL
Mumbai MuleSoft Meetup #17 - GraphQLAkshata Sawant
 
Working effectively with OpenShift
Working effectively with OpenShiftWorking effectively with OpenShift
Working effectively with OpenShiftShekhar Gulati
 
London React August - GraphQL at The Financial Times - Viktor Charypar
London React August - GraphQL at The Financial Times - Viktor CharyparLondon React August - GraphQL at The Financial Times - Viktor Charypar
London React August - GraphQL at The Financial Times - Viktor CharyparReact London Community
 

La actualidad más candente (20)

How to GraphQL
How to GraphQLHow to GraphQL
How to GraphQL
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
 
Real world microservice architecture
Real world microservice architectureReal world microservice architecture
Real world microservice architecture
 
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
 
Taking Control of your Data with GraphQL
Taking Control of your Data with GraphQLTaking Control of your Data with GraphQL
Taking Control of your Data with GraphQL
 
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
 
Semantic versioning and microservices in GO
Semantic versioning and microservices in GOSemantic versioning and microservices in GO
Semantic versioning and microservices in GO
 
Developing Great Apps with Apache Cordova
Developing Great Apps with Apache CordovaDeveloping Great Apps with Apache Cordova
Developing Great Apps with Apache Cordova
 
Introduction to graphQL
Introduction to graphQLIntroduction to graphQL
Introduction to graphQL
 
Into to GraphQL
Into to GraphQLInto to GraphQL
Into to GraphQL
 
WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.
WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.
WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.
 
REST vs GraphQL
REST vs GraphQLREST vs GraphQL
REST vs GraphQL
 
Benefits of using Ruby on rails for Apps Development
Benefits of using Ruby on rails for Apps Development Benefits of using Ruby on rails for Apps Development
Benefits of using Ruby on rails for Apps Development
 
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema StitchingModular GraphQL with Schema Stitching
Modular GraphQL with Schema Stitching
 
ECS19 - Daniel Neumann - AZURE FUNCTIONS 2.0 - RUNNING SERVERLESS EVERYWHERE
ECS19 - Daniel Neumann - AZURE FUNCTIONS 2.0 - RUNNING SERVERLESS EVERYWHEREECS19 - Daniel Neumann - AZURE FUNCTIONS 2.0 - RUNNING SERVERLESS EVERYWHERE
ECS19 - Daniel Neumann - AZURE FUNCTIONS 2.0 - RUNNING SERVERLESS EVERYWHERE
 
Mumbai MuleSoft Meetup #17 - GraphQL
Mumbai MuleSoft Meetup #17 - GraphQLMumbai MuleSoft Meetup #17 - GraphQL
Mumbai MuleSoft Meetup #17 - GraphQL
 
Intro to GraphQL
 Intro to GraphQL Intro to GraphQL
Intro to GraphQL
 
Working effectively with OpenShift
Working effectively with OpenShiftWorking effectively with OpenShift
Working effectively with OpenShift
 
London React August - GraphQL at The Financial Times - Viktor Charypar
London React August - GraphQL at The Financial Times - Viktor CharyparLondon React August - GraphQL at The Financial Times - Viktor Charypar
London React August - GraphQL at The Financial Times - Viktor Charypar
 

Destacado

Information Architecture + Games
Information Architecture + GamesInformation Architecture + Games
Information Architecture + GamesRicardo Sato
 
M07c Product info PL Rev 0
M07c Product info PL Rev 0M07c Product info PL Rev 0
M07c Product info PL Rev 0Belinda Price
 
Manejo y seguridad de la internet
Manejo y seguridad de la internetManejo y seguridad de la internet
Manejo y seguridad de la internetjuliank863
 
Guia de iniciación en java prev
Guia de iniciación en java prevGuia de iniciación en java prev
Guia de iniciación en java prevjtk1
 
C1 intro java
C1 intro javaC1 intro java
C1 intro javaalenco
 
Java schaum pre
Java schaum preJava schaum pre
Java schaum prejtk1
 
Piensa en java per
Piensa en java perPiensa en java per
Piensa en java perjtk1
 
Intro. Lenguaje de Programación Java - Algoritmia
Intro. Lenguaje de Programación Java - AlgoritmiaIntro. Lenguaje de Programación Java - Algoritmia
Intro. Lenguaje de Programación Java - AlgoritmiaDaniel Gómez
 
Java 3d
Java 3dJava 3d
Java 3djtk1
 
Introducción a Java Persistence API
Introducción a Java Persistence APIIntroducción a Java Persistence API
Introducción a Java Persistence APIJose Martinez
 
Api java 2D
Api  java 2DApi  java 2D
Api java 2DESPOL
 
pagoPA: Pagamenti Elettronici nella Pubblica Amministrazione - confSL 2016
pagoPA: Pagamenti Elettronici nella Pubblica Amministrazione - confSL 2016pagoPA: Pagamenti Elettronici nella Pubblica Amministrazione - confSL 2016
pagoPA: Pagamenti Elettronici nella Pubblica Amministrazione - confSL 2016Roberta Randazzo
 
Integración de aplicaciones Java
Integración de aplicaciones JavaIntegración de aplicaciones Java
Integración de aplicaciones JavaIker Canarias
 

Destacado (20)

Renee - Bio (2)
Renee - Bio (2)Renee - Bio (2)
Renee - Bio (2)
 
Śniadanie Daje Moc
Śniadanie Daje MocŚniadanie Daje Moc
Śniadanie Daje Moc
 
Information Architecture + Games
Information Architecture + GamesInformation Architecture + Games
Information Architecture + Games
 
M07c Product info PL Rev 0
M07c Product info PL Rev 0M07c Product info PL Rev 0
M07c Product info PL Rev 0
 
Manejo y seguridad de la internet
Manejo y seguridad de la internetManejo y seguridad de la internet
Manejo y seguridad de la internet
 
infografia
infografiainfografia
infografia
 
React & Flux Workshop
React & Flux WorkshopReact & Flux Workshop
React & Flux Workshop
 
Primeiros passos com protractor - GUTS-SC
Primeiros passos com protractor - GUTS-SCPrimeiros passos com protractor - GUTS-SC
Primeiros passos com protractor - GUTS-SC
 
Guia de iniciación en java prev
Guia de iniciación en java prevGuia de iniciación en java prev
Guia de iniciación en java prev
 
C1 intro java
C1 intro javaC1 intro java
C1 intro java
 
Java schaum pre
Java schaum preJava schaum pre
Java schaum pre
 
Piensa en java per
Piensa en java perPiensa en java per
Piensa en java per
 
Intro. Lenguaje de Programación Java - Algoritmia
Intro. Lenguaje de Programación Java - AlgoritmiaIntro. Lenguaje de Programación Java - Algoritmia
Intro. Lenguaje de Programación Java - Algoritmia
 
Java 3d
Java 3dJava 3d
Java 3d
 
Introducción a Java Persistence API
Introducción a Java Persistence APIIntroducción a Java Persistence API
Introducción a Java Persistence API
 
Api java 2D
Api  java 2DApi  java 2D
Api java 2D
 
Tecnologia Java
Tecnologia JavaTecnologia Java
Tecnologia Java
 
pagoPA: Pagamenti Elettronici nella Pubblica Amministrazione - confSL 2016
pagoPA: Pagamenti Elettronici nella Pubblica Amministrazione - confSL 2016pagoPA: Pagamenti Elettronici nella Pubblica Amministrazione - confSL 2016
pagoPA: Pagamenti Elettronici nella Pubblica Amministrazione - confSL 2016
 
Integración de aplicaciones Java
Integración de aplicaciones JavaIntegración de aplicaciones Java
Integración de aplicaciones Java
 
JPA en Netbeans
JPA en NetbeansJPA en Netbeans
JPA en Netbeans
 

Similar a APIdays 2015 - The State of Web API Languages

APIdays Paris 2014 - The State of Web API Languages
APIdays Paris 2014 - The State of Web API LanguagesAPIdays Paris 2014 - The State of Web API Languages
APIdays Paris 2014 - The State of Web API LanguagesRestlet
 
The Ring programming language version 1.8 book - Part 6 of 202
The Ring programming language version 1.8 book - Part 6 of 202The Ring programming language version 1.8 book - Part 6 of 202
The Ring programming language version 1.8 book - Part 6 of 202Mahmoud Samir Fayed
 
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...Restlet
 
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING PamRobert
 
Language Engineering in the Cloud
Language Engineering in the CloudLanguage Engineering in the Cloud
Language Engineering in the Cloudlennartkats
 
8 Top Web Development Programming Languages in 2023.pdf
8 Top Web Development Programming Languages in 2023.pdf8 Top Web Development Programming Languages in 2023.pdf
8 Top Web Development Programming Languages in 2023.pdfBaek Yongsun
 
API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)Tom Johnson
 
Improve Your Business Standards with Backend Development .pdf
Improve Your Business Standards with Backend Development .pdfImprove Your Business Standards with Backend Development .pdf
Improve Your Business Standards with Backend Development .pdfWPWeb Infotech
 
Vijay Mix Presentation
Vijay Mix PresentationVijay Mix Presentation
Vijay Mix Presentationvijayrvr
 
Teched India Vijay Interop Track
Teched India Vijay Interop TrackTeched India Vijay Interop Track
Teched India Vijay Interop Trackvijayrvr
 
The Ring programming language version 1.4 book - Part 2 of 30
The Ring programming language version 1.4 book - Part 2 of 30The Ring programming language version 1.4 book - Part 2 of 30
The Ring programming language version 1.4 book - Part 2 of 30Mahmoud Samir Fayed
 
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...apidays
 
Full Stack Web Development
Full Stack Web DevelopmentFull Stack Web Development
Full Stack Web DevelopmentSWAGATHCHOWDARY1
 
Developer Experience Overview
Developer Experience OverviewDeveloper Experience Overview
Developer Experience OverviewRoss Jimenez
 
Difference between .net and asp.net all you need to know
Difference between .net and asp.net  all you need to knowDifference between .net and asp.net  all you need to know
Difference between .net and asp.net all you need to knowsophiaaaddison
 
Build Great Networked APIs with Swift, OpenAPI, and gRPC
Build Great Networked APIs with Swift, OpenAPI, and gRPCBuild Great Networked APIs with Swift, OpenAPI, and gRPC
Build Great Networked APIs with Swift, OpenAPI, and gRPCTim Burks
 

Similar a APIdays 2015 - The State of Web API Languages (20)

APIdays Paris 2014 - The State of Web API Languages
APIdays Paris 2014 - The State of Web API LanguagesAPIdays Paris 2014 - The State of Web API Languages
APIdays Paris 2014 - The State of Web API Languages
 
The Ring programming language version 1.8 book - Part 6 of 202
The Ring programming language version 1.8 book - Part 6 of 202The Ring programming language version 1.8 book - Part 6 of 202
The Ring programming language version 1.8 book - Part 6 of 202
 
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
 
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
 
Language Engineering in the Cloud
Language Engineering in the CloudLanguage Engineering in the Cloud
Language Engineering in the Cloud
 
FICO Open Shift presentation
FICO Open Shift presentationFICO Open Shift presentation
FICO Open Shift presentation
 
8 Top Web Development Programming Languages in 2023.pdf
8 Top Web Development Programming Languages in 2023.pdf8 Top Web Development Programming Languages in 2023.pdf
8 Top Web Development Programming Languages in 2023.pdf
 
API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)API workshop: Introduction to APIs (TC Camp)
API workshop: Introduction to APIs (TC Camp)
 
Api design part 1
Api design part 1Api design part 1
Api design part 1
 
Improve Your Business Standards with Backend Development .pdf
Improve Your Business Standards with Backend Development .pdfImprove Your Business Standards with Backend Development .pdf
Improve Your Business Standards with Backend Development .pdf
 
xcfgdfbn
xcfgdfbnxcfgdfbn
xcfgdfbn
 
Vijay Mix Presentation
Vijay Mix PresentationVijay Mix Presentation
Vijay Mix Presentation
 
Teched India Vijay Interop Track
Teched India Vijay Interop TrackTeched India Vijay Interop Track
Teched India Vijay Interop Track
 
The Decoupled CMS in Financial Services
The Decoupled CMS in Financial ServicesThe Decoupled CMS in Financial Services
The Decoupled CMS in Financial Services
 
The Ring programming language version 1.4 book - Part 2 of 30
The Ring programming language version 1.4 book - Part 2 of 30The Ring programming language version 1.4 book - Part 2 of 30
The Ring programming language version 1.4 book - Part 2 of 30
 
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
 
Full Stack Web Development
Full Stack Web DevelopmentFull Stack Web Development
Full Stack Web Development
 
Developer Experience Overview
Developer Experience OverviewDeveloper Experience Overview
Developer Experience Overview
 
Difference between .net and asp.net all you need to know
Difference between .net and asp.net  all you need to knowDifference between .net and asp.net  all you need to know
Difference between .net and asp.net all you need to know
 
Build Great Networked APIs with Swift, OpenAPI, and gRPC
Build Great Networked APIs with Swift, OpenAPI, and gRPCBuild Great Networked APIs with Swift, OpenAPI, and gRPC
Build Great Networked APIs with Swift, OpenAPI, and gRPC
 

Más de Restlet

APIDays - API Design Workshop
APIDays - API Design WorkshopAPIDays - API Design Workshop
APIDays - API Design WorkshopRestlet
 
APIStrat Open API Workshop
APIStrat Open API WorkshopAPIStrat Open API Workshop
APIStrat Open API WorkshopRestlet
 
Restlet Framework NG
Restlet Framework NGRestlet Framework NG
Restlet Framework NGRestlet
 
API World 2016 - A five-sided prism polarizing Web API development
API World 2016 - A five-sided prism polarizing Web API developmentAPI World 2016 - A five-sided prism polarizing Web API development
API World 2016 - A five-sided prism polarizing Web API developmentRestlet
 
The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016Restlet
 
Public and private APIs: differences and challenges
Public and private APIs: differences and challengesPublic and private APIs: differences and challenges
Public and private APIs: differences and challengesRestlet
 
The never-ending REST API design debate
The never-ending REST API design debateThe never-ending REST API design debate
The never-ending REST API design debateRestlet
 
Take a Groovy REST
Take a Groovy RESTTake a Groovy REST
Take a Groovy RESTRestlet
 
GlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIsGlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIsRestlet
 
Transformez vos Google Spreadsheets en API web - DevFest 2014
Transformez vos Google Spreadsheets en API web - DevFest 2014Transformez vos Google Spreadsheets en API web - DevFest 2014
Transformez vos Google Spreadsheets en API web - DevFest 2014Restlet
 
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...Restlet
 
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIsDefrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIsRestlet
 
APIdays Paris - How to Build Your Web API
APIdays Paris - How to Build Your Web APIAPIdays Paris - How to Build Your Web API
APIdays Paris - How to Build Your Web APIRestlet
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language FrontierRestlet
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)Restlet
 
Deploy a web API in 15'
Deploy a web API in 15'Deploy a web API in 15'
Deploy a web API in 15'Restlet
 
Design & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursDesign & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursRestlet
 
From Open Source to Open API with Restlet
From Open Source to Open API with RestletFrom Open Source to Open API with Restlet
From Open Source to Open API with RestletRestlet
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)Restlet
 
Web APIs in Action (in French)
Web APIs in Action (in French)Web APIs in Action (in French)
Web APIs in Action (in French)Restlet
 

Más de Restlet (20)

APIDays - API Design Workshop
APIDays - API Design WorkshopAPIDays - API Design Workshop
APIDays - API Design Workshop
 
APIStrat Open API Workshop
APIStrat Open API WorkshopAPIStrat Open API Workshop
APIStrat Open API Workshop
 
Restlet Framework NG
Restlet Framework NGRestlet Framework NG
Restlet Framework NG
 
API World 2016 - A five-sided prism polarizing Web API development
API World 2016 - A five-sided prism polarizing Web API developmentAPI World 2016 - A five-sided prism polarizing Web API development
API World 2016 - A five-sided prism polarizing Web API development
 
The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016
 
Public and private APIs: differences and challenges
Public and private APIs: differences and challengesPublic and private APIs: differences and challenges
Public and private APIs: differences and challenges
 
The never-ending REST API design debate
The never-ending REST API design debateThe never-ending REST API design debate
The never-ending REST API design debate
 
Take a Groovy REST
Take a Groovy RESTTake a Groovy REST
Take a Groovy REST
 
GlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIsGlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIs
 
Transformez vos Google Spreadsheets en API web - DevFest 2014
Transformez vos Google Spreadsheets en API web - DevFest 2014Transformez vos Google Spreadsheets en API web - DevFest 2014
Transformez vos Google Spreadsheets en API web - DevFest 2014
 
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
 
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIsDefrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
 
APIdays Paris - How to Build Your Web API
APIdays Paris - How to Build Your Web APIAPIdays Paris - How to Build Your Web API
APIdays Paris - How to Build Your Web API
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language Frontier
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)
 
Deploy a web API in 15'
Deploy a web API in 15'Deploy a web API in 15'
Deploy a web API in 15'
 
Design & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursDesign & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hours
 
From Open Source to Open API with Restlet
From Open Source to Open API with RestletFrom Open Source to Open API with Restlet
From Open Source to Open API with Restlet
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
 
Web APIs in Action (in French)
Web APIs in Action (in French)Web APIs in Action (in French)
Web APIs in Action (in French)
 

Último

Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Call Girls in Nagpur High Profile
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024APNIC
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Standkumarajju5765
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...Neha Pandey
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Sheetaleventcompany
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceDelhi Call girls
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...SofiyaSharma5
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.soniya singh
 
10.pdfMature Call girls in Dubai +971563133746 Dubai Call girls
10.pdfMature Call girls in Dubai +971563133746 Dubai Call girls10.pdfMature Call girls in Dubai +971563133746 Dubai Call girls
10.pdfMature Call girls in Dubai +971563133746 Dubai Call girlsstephieert
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Servicesexy call girls service in goa
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsThierry TROUIN ☁
 

Último (20)

Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
 
10.pdfMature Call girls in Dubai +971563133746 Dubai Call girls
10.pdfMature Call girls in Dubai +971563133746 Dubai Call girls10.pdfMature Call girls in Dubai +971563133746 Dubai Call girls
10.pdfMature Call girls in Dubai +971563133746 Dubai Call girls
 
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with Flows
 

APIdays 2015 - The State of Web API Languages

  • 1. The State of Web API Languages Jerome Louvel, Chief Geek @jlouvel
  • 2. About me ● Launched Restlet Framework, first REST framework in 2005 ● Contributor to “RESTful Web Services” (O’Reilly, 2007) ● Member of the JAX-RS 1.0 expert group (2007 - 2009) ● Co-author of “Restlet in Action” (Manning, 2012) ● InfoQ editor covering Web APIs since 2014 ● CTO & Founder of Restlet, Web API platform vendor
  • 3. Major API use cases IoT Devices Conn- ectors Open Data Web Apps Desktop Apps Partner Apps Mobile Apps Open APIs APIs APIs APIs APIs APIs APIs APIs APIs Digital Applications
  • 4. ● New types of APIs ○ internal & external APIs ○ composite & micro APIs ○ experience & open APIs ● Number of APIs increases ○ channels growth ○ history of versions ○ microservices pattern ○ quality of service ● → Industrialization needed ○ new development workflows ○ importance of API languages ○ new tooling Impacts on API development API Platform Micro APIs (domain data & logic) Composite APIs (domain services) Experience APIs (backends) User Interfaces (frontends) Open APIs (public) End-users Micro APIs (external SaaS) Partner devs
  • 5. 1 | Code-first & Back-end Driven Back-end team Front-end teams API Impl SDK Client A SDK Client B ... ... 3 1 2
  • 6. 2 | API-first & Back-end Driven Back-end team Front-end teams Impl SDK Client A SDK Client B ... ... 2 1 Mock 2 API
  • 7. 3 | Collaborative API-first Back-end team Front-end teams Impl SDK Client A SDK Client B ... ... 2 1 Mock 2 API
  • 8. 4 | API-first & Front-end Driven Back-end team Front-end teams Impl SDK Client A SDK Client B ... ... 2 1 Mock 2 API Mock API Impl Mock API Impl ServicesData
  • 9. 5 | API-first & Front-end Owned Back-end team Front-end teams Impl SDK Client A SDK Client B ... ... 2 1 Mock 2 API Mock API Impl Mock API Impl Data Services
  • 10. ● 1) Describe API contract ○ endpoints, resources, HTTP methods, representations ○ enable the generation of: ■ client SDKs ■ server skeletons ■ test suites ■ mock servers ● 2) Implement API ○ wrap regular applications written with classic languages ○ compose lower-level APIs into higher-level APIs ○ integration purpose at web scale ● 3) Operate API ○ provide the infrastructure to deliver the API ○ access to data and services Maturity levels of API Languages Lower level languages API delivery network
  • 11. ● Swagger (2.0) ○ acquisition by SmartBear from Reverb ○ tooling has been upgraded ○ leader in term of community adoption ○ specification contributed to Linux Foundation ● RAML (1.0 RC) ○ added libraries, overlays, improved examples, security schemas, annotations, and data-typing ● API Blueprint (1A9) ○ support for MSON and URI template added ● Will all three languages be able to converge? What changed in 2015?
  • 12. Languages are Abstraction Layers Hardware Assembly languages System languages Application languages Web API languages software level, drivers NASM / TASM OS level, high performance C / C++ / C# / Go productivity, portability, business logic Java / PHP / Visual Basic web scale, interoperability, integration, DSLs Swagger / RAML / API Blueprint lowest level, machine code x86 / CISC / RISC / etc. 1st generation 2nd generation 3rd generation 4th generation 3rd generation
  • 13. ● 50% of classic languages at the top ● Java rising to 1st place on its 20 years anniversary. ● Cobol and Assembly in the top 20 and rising ● New languages emerging (Swift, Dart, Go) ● An API language in this list? Source: TIOBE index Top programming languages 2015
  • 14. API provider activities DEVELOP OPERATE PROMOTE API Provider API Consumers DEPLOY PUBLISH team effect try out / compose
  • 15. API provider tooling IDE ADN HUB API Provider API Consumers DEPLOY PUBLISH team effect try out / compose IDE: API Integrated Deveqlopment Environment ADN: API Delivery Network HUB: Collaborative API Portal
  • 16. API consumer activities DISCOVER DEVELOP USE API Consumer TRY OUT DEPLOY team effect End Users
  • 17. API consumer tooling HUB IDE ADN API Consumer End users TRY OUT DEPLOY team effect
  • 18. Design IDE: Mulesoft API Designer
  • 25. ● Browser-based IDE ○ accelerate the design of APIs ○ Chrome application ○ compatible with other modern browsers ● Supports ○ visual design of APIs ○ source code views ○ APIs with large # of resources (sections) ○ skeleton and SDK generation ○ adherence to REST ○ multiple API languages ■ Swagger 1.2, 2.0 & RAML 0.8 ■ RAML 1.0 & API Blueprint planned ■ first tool of this kind http://studio.restlet.com Design APIs with Restlet
  • 29. ● 1 | API language convergence ○ move innovation to another level ○ accelerate tooling ecosystem ● 2 | API implementation ○ API coding & assembly ○ need full IDEs for APIs ● 3 | API delivery ○ low latency ○ high availability ○ elastic scalability ○ pervasive security ○ specialized API PaaS → A whole new API Stack is emerging! Our API challenges