Writing
Tagged “Protocols”
- Stable Verbs, Dynamic Affordances
A tool catalog can describe what cancelOrder means without saying whether it applies to this order now. A resource can report current applicability without redefining the operation on every response. The useful synthesis is a stable typed vocabulary plus contextual affordances, with execution-time revalidation and an experiment honest enough to test whether the extra layer earns its keep. Third of three.
- What Runtime Affordances Cost — and Buy
Runtime controls keep the server authoritative about current transitions and invocation targets, but they move work from build time into execution. The relevant question is not whether HATEOAS won: it is whether applicability and binding change often enough to justify traversal, dynamic failure, and weaker static closure. Second of three on hypermedia and agents.
- The Browser Was Only Half the Client
A browser can operate a site it has never seen because it shares the work with a person. That does not make hypermedia useless to machines, but it does reveal what the constraint can and cannot supply: controls can bind known operations to current resources without teaching a client what those operations mean. First of three on the contracts hidden inside HATEOAS.
- The Lookup That Saves the Handshake
RFC 9146 adds a connection identifier to DTLS 1.2, usually summarised as NAT rebinding support. That summary hides the design: what the CID really does is move where the protocol anchors its state, from an address it never chose to an identifier it owns. Nine bytes, and a case study in deep modules and interface ownership.