Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ApiBuilder

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for sullis sullis
July 18, 2017

 ApiBuilder

Portland Java User Group
July 18, 2017
Portland Oregon
#rest #java #scala #json #gilt #apibuilder

Avatar for sullis

sullis

July 18, 2017

More Decks by sullis

Other Decks in Technology

Transcript

  1. • software engineer • 21 years on the JVM •

    back office systems @ HBC About me
  2. • 1996: CORBA 2.0 IDL • 1997: Java RMI remote

    interfaces • 1999: EJB remote interfaces • 2000: WSDL 1.0 (SOAP)
  3. • 2006: WADL (REST) • 2011: Swagger (REST) • 2014:

    ApiDoc (REST) • 2017: ApiDoc rebranded to ApiBuilder
  4. • Rails app • JSP web framework • ~10 services

    (Java) • handcrafted Java clients • weak typing (java.util.HashMap) Gilt: 2009 => 2010
  5. • JSP’s • 100+ services (Java, Scala) • strongly typed

    client libraries • Gilt “Commons” library Gilt: 2011 => 2013
  6. • Gilt Commons library • 250+ services • dependency hell

    • ApiBuilder project started on Github Gilt: 2014
  7. Mitigating dependency hell • API design must be first class

    • backwards and forward compatibility • accurate documentation • generated client libraries
  8. • 350+ services • new services built with ApiBuilder +

    generated clients • Gilt Commons library is deprecated Gilt: 2015 => 2017