The difference between a good API and a great API is largely down to the behaviour in the dark murky corners.
miniblog.
Related Posts
Go has an os.Root API that allows you to enforce all paths are subdirectories of a given root. It fixes users accessing foo/../../../etc/passwd and similar.
Seems like a really nice solution for a relatively common problem.
Igalia's post on self-hosting CI runners is a masterclass in build engineering. It shows dealing with weird API constraints, but still finding good designs.
I also learnt that some CI systems use OCR on Apple's installers to automate!
I'm surprised by how many different weather forecasts I can get out different apps. Surely there aren't many API providers for weather predictions?
Alternative conspiracy theory: do weather apps that predict nicer weather get more downloads?
