First-Class APIs, DPC 2011, Amsterdam

  • Published on
    12-Sep-2014

  • View
    3.308

  • Download
    2

Embed Size (px)

DESCRIPTION

APIs are commonly an afterthought, like a hot tub awkwardly attached to a housea shoehorned approach that produces a suboptimal app with scarce support that lacks documentation. In effect, APIs are the ugly stepchild of the Web.This is a sad reality that we are faced with, because many companies make their living consuming third-party APIs and mixing in their own data to create amazing and interesting mashups. In the initial phases of development, there is rarely enough money to develop the app and its API. By the time theres both demand and money, it can be hard to fit an API on top of the architecture in such a way that the whole thing wont fall over. APIs should be first class citizens of the Web. Inconceivable? Possimpible? Not at all!In this talk we will dive deeper into why APIs are an afterthought, how we can change that. We will also touch on how that can benefit your product down the line in terms of resource savings and infrastructure efficiency, as well as the impact it will have on your infrastructure.This talk is inspired by my phpadvent article: http://phpadvent.org/201002

Transcript

  • First-Class APIs

    Helgi ormar orbjrnssonDutch PHP Conference, Amsterdam, 21st May 2011

    Tuesday, 24 May 2011

  • Hi there, Im Helgi

    Tuesday, 24 May 2011

  • VP of Engineering at Orchestra.io

    Tuesday, 24 May 2011

  • VP of Engineering at Orchestra.io

    Developer at PEAR

    Tuesday, 24 May 2011

  • VP of Engineering at Orchestra.io

    Developer at PEAR

    From Iceland

    Tuesday, 24 May 2011

  • VP of Engineering at Orchestra.io

    Developer at PEAR

    From Iceland

    @h on Twitter

    Tuesday, 24 May 2011

  • 1995 2000 2005 2010

    John MusserFounder, Programmable Web

    Tuesday, 24 May 2011

  • Why do we need a website?

    1995 2000 2005 2010

    John MusserFounder, Programmable Web

    Tuesday, 24 May 2011

  • Why do we need a website?

    Of course we have a website

    1995 2000 2005 2010

    John MusserFounder, Programmable Web

    Tuesday, 24 May 2011

  • Why do we need a website?

    Of course we have a website

    Why do we need an API?

    1995 2000 2005 2010

    John MusserFounder, Programmable Web

    Tuesday, 24 May 2011

  • Why do we need a website?

    Of course we have a website

    Why do we need an API?

    Of course we have an API

    1995 2000 2005 2010

    John MusserFounder, Programmable Web

    Tuesday, 24 May 2011

  • Data is the new business model

    Tuesday, 24 May 2011

  • APIs are the business glue

    Tuesday, 24 May 2011

  • Business without an API?

    Tuesday, 24 May 2011

  • Developers hunger to use your data

    Tuesday, 24 May 2011

  • Do not keep it all to your self

    Tuesday, 24 May 2011

  • The data wasnt yours to begin with!

    Tuesday, 24 May 2011

  • Tuesday, 24 May 2011

  • Mine?Mine?Mine?Mine?

    Mine? Mine?

    Mine?

    Mine?

    Mine?

    Tuesday, 24 May 2011

  • Not everyone believes this

    Tuesday, 24 May 2011

  • They do like their ivory towers

    Tuesday, 24 May 2011

  • For years APIs have been treated as...

    Tuesday, 24 May 2011

  • Second-Class Citizen

    Tuesday, 24 May 2011

  • Why?

    Tuesday, 24 May 2011

  • Its a conceptional problem

    Tuesday, 24 May 2011

  • Companies believing they will lose business if they share

    Tuesday, 24 May 2011

  • Websites are considered the business

    Tuesday, 24 May 2011

  • Not the API

    Tuesday, 24 May 2011

  • APIs are for the cool kids

    Tuesday, 24 May 2011

  • Or...

    Tuesday, 24 May 2011

  • Not enough money

    Tuesday, 24 May 2011

  • Not enough time

    Tuesday, 24 May 2011

  • Not enough resources

    Tuesday, 24 May 2011

  • Not enough foresight

    Tuesday, 24 May 2011

  • Finally the time/money comes

    Tuesday, 24 May 2011

  • Shoehorned onto the website

    Tuesday, 24 May 2011

  • Hot tub awkwardly attached to a house

    Tuesday, 24 May 2011

  • Tuesday, 24 May 2011

  • Sparse Documentation

    Tuesday, 24 May 2011

  • Ill maintained code

    Tuesday, 24 May 2011

  • Lack of testing

    Tuesday, 24 May 2011

  • Ticket response time is in the weeks not days

    Tuesday, 24 May 2011

  • It is a problem with management

    Tuesday, 24 May 2011

  • APIs should be...

    Tuesday, 24 May 2011

  • First-Class Citizens

    Tuesday, 24 May 2011

  • Tuesday, 24 May 2011

  • Inconceivable?

    Tuesday, 24 May 2011

  • Absolutely not!

    Tuesday, 24 May 2011

  • 2010 Mobile

    Tuesday, 24 May 2011

  • 2011 Tablets

    Tuesday, 24 May 2011

  • There are few companies that really get this

    Tuesday, 24 May 2011

  • Opening up the API when they release mobile clients

    Tuesday, 24 May 2011

  • New trend for startups

    Tuesday, 24 May 2011

  • Start with an APINot

    a website.

    Tuesday, 24 May 2011

  • Start with an APINot

    a website.

    Tuesday, 24 May 2011

  • Why do this?

    Tuesday, 24 May 2011

  • Mashups!

    Tuesday, 24 May 2011

  • Supply and Demand

    Tuesday, 24 May 2011

  • There is a demand for APIs

    Tuesday, 24 May 2011

  • Developers are the supply

    Tuesday, 24 May 2011

  • Going First-Class?

    Tuesday, 24 May 2011

  • Common architecture

    Tuesday, 24 May 2011

  • Data

    API Website

    MVCMVC

    Tuesday, 24 May 2011

  • Data

    API Website

    MVCMVC

    REJECTEDTuesday, 24 May 2011

  • Data

    API Website

    MVC

    Tuesday, 24 May 2011

  • Data

    API Website

    MVC

    REJECTEDTuesday, 24 May 2011

  • Upgrading the API to First-Class

    Tuesday, 24 May 2011

  • Data

    API

    Website

    MVC 3rd PartyMobile

    Tuesday, 24 May 2011

  • Website as a client

    Tuesday, 24 May 2011

  • Data

    API

    Website

    MVC 3rd PartyMobile

    JavaScript

    Tuesday, 24 May 2011

  • FRAPI(getfrapi.com)

    Tuesday, 24 May 2011

  • Any downsides!?

    Tuesday, 24 May 2011

  • Of course!

    Tuesday, 24 May 2011

  • The gain?

    Tuesday, 24 May 2011

  • API becomes the core business

    Tuesday, 24 May 2011

  • Better Documentation

    Tuesday, 24 May 2011

  • More extensive tests

    Tuesday, 24 May 2011

  • Better response time on bugs

    Tuesday, 24 May 2011

  • Consistency

    Tuesday, 24 May 2011

  • Higher upfront cost but lower in the long term

    Tuesday, 24 May 2011

  • Twitter

    Tuesday, 24 May 2011

  • Started in 2006

    Tuesday, 24 May 2011

  • Took o in 2007 at SXSW

    Tuesday, 24 May 2011

  • 20k 60k tweets per day

    Tuesday, 24 May 2011

  • 200% Growth

    Tuesday, 24 May 2011

  • There was no API

    Tuesday, 24 May 2011

  • Developers asked for it

    Tuesday, 24 May 2011

  • And of course it got bolted on

    Tuesday, 24 May 2011

  • API was half cooked and organically grew

    Tuesday, 24 May 2011

  • They tried their best, but...

    Tuesday, 24 May 2011

  • Tuesday, 24 May 2011

  • #NewTwitter in Oct 2010

    Tuesday, 24 May 2011

  • Web client consuming its own API.

    Tuesday, 24 May 2011

  • More care was taken on the API side

    Tuesday, 24 May 2011

  • What if Facebook did the same?

    Tuesday, 24 May 2011

  • In conclusion

    Tuesday, 24 May 2011

  • Treat the API as your core business

    Tuesday, 24 May 2011

  • Or at least plan it from the start

    Tuesday, 24 May 2011

  • Tuesday, 24 May 2011

  • ClientsLogin

    Image Hosting

    URL Shorteners

    Analytics

    etc

    etc

    etc

    Tuesday, 24 May 2011

  • Outsource the innovation of UX to people who know

    how to!

    Tuesday, 24 May 2011

  • Tuesday, 24 May 2011

  • NO MORE

    Tuesday, 24 May 2011

  • Thanks for coming!

    Joind.in: http://joind.in/3241

    @hhelgi@orchestra.io

    Tuesday, 24 May 2011