Note: Below is an article I originally wrote for Nordic APIs, published as Meet Hyrum and Postel on December 9, 2020. -- djb, Nov 16, 2025 How do Hyrum’s Law and Postel’s Law affect API designs? Luckily for us humans, and especially that narrow subclass of humans who build APIs, API design is a field that has not been automated or botified… yet. Sure, one can point at a database schema and generate what one can label an “Application Programming Interface.” But it is an API only in a literal...
27 days ago • 8 min read
To kick off The Language of API Design series, we will take a brief but important diversion from the OpenAPI Specification and it’s unique but powerful language of API design. Our detour will focus on a different sort of language: the ubiquitous language. In other words, today, I’m “Mr. Language Person”.1 The term “API Design First” is quite popular now, but it is misleading. If one began by first creating an API design (fun as that may be for some of us), the result is likely not going to...
almost 3 years ago • 5 min read
The Language of API Design Today’s software landscape demands software systems that can talk to each other. Interoperability and open access to data and services is key to (sometimes phenomenal) success. Application Programming Interfaces—APIs—are at the heart of this revolution, from enabling all the apps on your phone to reinventing companies and entire industries. Forbes explained Why The API Economy Is The Web’s Next Phase and Nordic APIs described the role of Open APIs across six diverse...
almost 3 years ago • 8 min read
Welcome to API Design Matters. In this substack, I explore API Design and Developer Experience matters large and small, topics around building and running API programs... that is, why API Design Matters. I’ll focus on RESTful web services, but many of the concepts apply to other API styles like AsyncIO, GRPC, and GraphQL. Articles will pull from my 12 years experience designing RESTful APIs using OpenAPI, but include echos of designing traditional programming language interfaces and libraries...
almost 3 years ago • 1 min read