Just hit publish on a post I've been thinking about writing for years. I know I've had this running through my head for a while now, feels good to write it down. It's about "Complexity"
2 posts total
Just hit publish on a post I've been thinking about writing for years. I know I've had this running through my head for a while now, feels good to write it down. It's about "Complexity" :tes3: At our recent company off-site I figured I ought to learn how to make an STL file I was able to use TESAnnwyn to extract the Morrowind base map, and then printf that as an STL in rust. I threw it into a slicer and it printed right away! Now I can always look fondly at Balmora on my desk. Under sky and sun, outlander - we greet you warmly! |
Some of my fav bits from the blog:
Is a solution complex because it’s complex for the end user? Is it complex if it’s complex for an API consumer? Is it complex if it’s complex for the person maintaining the API service? Is it complex if it’s complex for someone outside the team maintaining it to understand? [..] There’s a fixed amount of complexity in the problem to be solved, and you can choose to either solve it, or leave it for those downstream of you to solve that problem on their own.
@paul Nicely said.
Another analogy, old but no less apt, is moving the lump under the carpet.
@paul Nice write up. The way I look at complexity is around how many moving parts you need to know about to have a useful mental model of the thing you are dealing with. Symmetry and invariants simplify things. E.g. EKS is the same in every AWS region globally, while a hand crafted k8s cluster in every region would be far more complex to understand. When something breaks an invariant or hidden implementation details become important that adds complexity.