I think the most interesting idea is Hyrum's Law. It says, "with a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of your system will be depended on by somebody." All that to say that documentation and good intentions don't actually protect you. For example, if a hash table happens to iterate in a certain order, someone will eventually depend on that order whether it's promised or not. Then as an API owner, it means you can't reason your way to the conclusion that "nobody depends on this" for an interface. Having a robust CI system and canarying practice in place before touching anything widely used is a must, which ties right into the logic behind the Beyonce Rule. As an API consumer, it means treating undocumented behavior as unstable even when it's convenient. It's just a safer bet.
When you take them together these approaches shift the topic of maintainability from being a matter of following rules correctly to an ongoing negotiation with reality. I've been on both an API producer and consumer and the lesson in the text rings true.
Tuesday, July 21, 2026
CST438: Week 4 (Week 79)
Subscribe to:
Post Comments (Atom)
CST438: Week 4 (Week 79)
I think the most interesting idea is Hyrum's Law. It says, "with a sufficient number of users of an API, it does not matter what y...
-
This week we learned about threads, concurrency, and locks. We learned that a process has at least one thread and can have multiple threads....
-
This week we covered merge sort and though we didn't have a programming assignment I took some time to explore it. I watched some video...
-
This week I learned that React is really powerful for building interactive web UIs. It ties state directly to what shows up on screen. Until...
No comments:
Post a Comment