SlideShare ist ein Scribd-Unternehmen logo
1 von 26
F*** a Dogfood:

Build your web service on a public API.

             OR ELSE.




             @mattlemay
BUT FIRST:

I am on the product team @bitly.

I am a terrible, terrible coder.

My background is primarily in writing/music.

For my first year at bitly, my title was “API
Evangelist.” During that time, I did not know what
“API” stands for.
Skeptical dog does not want your f*****g dog food.
“Icecreaming”
“Drinking your own Champagne”
“Eating your own dogfood”




“Icecreaming”


          “Drinking your own champagne”
Building a service.
Building a
                             web product/
                               interface
Designing a    Building an
 service      internal API
                              Building a
                              public API
Building a
               web product/
                 interface
 Building an
internal API
                WE NEED TO SHIP, WE
                  CAN MAKE THE
                 PUBLIC API LATER!
                    HURF DURF!
Making it hard for people who are smarter
than you to build on your service for free
          is really f****** dumb.
I REALLY WANT TO BUILD
 SOMETHING SUPER-COOL WITH
YOUR SERVICE! I WILL DO THIS FOR
  FREE, ON MY OWN TIME, AND
     EVERYONE WILL LOVE IT!




      UM COOL. YEAH.
      WE’LL HAVE AN
      API SOON, LOL!!!!
......
NM, GOING TO BUILD
SOMETHING ELSE NOW.

     WELL, BYE.




   OH NOES!
Reverse-engineering a messy internal
API is time-consuming, frustrating, and
          hilariously inefficient.
OH HAY GUYS WHAT DOES
THE DO_THAT_ONE_THING
API METHOD DO? OK COOL
 LET ME UPDATE THE DOCS
  WAIT WHAT DOES THE
HAM_SAMMICH PARAMETER
     MEAN? NOW I AM
BOTHERING YOU AND ALSO
     I AM CRYING AND
        BARFING.....
Building a web
Designing a   Building a      product/
 service      public API    interface on
                           that public API
Document your API alongside the code itself.

          AS you write the code.

  Read your own chicken scratch.
Standards are important.

Readability is more important.
Most people who use your API
won’t care if it is ***TRULY*** RESTful.




They just want it to work, easily and fast.
Think of your API methods as sentences with clear
                 verbs and objects.

Use real words from natural conversations.
ALWAYS RUN YOUR API NAMING CONVENTIONS
  & DOCUMENTATION PAST PEOPLE WHO DID
        *NOT* BUILD THE API ITSELF.
Taking the time to make an API that
other developers can understand and use
  is always worth is. ALWAYS ALWAYS
            ALWAYS worth it.



Eating dogfood is never worth it. NEVER
        NEVER NEVER worth it.

Weitere ähnliche Inhalte

Was ist angesagt?

Building mobile apps with PhoneGap and Titanium appcelerator
Building mobile apps with PhoneGap and Titanium appceleratorBuilding mobile apps with PhoneGap and Titanium appcelerator
Building mobile apps with PhoneGap and Titanium appceleratorChris Ward
 
Getting started in iPhone Development
Getting started in iPhone DevelopmentGetting started in iPhone Development
Getting started in iPhone DevelopmentManesh Lad
 
Library, Library Lets Use THAT Library – DFW Mobile
Library, Library Lets Use THAT Library  – DFW MobileLibrary, Library Lets Use THAT Library  – DFW Mobile
Library, Library Lets Use THAT Library – DFW MobileAdam Hill
 
Developing and Designing Native Mobile Apps in Visual Studio
Developing and Designing Native Mobile Apps in Visual StudioDeveloping and Designing Native Mobile Apps in Visual Studio
Developing and Designing Native Mobile Apps in Visual StudioXamarin
 
Skip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildSkip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildTerry Ryan
 
Adobe and Modern Web Development
Adobe and Modern Web DevelopmentAdobe and Modern Web Development
Adobe and Modern Web DevelopmentTerry Ryan
 
Dallas Android - Android & iOS Development in C# with Xamarin
Dallas Android - Android & iOS Development in C# with XamarinDallas Android - Android & iOS Development in C# with Xamarin
Dallas Android - Android & iOS Development in C# with XamarinJames Montemagno
 
Wordpress as a Back Office for Mobile Applications
Wordpress as a Back Office for Mobile ApplicationsWordpress as a Back Office for Mobile Applications
Wordpress as a Back Office for Mobile ApplicationsBenjamin LUPU
 
Desert code camp 2014, iOS and Android development for c# developers with Xam...
Desert code camp 2014, iOS and Android development for c# developers with Xam...Desert code camp 2014, iOS and Android development for c# developers with Xam...
Desert code camp 2014, iOS and Android development for c# developers with Xam...James Montemagno
 
椒鹽小聚分享 20141117
椒鹽小聚分享 20141117椒鹽小聚分享 20141117
椒鹽小聚分享 20141117孟 李
 
Web design for shoppers
Web design for shoppersWeb design for shoppers
Web design for shoppersMavic Pineda
 

Was ist angesagt? (16)

Building mobile apps with PhoneGap and Titanium appcelerator
Building mobile apps with PhoneGap and Titanium appceleratorBuilding mobile apps with PhoneGap and Titanium appcelerator
Building mobile apps with PhoneGap and Titanium appcelerator
 
Getting started in iPhone Development
Getting started in iPhone DevelopmentGetting started in iPhone Development
Getting started in iPhone Development
 
Library, Library Lets Use THAT Library – DFW Mobile
Library, Library Lets Use THAT Library  – DFW MobileLibrary, Library Lets Use THAT Library  – DFW Mobile
Library, Library Lets Use THAT Library – DFW Mobile
 
Developing and Designing Native Mobile Apps in Visual Studio
Developing and Designing Native Mobile Apps in Visual StudioDeveloping and Designing Native Mobile Apps in Visual Studio
Developing and Designing Native Mobile Apps in Visual Studio
 
The modern PWA Cheat Sheet
The modern PWA Cheat SheetThe modern PWA Cheat Sheet
The modern PWA Cheat Sheet
 
Skip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildSkip the IDE with PhoneGap Build
Skip the IDE with PhoneGap Build
 
Api for dummies
Api for dummiesApi for dummies
Api for dummies
 
Adobe and Modern Web Development
Adobe and Modern Web DevelopmentAdobe and Modern Web Development
Adobe and Modern Web Development
 
Dallas Android - Android & iOS Development in C# with Xamarin
Dallas Android - Android & iOS Development in C# with XamarinDallas Android - Android & iOS Development in C# with Xamarin
Dallas Android - Android & iOS Development in C# with Xamarin
 
Wordpress as a Back Office for Mobile Applications
Wordpress as a Back Office for Mobile ApplicationsWordpress as a Back Office for Mobile Applications
Wordpress as a Back Office for Mobile Applications
 
Desert code camp 2014, iOS and Android development for c# developers with Xam...
Desert code camp 2014, iOS and Android development for c# developers with Xam...Desert code camp 2014, iOS and Android development for c# developers with Xam...
Desert code camp 2014, iOS and Android development for c# developers with Xam...
 
椒鹽小聚分享 20141117
椒鹽小聚分享 20141117椒鹽小聚分享 20141117
椒鹽小聚分享 20141117
 
Flutter by Shubham
Flutter by ShubhamFlutter by Shubham
Flutter by Shubham
 
Cordova 3.x
Cordova 3.xCordova 3.x
Cordova 3.x
 
Portfolio
PortfolioPortfolio
Portfolio
 
Web design for shoppers
Web design for shoppersWeb design for shoppers
Web design for shoppers
 

Andere mochten auch

Digital Urbanism on the Margins: Chinese Migrants and Intensive Technology
Digital Urbanism on the Margins: Chinese Migrants and Intensive TechnologyDigital Urbanism on the Margins: Chinese Migrants and Intensive Technology
Digital Urbanism on the Margins: Chinese Migrants and Intensive Technologytriciawang
 
Engaging Consumers with Technology
Engaging Consumers with Technology Engaging Consumers with Technology
Engaging Consumers with Technology Mary Cain
 
Cuaderno actividades niños 4 años
Cuaderno actividades niños 4 añosCuaderno actividades niños 4 años
Cuaderno actividades niños 4 añosMoisés Gonzalez
 
Sceince year-4
Sceince year-4Sceince year-4
Sceince year-4Irmaz Adam
 
Starbucks site kullanılabilirliği
Starbucks site kullanılabilirliği Starbucks site kullanılabilirliği
Starbucks site kullanılabilirliği ibrahimgsu
 
Dalle narrazioni allo storytelling: individuare, produrre e gestire oggetti c...
Dalle narrazioni allo storytelling: individuare, produrre e gestire oggetti c...Dalle narrazioni allo storytelling: individuare, produrre e gestire oggetti c...
Dalle narrazioni allo storytelling: individuare, produrre e gestire oggetti c...Center for Generative Communication
 
Herramientas digitales
Herramientas digitalesHerramientas digitales
Herramientas digitalescrisreyes90
 
Pdhpe slide show for wiki
Pdhpe slide show for wikiPdhpe slide show for wiki
Pdhpe slide show for wiki16321032
 
Pedego City Commuter
Pedego City CommuterPedego City Commuter
Pedego City CommuterPedego
 
3 Tipps: Lokale Themen grafisch in Szene setzen
3 Tipps: Lokale Themen grafisch in Szene setzen3 Tipps: Lokale Themen grafisch in Szene setzen
3 Tipps: Lokale Themen grafisch in Szene setzenWAN-IFRA_Academy
 
PC Database Solutions - Classification talk for Seattle Executives Association
PC Database Solutions - Classification talk for Seattle Executives AssociationPC Database Solutions - Classification talk for Seattle Executives Association
PC Database Solutions - Classification talk for Seattle Executives Associationalmoslino
 
Opportunities in Behavior change
Opportunities in Behavior changeOpportunities in Behavior change
Opportunities in Behavior changeMary Cain
 

Andere mochten auch (20)

Digital Urbanism on the Margins: Chinese Migrants and Intensive Technology
Digital Urbanism on the Margins: Chinese Migrants and Intensive TechnologyDigital Urbanism on the Margins: Chinese Migrants and Intensive Technology
Digital Urbanism on the Margins: Chinese Migrants and Intensive Technology
 
Engaging Consumers with Technology
Engaging Consumers with Technology Engaging Consumers with Technology
Engaging Consumers with Technology
 
Hanna delight
Hanna delightHanna delight
Hanna delight
 
Shaggy[1]
Shaggy[1]Shaggy[1]
Shaggy[1]
 
Cuaderno actividades niños 4 años
Cuaderno actividades niños 4 añosCuaderno actividades niños 4 años
Cuaderno actividades niños 4 años
 
A fervenza 2
A fervenza 2A fervenza 2
A fervenza 2
 
H2 presentation
H2 presentationH2 presentation
H2 presentation
 
Sceince year-4
Sceince year-4Sceince year-4
Sceince year-4
 
Starbucks site kullanılabilirliği
Starbucks site kullanılabilirliği Starbucks site kullanılabilirliği
Starbucks site kullanılabilirliği
 
Dalle narrazioni allo storytelling: individuare, produrre e gestire oggetti c...
Dalle narrazioni allo storytelling: individuare, produrre e gestire oggetti c...Dalle narrazioni allo storytelling: individuare, produrre e gestire oggetti c...
Dalle narrazioni allo storytelling: individuare, produrre e gestire oggetti c...
 
Herramientas digitales
Herramientas digitalesHerramientas digitales
Herramientas digitales
 
Larutan
LarutanLarutan
Larutan
 
Pdhpe slide show for wiki
Pdhpe slide show for wikiPdhpe slide show for wiki
Pdhpe slide show for wiki
 
Pedego City Commuter
Pedego City CommuterPedego City Commuter
Pedego City Commuter
 
Yandexopas
YandexopasYandexopas
Yandexopas
 
3 Tipps: Lokale Themen grafisch in Szene setzen
3 Tipps: Lokale Themen grafisch in Szene setzen3 Tipps: Lokale Themen grafisch in Szene setzen
3 Tipps: Lokale Themen grafisch in Szene setzen
 
PC Database Solutions - Classification talk for Seattle Executives Association
PC Database Solutions - Classification talk for Seattle Executives AssociationPC Database Solutions - Classification talk for Seattle Executives Association
PC Database Solutions - Classification talk for Seattle Executives Association
 
Opportunities in Behavior change
Opportunities in Behavior changeOpportunities in Behavior change
Opportunities in Behavior change
 
Soul master
Soul masterSoul master
Soul master
 
Detailed drilling
Detailed drillingDetailed drilling
Detailed drilling
 

Ähnlich wie F*** A Dogfood

API first.pptx
API first.pptxAPI first.pptx
API first.pptxOdedApel
 
BLUG 2011 - Explaining the IBM Social Business Toolkit
BLUG 2011 - Explaining the IBM Social Business ToolkitBLUG 2011 - Explaining the IBM Social Business Toolkit
BLUG 2011 - Explaining the IBM Social Business ToolkitRené Winkelmeyer
 
Why are APIs important?
Why are APIs important?Why are APIs important?
Why are APIs important?Andreas Krohn
 
Strange but True: Counterintiutive Paths to Building a Business on APIs
Strange but True: Counterintiutive Paths to Building a Business on APIsStrange but True: Counterintiutive Paths to Building a Business on APIs
Strange but True: Counterintiutive Paths to Building a Business on APIsThomas Bouldin
 
APIdays Paris 2018 - The Lord of API Design, Arnaud Lauret, API Handyman & AP...
APIdays Paris 2018 - The Lord of API Design, Arnaud Lauret, API Handyman & AP...APIdays Paris 2018 - The Lord of API Design, Arnaud Lauret, API Handyman & AP...
APIdays Paris 2018 - The Lord of API Design, Arnaud Lauret, API Handyman & AP...apidays
 
I Love APIs - Oct 2015
I Love APIs - Oct 2015I Love APIs - Oct 2015
I Love APIs - Oct 2015Mike McNeil
 
Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)Future Insights
 
LF_APIStrat17_API Style Guide: The Lord of API Designs
LF_APIStrat17_API Style Guide: The Lord of API DesignsLF_APIStrat17_API Style Guide: The Lord of API Designs
LF_APIStrat17_API Style Guide: The Lord of API DesignsLF_APIStrat
 
6 Best OpenAPI Documentation Tools that You must Know
6 Best OpenAPI Documentation Tools that You must Know6 Best OpenAPI Documentation Tools that You must Know
6 Best OpenAPI Documentation Tools that You must KnowMars Devs
 
APIs for your Business + Stages of the API Lifecycle
APIs for your Business + Stages of the API LifecycleAPIs for your Business + Stages of the API Lifecycle
APIs for your Business + Stages of the API Lifecycle3scale
 
Space Camp June 2022 - API First.pdf
Space Camp June 2022 - API First.pdfSpace Camp June 2022 - API First.pdf
Space Camp June 2022 - API First.pdfPostman
 
Using WordPress as a Headless CMS with WPGraphQL
Using WordPress as a Headless CMS with WPGraphQLUsing WordPress as a Headless CMS with WPGraphQL
Using WordPress as a Headless CMS with WPGraphQLAri-Pekka Koponen
 
Always Mind Your [Developer] Surroundings - API City 2018
Always Mind Your [Developer] Surroundings - API City 2018Always Mind Your [Developer] Surroundings - API City 2018
Always Mind Your [Developer] Surroundings - API City 2018Bill Doerrfeld
 
Documenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxDocumenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxXDuce Corporation
 
IBM Connect 2017: Refresh and Extend IBM Domino Applications
IBM Connect 2017: Refresh and Extend IBM Domino ApplicationsIBM Connect 2017: Refresh and Extend IBM Domino Applications
IBM Connect 2017: Refresh and Extend IBM Domino ApplicationsEd Brill
 
Speaking APIsh makes your business more agile
Speaking APIsh makes your business more agileSpeaking APIsh makes your business more agile
Speaking APIsh makes your business more agileMarjukka Niinioja
 
API Design Principles using Oracle Apiary.io
API Design Principles using Oracle Apiary.ioAPI Design Principles using Oracle Apiary.io
API Design Principles using Oracle Apiary.ioRolando Carrasco
 
The relevance of design principles for WEB APIs
The relevance of design principles for WEB APIsThe relevance of design principles for WEB APIs
The relevance of design principles for WEB APIsRolando Carrasco
 

Ähnlich wie F*** A Dogfood (20)

API first.pptx
API first.pptxAPI first.pptx
API first.pptx
 
BLUG 2011 - Explaining the IBM Social Business Toolkit
BLUG 2011 - Explaining the IBM Social Business ToolkitBLUG 2011 - Explaining the IBM Social Business Toolkit
BLUG 2011 - Explaining the IBM Social Business Toolkit
 
Why are APIs important?
Why are APIs important?Why are APIs important?
Why are APIs important?
 
Strange but True: Counterintiutive Paths to Building a Business on APIs
Strange but True: Counterintiutive Paths to Building a Business on APIsStrange but True: Counterintiutive Paths to Building a Business on APIs
Strange but True: Counterintiutive Paths to Building a Business on APIs
 
APIdays Paris 2018 - The Lord of API Design, Arnaud Lauret, API Handyman & AP...
APIdays Paris 2018 - The Lord of API Design, Arnaud Lauret, API Handyman & AP...APIdays Paris 2018 - The Lord of API Design, Arnaud Lauret, API Handyman & AP...
APIdays Paris 2018 - The Lord of API Design, Arnaud Lauret, API Handyman & AP...
 
I Love APIs - Oct 2015
I Love APIs - Oct 2015I Love APIs - Oct 2015
I Love APIs - Oct 2015
 
Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)
 
LF_APIStrat17_API Style Guide: The Lord of API Designs
LF_APIStrat17_API Style Guide: The Lord of API DesignsLF_APIStrat17_API Style Guide: The Lord of API Designs
LF_APIStrat17_API Style Guide: The Lord of API Designs
 
6 Best OpenAPI Documentation Tools that You must Know
6 Best OpenAPI Documentation Tools that You must Know6 Best OpenAPI Documentation Tools that You must Know
6 Best OpenAPI Documentation Tools that You must Know
 
Bp209
Bp209Bp209
Bp209
 
APIs for your Business + Stages of the API Lifecycle
APIs for your Business + Stages of the API LifecycleAPIs for your Business + Stages of the API Lifecycle
APIs for your Business + Stages of the API Lifecycle
 
Space Camp June 2022 - API First.pdf
Space Camp June 2022 - API First.pdfSpace Camp June 2022 - API First.pdf
Space Camp June 2022 - API First.pdf
 
Using WordPress as a Headless CMS with WPGraphQL
Using WordPress as a Headless CMS with WPGraphQLUsing WordPress as a Headless CMS with WPGraphQL
Using WordPress as a Headless CMS with WPGraphQL
 
Always Mind Your [Developer] Surroundings - API City 2018
Always Mind Your [Developer] Surroundings - API City 2018Always Mind Your [Developer] Surroundings - API City 2018
Always Mind Your [Developer] Surroundings - API City 2018
 
Documenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxDocumenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptx
 
IBM Connect 2017: Refresh and Extend IBM Domino Applications
IBM Connect 2017: Refresh and Extend IBM Domino ApplicationsIBM Connect 2017: Refresh and Extend IBM Domino Applications
IBM Connect 2017: Refresh and Extend IBM Domino Applications
 
14 API Directories
14 API Directories14 API Directories
14 API Directories
 
Speaking APIsh makes your business more agile
Speaking APIsh makes your business more agileSpeaking APIsh makes your business more agile
Speaking APIsh makes your business more agile
 
API Design Principles using Oracle Apiary.io
API Design Principles using Oracle Apiary.ioAPI Design Principles using Oracle Apiary.io
API Design Principles using Oracle Apiary.io
 
The relevance of design principles for WEB APIs
The relevance of design principles for WEB APIsThe relevance of design principles for WEB APIs
The relevance of design principles for WEB APIs
 

Kürzlich hochgeladen

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
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
 
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
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
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
 
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
 
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
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
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
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
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
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
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
 

Kürzlich hochgeladen (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
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
 
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
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
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
 
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 ...
 
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
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
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...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
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
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

F*** A Dogfood

  • 1. F*** a Dogfood: Build your web service on a public API. OR ELSE. @mattlemay
  • 2. BUT FIRST: I am on the product team @bitly. I am a terrible, terrible coder. My background is primarily in writing/music. For my first year at bitly, my title was “API Evangelist.” During that time, I did not know what “API” stands for.
  • 3.
  • 4. Skeptical dog does not want your f*****g dog food.
  • 6. “Drinking your own Champagne”
  • 7. “Eating your own dogfood” “Icecreaming” “Drinking your own champagne”
  • 9. Building a web product/ interface Designing a Building an service internal API Building a public API
  • 10.
  • 11. Building a web product/ interface Building an internal API WE NEED TO SHIP, WE CAN MAKE THE PUBLIC API LATER! HURF DURF!
  • 12. Making it hard for people who are smarter than you to build on your service for free is really f****** dumb.
  • 13. I REALLY WANT TO BUILD SOMETHING SUPER-COOL WITH YOUR SERVICE! I WILL DO THIS FOR FREE, ON MY OWN TIME, AND EVERYONE WILL LOVE IT! UM COOL. YEAH. WE’LL HAVE AN API SOON, LOL!!!!
  • 15. NM, GOING TO BUILD SOMETHING ELSE NOW. WELL, BYE. OH NOES!
  • 16. Reverse-engineering a messy internal API is time-consuming, frustrating, and hilariously inefficient.
  • 17. OH HAY GUYS WHAT DOES THE DO_THAT_ONE_THING API METHOD DO? OK COOL LET ME UPDATE THE DOCS WAIT WHAT DOES THE HAM_SAMMICH PARAMETER MEAN? NOW I AM BOTHERING YOU AND ALSO I AM CRYING AND BARFING.....
  • 18. Building a web Designing a Building a product/ service public API interface on that public API
  • 19. Document your API alongside the code itself. AS you write the code. Read your own chicken scratch.
  • 20.
  • 21.
  • 23. Most people who use your API won’t care if it is ***TRULY*** RESTful. They just want it to work, easily and fast.
  • 24. Think of your API methods as sentences with clear verbs and objects. Use real words from natural conversations.
  • 25. ALWAYS RUN YOUR API NAMING CONVENTIONS & DOCUMENTATION PAST PEOPLE WHO DID *NOT* BUILD THE API ITSELF.
  • 26. Taking the time to make an API that other developers can understand and use is always worth is. ALWAYS ALWAYS ALWAYS worth it. Eating dogfood is never worth it. NEVER NEVER NEVER worth it.

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n