SlideShare ist ein Scribd-Unternehmen logo
1 von 104
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Mehr von 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
 

Mehr von 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
 

Kürzlich hochgeladen

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 

Kürzlich hochgeladen (20)

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 

First-Class APIs, DPC 2011, Amsterdam