Upload
3scale
View
9.134
Download
5
Embed Size (px)
Citation preview
Software is Eating the World, APIs are Eating Software
Steven Willmott 3scale networks
@3scale - http://www.3scale.net
On Demand API Infrastructure: http://3scale.net @3scale
Powering 200+ APIsBillions API Calls / Month
“Software is Eating the World”
Marc Andreessen – WSJ / August 2011
Almost every major industry is becoming software driven
MusicRetail Video Telephony
Meaning:
…
Examples
Lytro: “Software Defined Cameras”
Philips Hue: “Software ControlledLighting”
Amazon: “Software Driven Retail”
Pixar: “Software powered animation”
APIs eat Software
Meaning:
1
2
APIs are the key glue that make this software remotely addressable
APIs provide a myriad of new external building blocks to speed up and enrich software development
3 If you do these things together special things happen
Remotely Addressable = Opening up some network
addressable interface
Examples
London Transport: Open Data
Evernote: “Platformization”
Netflix: “Massive Distribution”
JCI: “Software Controlled Buildings”
ThousandsOf Devices
Adoption is across all sectors
Diversity: Sectors
Games
Blogging
Transport
Dating
Dictionary
Events
Job Search
Payment
Real EstatePIM
News
Security
Telephony
Credit: Sample Categories Programmable Web
Diversity: Sizes of Companies
Credit: API Survey / John Sheehan 2012
Diversity: Business Models
Credit: 3scale 1000 APIs Survey 2012
• Only 24% “API is the product”• The Vast
Majority power non-API Business Models
Software is essentially useless without remotely addressable interfaces
There are downsides too opening APIs too
• Security is key• Scalability needs to be
built in• It requires long term
support• Design can be hard• New type of business
interactionStill: the Upsides are Compelling
• Vendors can Help• In many cases some
of the work is already done
How are APIs Changing Application Development?
APIs are the new Libs
“In computer science, a library is a collection of implementations of behavior, written in terms of a language, that has a well-defined interface by which the behavior is invoked”
Credit: Wikipedia
Speed (Time to Market)
e.g. + Devops Borat
e.g.(Top Mashup on
Progr Web)
Richness / Functionality
e.g.
e.g.
Offboarding
e.g.
e.g.
(Rich Photo EffectsFor Mobile by SDK)
(Monitoring System in the Cloud)
Reliability
e.g.
e.g.
(Email by API)
(Amazon S3)
There are downsides too using external APIs too
• Latency?• Availability?• Security?• SLAs?• Can’t Access Code• Cost• Service Continuity? The Upsides are
Compelling
• In most cases there are no other ways to solve the problem
• Tools are emerging
The Sum of the Two
APIs Will Eat Software
Software Before 1995 Software 1995 – 2010 Software 2010 -
Enables specialization, focus, much wider distribution
Businesses (via their Software and APIs) are acting
as components
Software as Model-View-Controller
VIEW = FORM
MODEL = DATA
CONTROLLER = BUSINESS LOGIC
Model
View Controller
Example “Models”
Model
Data Anywhere in any form
(copyrights / respective owners)
Example: Views
View
Many Delivery Channels
(copyrights / respective owners)
Example: Controllers
Controller
Many Delivery Channels
(copyrights / respective owners)
APIs Enable Separation & Focus
Model View Controller
Data Anywhere in any form
Many Delivery Channels
Third parties operating on data
Distributed Applications
Software + APIs allow Businesses to co-evolve
much faster
Fundamentally Different Model of Programming
(MVC is only one model – the point is: componentization is possible)
Conclusions
APIs Software World
Take Aways
1
2
The World will get Software Enabled
… and hence API Enabled
=> Radical impact on the Software we write and what is possible
=>… The shift is as radical as the emergence of the Web …
Thank you!
[email protected]@njyx, @3scale
We make Awesome API Management Tools:http://www.3scale.net/