My latest Pluralsight course has just been released:
Five Essential Tools for Building REST APIs
I adopted REST APIs in preference to Web Services early in 2010 and the tools available for delivering REST have massively improved in the last few years. This course is all about the tools I use now, where they fit in the delivery process, and what they can do to help you build better APIs, more quickly and with higher quality.
REST APIs are refreshingly cross-platform, and so are all the tools in the course – so they apply whether you’re building in Node on OS X, ASP.NET WebAPI on Windows, or Ruby on Ubuntu.
The course is split by different types of tool, and each module introduces what those tools do and why I think they’re essential. I focus on a recommended tool and also explore alternatives, because your toolset needs to be flexible, to save you from being locked-in to one provider.
There are six modules:
Design
- Collaborative design tools, how they focus different teams on integrating early and often
- Using Apiary for designing, documenting and stubbing out your API
- Alternative API design tools – Swagger and RAML

Testing
- Testing APIs with REST clients – the best of which is the Chrome extension Postman
- Using cURL to test APIs
- Debugging with HTTP Debuggers – using Burp as a proxy
- Debugging with packet sniffers – using Wireshark

HTTP
- HTTP is the key tool for delivering reliable, responsive and scalable REST APIs
- Expiration and validation caching to improve performance and reduce load
- Using DNS to segregate traffic and support failover
- Using SSL to secure personal data
- Considerations for how caching, DNS and SSL work together
Load Testing
- Using Loader to do load, soak and stress testing
- Alternative load testing using Blitz
- How to quantify load test results and understand what your API can do

Monitoring
- Why centralised instrumentation is a must for REST APIs
- Centralised logging and log analysis with Loggly
- Centralised server and platform instrumentation with NewRelic

Course Summary
- Where the tools fit into the API delivery process
- One more tool: API Management Suites, what they do and why you may want to look into them
REST APIs are a great area to work in, because there’s a lot happening, lots of interesting ways to approach problems, and lots of great tools. This course is about using the best of those tools to increase your productivity, reduce your time to deliver, improve the quality of the delivery, and ensure your API gives clients what they need.