After an interesting summer of working on OSS projects, doing a keynote in Australia at DDDMelbourne, and getting ever closer to finishing that Pluralsight course, I now have a new role to sink my teeth into I have joined Microsoft as an API Evangelist. That means if you are building HTTP APIs, my role is to try and help. Whether you are […]
I recently needed to create a new Web API project for some content I’m working on for a talk. I decided I might as well use the ASP.NET Web API Template to get started. The resulting project looked like this: 75 class files, 23 Razor templates, 34 unique Nuget packages, and 28 Javascript files before I wrote […]
The last few days I spent at the DotNetFringe conference in Portland. Considering this was the first time this conference has been run it was executed spectacularly well. Off To A Great Start The opening keynote was done by the one and only, Jimmy Bogard who delivered a candid history of his experience working on OSS projects, […]
Part of my role at Runscope involves me writing OSS libraries or sample projects to share with other developers. I also regularly use 3rd party APIs in the process. This requires the use of API keys and other private data that I’d rather not share. Unfortunately it is all too easy to leave a key in a […]
When building client applications that need to connect to a HTTP API, sooner or later you are going to get involved in constructing a URL based on a API Root and some parameters. Often enough when looking at client libraries I see lots of ugly string concatenation and conditional logic to account for empty parameter […]
Fast iterations can be very valuable to the software development process, but make for more time spent doing deployments and testing. Also, more deployments means more opportunities to accidentally introduce breaking changes into your API. AppVeyor is a cloud based continuous integration server and Runscope enables you to do integration testing of your Web APIs, […]
ASP.NET Web API 2.1 introduced some significant improvements to the mechanisms that support global error handling. Before this release there were a number of different types of errors that would be handled directly by the runtime and there was no easy way to intercept these errors and add your own custom behavior. The standard guidance suggests […]
I think most us ASP.Net Web API developers have, at some point, experienced the problem where their API is returning a 500 Internal Server Error, but tracing through with Visual Studio doesn’t reveal any exceptions in our code. This problem is often caused when a MediaTypeFormatter is unable to serialize an object. This simple message […]
We are currently seeing a significant amount of discussion about building hypermedia APIs. However, the server side only plays part of the role in a hypermedia driven system. To take full advantage of the benefits of hypermedia, the client must allow the server to take the lead and drive the state of the client. As […]