API's Need Tests Too!
$55.99
Regular Price
$50.00
Bundle Price

API's Need Tests Too!

Build APIs You Won't Hate
Minimum Viable Tests
The following 2 books are included in this bundle...

About the Bundle

APIs form the backbone of online applications at a time where multiple front-ends are becoming business-as-usual so learning to create them in a way so you don't hate yourself later is important. But a good API isn't enough -- you need to be able to test what you've done so pushes to production are no longer stressful and changes don't break what you've already built.

This bundle gives you the building blocks for creating well-designed and properly-tested API's written in PHP. Phil Sturgeon and Chris Hartjes have more than 25 years of combined experience building PHP applications of all shapes and sizes and want to help you get better. The combination of Phil's "Build APIs You Won't Hate" and Chris' "Minimum Viable Tests" can give you the foundation to create and maintain the APIs that are the key to the success of your application.

  • Share this bundle

About the Books

Build APIs You Won't Hate

Build APIs You Won't Hate

Everyone and their dog wants an API, so you should probably learn how to build them.
  • 4,179

    Readers

  • 194

    Pages

  • 38,206

    Words

  • 100%

    Complete

  • PDF

  • EPUB

  • MOBI

  • APP

API development is becoming increasingly common for server-side developers thanks to the rise of front-end JavaScript frameworks, iPhone applications, and API-centric architectures. It might seem like grabbing stuff from a data source and shoving it out as JSON would be easy, but surviving changes in business logic, database schema updates, new features, or deprecated endpoints can be a nightmare.

After finding many of the existing resources for API development to be lacking, Phil learned a lot of things the hard way through years of trial and error. This book aims to condense that experience, taking examples and explanations further than the trivial apples and pears nonsense tutorials often provide.

Phil worked primarily as an API developer for the last three years. One horror was managing an API built in FuelPHP by a freelancer at the million dollar startup he joined. It was utilizing a then deprecated ORM which had been hacked to death by the previous developer, so took the time to delete that mess and build the next version in Laravel, leveraging it's simple routing, database migrations, schema, seeding, etc. When the following major version of the API was built no rewrite was required, and both managed to live side-by-side on the same "API" servers.

By passing on some best practices and general good advice you can hit the ground running with API development, combined with some horror stories and how they were overcome/avoided/averted. This book will discuss the theory of designing and building APIs in any language or framework, with this theory applied in PHP-based examples.

Some of the more advanced topics covered here are endpoint testing, embedding data objects in a consistent and scalable manner, paginating responses (including embedded objects) and hypermedia "HATEOAS" controls.

Minimum Viable Tests

Minimum Viable Tests

  • 279

    Readers

  • 100%

    Complete

  • PDF

  • EPUB

  • MOBI

  • APP

You've been doing PHP development for a while but you find yourself constantly battling bugs, finding it hard to integrate bits of code together, and staying late to do deployments. You know there is a better way through test-driven development but you have no idea where to start.

You imagine yourself sitting down with an experienced developer -- just you and them, steadily working through problems and learning how to use test-driven development to design the API's and interfaces for your code while making sure nothing leaves development until you're 100% sure it's working.

In "Minimum Viable Tests" long-time PHP testing evangelist Chris Hartjes starts you off with the basics on the concepts surrounding test-driven development and shows you how a long-time grumpy programmer writes application with testing always in the front of his mind. Along the way you'll learn about:

  • Chris' concept of "metatesting"
  • The basics of what PHPUnit is and how it works
  • The role of tests in the development process
  • Effective use of test doubles
  • Understanding how to mimic your application's environment via bootstrapping
  • Writing wrappers around web API calls to make testing easier
  • How fixtures and data providers help simplify your tests both today and tomorrow
  • When you should use (and not abuse) monkey-patching tools
  • The Arrange-Act-Assert test-writing strategy
  • How to refactor existing tests

Chris has been watching and listening to people as they start their journey towards become test-driven developers. "Minimum Viable Tests" is designed to be your guide on the path to having well-tested, confidently-deployed PHP applications.

About the Authors

Phil Sturgeon
Phil Sturgeon

Phil has seen a few trends come and go during a long and varied career of building stuff for money as an employee, freelancer, consultant and now CTO. One trend over recent years is the rise of APIs as an everyday part of the average server-side developers job.

Back in 2009 Phil released a CodeIgniter Rest Server, wrote a few articles about how to use it and built handfuls of APIs for his freelance clients. This tool was fairly basic, but covered HTTP-based routing, HTTP Basic/Digest/API Key authentication, added logging and throttling and did not force CRUD-based conventions. The internet seemed to like it, and this code is still used by Apple, the UN and USA.gov.

Later on as a core-contributor to FuelPHP he added this functionality to the core, and again built out a bunch of APIs for people. Then he got a job in NYC, to take over as Lead Engineer for a company that - you guessed it - had a FuelPHP API and wanted to improve it.

After two years of working on their API, Phil has moved to Ride.com, building their API with an amazing team of developers.

Phil has been building APIs for so long, he has come up with a very long list of ways to make them not suck, and he'd like to share the information with you all.

Chris Hartjes
Chris Hartjes

Chris Hartjes has been building web applications of all shapes and sizes since 1998, with a focus on best practices and how to use testing as an effective development tool.

By day he works as a Senior QA Engineer for Mozilla while by night he works on building his online info-product empire through http://grumpy-learning.com. He also is one of the organizers of the True North PHP conference.

He lives in Milton, Ontario, Canada with his long-suffering wife, two daughters, and a feline Office Manager.

The Leanpub Unconditional, No Risk, 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms

Write and Publish on Leanpub

Authors and publishers use Leanpub to publish amazing in-progress and completed ebooks, just like this one. You can use Leanpub to write, publish and sell your book as well! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub