SlideShare une entreprise Scribd logo
1  sur  104
Télécharger pour lire hors ligne
First-Class APIs


                                   Helgi Þormar Þorbjörnsson
                        Dutch PHP Conference, Amsterdam, 21st May 2011

Tuesday, 24 May 2011
Hi there, I’m 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 Musser
                                     Founder, Programmable Web

Tuesday, 24 May 2011
Why do we need
           a website?




        1995              2000   2005            2010


                                                       John Musser
                                        Founder, Programmable Web

Tuesday, 24 May 2011
Why do we need    Of course we
           a website?     have a website




        1995               2000            2005            2010


                                                                 John Musser
                                                  Founder, Programmable Web

Tuesday, 24 May 2011
Why do we need    Of course we    Why do we need
           a website?     have a website      an API?




        1995               2000               2005                   2010


                                                                           John Musser
                                                            Founder, Programmable Web

Tuesday, 24 May 2011
Why do we need    Of course we    Why do we need        Of course we
           a website?     have a website      an API?            have an API




        1995               2000               2005                   2010


                                                                           John Musser
                                                            Founder, 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 wasn’t 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
It’s 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 API
                              Not
                          a website.



Tuesday, 24 May 2011
Start with an API
                              Not
                          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




                       MVC           MVC




                       API          Website

Tuesday, 24 May 2011
RE     Data


                             JE
                       MVC     CT     MVC


                                     ED
                       API           Website

Tuesday, 24 May 2011
Data




                             MVC




                       API          Website

Tuesday, 24 May 2011
RE     Data


                             JE
                               CT
                              MVC


                                     ED
                       API           Website

Tuesday, 24 May 2011
Upgrading the API
                     to First-Class


Tuesday, 24 May 2011
Data



                         API



            Mobile      MVC      3rd Party


                       Website
Tuesday, 24 May 2011
Website as a client



Tuesday, 24 May 2011
Data



                         API



            Mobile      MVC      3rd Party


 JavaScript            Website
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 off 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 it’s
                               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
Clients      URL
                        Login
                                           Shorteners




                         etc                 etc




                        Image
                                   etc     Analytics
                       Hosting


Tuesday, 24 May 2011
Outsource the innovation of
                 UX to people who know
                         how to!



Tuesday, 24 May 2011
Tuesday, 24 May 2011
N
                        O
                            M
                             OR
                                E
Tuesday, 24 May 2011
Thanks for coming!

                       @h
                       helgi@orchestra.io




                       Joind.in: http://joind.in/3241
Tuesday, 24 May 2011

Contenu connexe

Plus de Helgi Þormar Þorbjörnsson

Scale like an ant, distribute the workload - DPC, Amsterdam, 2011
Scale like an ant, distribute the workload - DPC, Amsterdam,  2011Scale like an ant, distribute the workload - DPC, Amsterdam,  2011
Scale like an ant, distribute the workload - DPC, Amsterdam, 2011Helgi Þormar Þorbjörnsson
 
Think like an ant, distribute the workload - PhpDay, Italy, 2011
Think like an ant, distribute the workload - PhpDay, Italy, 2011Think like an ant, distribute the workload - PhpDay, Italy, 2011
Think like an ant, distribute the workload - PhpDay, Italy, 2011Helgi Þormar Þorbjörnsson
 
Plant Pyrus in your system - A guide to a plugin system.
Plant Pyrus in your system - A guide to a plugin system.Plant Pyrus in your system - A guide to a plugin system.
Plant Pyrus in your system - A guide to a plugin system.Helgi Þormar Þorbjörnsson
 
Website releases made easy with the PEAR installer, OSCON 2009
Website releases made easy with the PEAR installer, OSCON 2009Website releases made easy with the PEAR installer, OSCON 2009
Website releases made easy with the PEAR installer, OSCON 2009Helgi Þormar Þorbjörnsson
 
Website releases made easy with the PEAR installer - Barcelona 2008
Website releases made easy with the PEAR installer - Barcelona 2008Website releases made easy with the PEAR installer - Barcelona 2008
Website releases made easy with the PEAR installer - Barcelona 2008Helgi Þormar Þorbjörnsson
 

Plus de Helgi Þormar Þorbjörnsson (18)

Phar, The PHP .exe Format
Phar, The PHP .exe FormatPhar, The PHP .exe Format
Phar, The PHP .exe Format
 
Distribute the workload, PHP Barcelona 2011
Distribute the workload, PHP Barcelona 2011Distribute the workload, PHP Barcelona 2011
Distribute the workload, PHP Barcelona 2011
 
Distribute the workload, PHPTek, Amsterdam, 2011
Distribute the workload, PHPTek, Amsterdam, 2011Distribute the workload, PHPTek, Amsterdam, 2011
Distribute the workload, PHPTek, Amsterdam, 2011
 
Frontend Caching, PHPTek 2011, Chicago
Frontend Caching, PHPTek 2011, ChicagoFrontend Caching, PHPTek 2011, Chicago
Frontend Caching, PHPTek 2011, Chicago
 
Scale like an ant, distribute the workload - DPC, Amsterdam, 2011
Scale like an ant, distribute the workload - DPC, Amsterdam,  2011Scale like an ant, distribute the workload - DPC, Amsterdam,  2011
Scale like an ant, distribute the workload - DPC, Amsterdam, 2011
 
Think like an ant, distribute the workload - PhpDay, Italy, 2011
Think like an ant, distribute the workload - PhpDay, Italy, 2011Think like an ant, distribute the workload - PhpDay, Italy, 2011
Think like an ant, distribute the workload - PhpDay, Italy, 2011
 
Frontend caching - PHP Day, Italy, 2011
Frontend caching - PHP Day, Italy, 2011Frontend caching - PHP Day, Italy, 2011
Frontend caching - PHP Day, Italy, 2011
 
Frontend caching
Frontend cachingFrontend caching
Frontend caching
 
Plant Pyrus in your system - A guide to a plugin system.
Plant Pyrus in your system - A guide to a plugin system.Plant Pyrus in your system - A guide to a plugin system.
Plant Pyrus in your system - A guide to a plugin system.
 
PEAR2 & Pyrus - The look ahead
PEAR2 & Pyrus - The look aheadPEAR2 & Pyrus - The look ahead
PEAR2 & Pyrus - The look ahead
 
Frontend Caching - The "new" frontier
Frontend Caching - The "new" frontierFrontend Caching - The "new" frontier
Frontend Caching - The "new" frontier
 
Caching for Cash, part 4 DPC 2009
Caching for Cash, part 4 DPC 2009Caching for Cash, part 4 DPC 2009
Caching for Cash, part 4 DPC 2009
 
Cashing For Cash, part 1 DPC 2009
Cashing For Cash, part 1 DPC 2009Cashing For Cash, part 1 DPC 2009
Cashing For Cash, part 1 DPC 2009
 
Website releases made easy with the PEAR installer, OSCON 2009
Website releases made easy with the PEAR installer, OSCON 2009Website releases made easy with the PEAR installer, OSCON 2009
Website releases made easy with the PEAR installer, OSCON 2009
 
Caching for Cash - Part 4
Caching for Cash - Part 4Caching for Cash - Part 4
Caching for Cash - Part 4
 
Caching for Cash - Part 1
Caching for Cash - Part 1Caching for Cash - Part 1
Caching for Cash - Part 1
 
Coping with Cyber Monday
Coping with Cyber MondayCoping with Cyber Monday
Coping with Cyber Monday
 
Website releases made easy with the PEAR installer - Barcelona 2008
Website releases made easy with the PEAR installer - Barcelona 2008Website releases made easy with the PEAR installer - Barcelona 2008
Website releases made easy with the PEAR installer - Barcelona 2008
 

Dernier

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Dernier (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

First-Class APIs, DPC 2011, Amsterdam