WEB APIS, THE NEW LANGUAGE FRONTIER

All-in-one web API platform
http://apispark.com

Jérôme LOUVEL
jlouvel@restlet.com
CEO
December 4, 2013
Part 1

EVOLUTION OF PROGRAMMING LANGUAGES
TOP PROGRAMMING LANGUAGES
C is still the first
language !

Assembly is still in
the top 20 !
Source: TIOBE Index
A TALE OF ABSTRACTION

HOP, APISpark, WebShell

Web API languages

Java, JS, Dart, Groovy

Application languages

C, C++, C#, Obj-C, Go

System languages

NASM, TASM

Intel, AMD, SPARC

Assembly languages

Hardware

Web scale, high availability, multi-tenancy

Productivity, portability, business logic

Native/OS code, very high performance

Lowest level language, tedious maintenance
WEB API LANGUAGES
CURRENT STATE

• Can describe Web APIs
– XML or JSON driven representations
– proper HTTP methods usage
– markup languages (XML, JSON, YAML, MarkDown)

• Can generate code
– client SDKs
– server skeleton
WEB API LANGUAGES
NEXT STAGE ?
• Let developers program the Web
– through web APIs instead [Java/JS] APIs
– natively speaking the HTTP semantics
– not only the API contract, also the implementation !

• Web APIs can be local or remote
– inherently component-based
– ready for load-balancing, scaling, cross-region

• Cloud-ready implementations
– multi-tenant execution
– run on-top of IaaS
– built-in persistence service (synchronized APIs life cycle)

…
JavaScript based

Internal DSL

HOP pioneer
Part 2

RETHINKING WEB API DEVELOPMENT
API EDITOR
• Let developers code at the API level
– Visual editor
– Command line editor

• Cloud ready
– collaborative edition
• think Google Docs and GitHub style

– easy composition of multiple APIs
• via import instructions
• easy discovery mechanism (like Linux or Java package managers)
API COMPILER
Web API languages

Generates [Java] code

Application languages

Generates [JVM byte code]

System languages

Generates assembly code

Assembly languages

Generates CPU operations

Hardware

Compilers translate higher-level languages
into lower-level languages
API DEBUGGER
• Let developers debug API calls
– HTTP centric, semantics and transport data
– pause, stop, continue, set breakpoints
– works like a [Java] debugger

• Works on both server and client sides
– support both synchronous and asynchronous calls
– lot of room for innovation!
…
Interactive HTTP proxy
API RUNNING
• Let developers run APIs
– similar to using web API frameworks on top of
application languages (eg. Restlet Framework for Java)
– similar to API deployment (developer environment)

• Special features
– no separation between framework and actual
language for better productivity
– lot of room for innovation!
…
Restlet Framework based

Node JS based
API DOCUMENTATION
• Let developers document APIs
– technical documentation easy to maintain
– tools similar to Javadocs to keep documentation close
to the code
– still needs separate user guide and tutorials

• Currently mature on the API contracts
– what about the implementation details?
API DEPLOYMENT
• Let developers deploy APIs
– like Eclipse IDE deployment of Web packages (WAR) to remote
application servers
– as simple as pressing a button
– targets either staging or production environments

• Special features
– built on top of IaaS
– cross-region deployment as a key option
• for high-availability
• for low latency (geo-DNS routing)
Part 3

AN ILLUSTRATION WITH APISPARK
STEP 1: CREATE ENTITY STORE
STEP 2: EXPORT WEB API
STEP 3: DEPLOY WEB API
STEP 4: MONITOR YOUR WEB API
Part 4

CONCLUSION
PAAS 2.0
• IaaS is a revolution
– fully embraced web APIs
– provides a disruptive new abstraction layer

• PaaS 1.0 is just an evolution
–
–
–
–

only simplifies the deployment aspects
same application languages, similar complexity/time/cost
slow adoption compared to IaaS stellar growth
adapts existing development practices to the Web

• Time for PaaS 2.0 !
– fully embrace web APIs as a disruption factor
– cross-region deployment, zero-downtime, low latency will become standard in
SLAs  your web API can’t stop your partners
– development costs and time to market can be reduced

A whole new web API game is starting !
BREAKING NEWS !
• Seed round recently announced
– $2M raised
• to expand our Engineering team in France
• to accelerate our Marketing efforts in the US

– Experimented board including
• Bertrand Diard, co-founder of Talend, Los Altos
• Matthieu Hug, CEO Fujitsu RunMyProcess, Paris
• Reza Malekzadeth, VP Business of Cumulus, Los Altos

– Third co-founder
• Stève Sfartz, VP Engineering (see talk tomorrow)

• APISpark Public Beta !
– starting today at APIdays Paris
– no more waiting list
– looking forward to getting your feed-back!
http://apispark.com
KEEP IN TOUCH!

http://apispark.com
Twitter: @jlouvel
jlouvel@restlet.com

Source: Wired / June 2013

Web APIs, the New Language Frontier

  • 1.
    WEB APIS, THENEW LANGUAGE FRONTIER All-in-one web API platform http://apispark.com Jérôme LOUVEL jlouvel@restlet.com CEO December 4, 2013
  • 2.
    Part 1 EVOLUTION OFPROGRAMMING LANGUAGES
  • 3.
    TOP PROGRAMMING LANGUAGES Cis still the first language ! Assembly is still in the top 20 ! Source: TIOBE Index
  • 4.
    A TALE OFABSTRACTION HOP, APISpark, WebShell Web API languages Java, JS, Dart, Groovy Application languages C, C++, C#, Obj-C, Go System languages NASM, TASM Intel, AMD, SPARC Assembly languages Hardware Web scale, high availability, multi-tenancy Productivity, portability, business logic Native/OS code, very high performance Lowest level language, tedious maintenance
  • 5.
    WEB API LANGUAGES CURRENTSTATE • Can describe Web APIs – XML or JSON driven representations – proper HTTP methods usage – markup languages (XML, JSON, YAML, MarkDown) • Can generate code – client SDKs – server skeleton
  • 6.
    WEB API LANGUAGES NEXTSTAGE ? • Let developers program the Web – through web APIs instead [Java/JS] APIs – natively speaking the HTTP semantics – not only the API contract, also the implementation ! • Web APIs can be local or remote – inherently component-based – ready for load-balancing, scaling, cross-region • Cloud-ready implementations – multi-tenant execution – run on-top of IaaS – built-in persistence service (synchronized APIs life cycle) … JavaScript based Internal DSL HOP pioneer
  • 7.
    Part 2 RETHINKING WEBAPI DEVELOPMENT
  • 8.
    API EDITOR • Letdevelopers code at the API level – Visual editor – Command line editor • Cloud ready – collaborative edition • think Google Docs and GitHub style – easy composition of multiple APIs • via import instructions • easy discovery mechanism (like Linux or Java package managers)
  • 9.
    API COMPILER Web APIlanguages Generates [Java] code Application languages Generates [JVM byte code] System languages Generates assembly code Assembly languages Generates CPU operations Hardware Compilers translate higher-level languages into lower-level languages
  • 10.
    API DEBUGGER • Letdevelopers debug API calls – HTTP centric, semantics and transport data – pause, stop, continue, set breakpoints – works like a [Java] debugger • Works on both server and client sides – support both synchronous and asynchronous calls – lot of room for innovation! … Interactive HTTP proxy
  • 11.
    API RUNNING • Letdevelopers run APIs – similar to using web API frameworks on top of application languages (eg. Restlet Framework for Java) – similar to API deployment (developer environment) • Special features – no separation between framework and actual language for better productivity – lot of room for innovation! … Restlet Framework based Node JS based
  • 12.
    API DOCUMENTATION • Letdevelopers document APIs – technical documentation easy to maintain – tools similar to Javadocs to keep documentation close to the code – still needs separate user guide and tutorials • Currently mature on the API contracts – what about the implementation details?
  • 13.
    API DEPLOYMENT • Letdevelopers deploy APIs – like Eclipse IDE deployment of Web packages (WAR) to remote application servers – as simple as pressing a button – targets either staging or production environments • Special features – built on top of IaaS – cross-region deployment as a key option • for high-availability • for low latency (geo-DNS routing)
  • 14.
  • 15.
    STEP 1: CREATEENTITY STORE
  • 16.
  • 17.
  • 18.
    STEP 4: MONITORYOUR WEB API
  • 19.
  • 20.
    PAAS 2.0 • IaaSis a revolution – fully embraced web APIs – provides a disruptive new abstraction layer • PaaS 1.0 is just an evolution – – – – only simplifies the deployment aspects same application languages, similar complexity/time/cost slow adoption compared to IaaS stellar growth adapts existing development practices to the Web • Time for PaaS 2.0 ! – fully embrace web APIs as a disruption factor – cross-region deployment, zero-downtime, low latency will become standard in SLAs  your web API can’t stop your partners – development costs and time to market can be reduced A whole new web API game is starting !
  • 21.
    BREAKING NEWS ! •Seed round recently announced – $2M raised • to expand our Engineering team in France • to accelerate our Marketing efforts in the US – Experimented board including • Bertrand Diard, co-founder of Talend, Los Altos • Matthieu Hug, CEO Fujitsu RunMyProcess, Paris • Reza Malekzadeth, VP Business of Cumulus, Los Altos – Third co-founder • Stève Sfartz, VP Engineering (see talk tomorrow) • APISpark Public Beta ! – starting today at APIdays Paris – no more waiting list – looking forward to getting your feed-back! http://apispark.com
  • 22.
    KEEP IN TOUCH! http://apispark.com Twitter:@jlouvel jlouvel@restlet.com Source: Wired / June 2013