I’ve been thinking about a new term I’ve come across whilst reading a book. It’s called “Complexity Budget” and I think it has relevant in lots of difficult fields. I specifically think it has a lot of relevant in the Software Industry and organizations in this field. When doing further research on this concept, I was only able find talks on complexity budget in the context of medical care, especially phychiratistic care. In this talk it was describe as, complexity:

  • Complexity is confusing
  • Complexity is costly
  • Complexity kills

When we think of “complexity” in terms of software and software development, we have a sort-of intuitive about this right? We know when software has become too complex. We know when an organization has grown in complexity, or even a system. So we have a good intuition of the concept already.

My question to y’all is; how can we concretely think about “Complexity Budget” and define it in terms that can be leveraged and used to control the complexity of software dns ystems?

⤋ Read More

@prologic@twtxt.net

When we think of “complexity” in terms of software and software development, we have a sort-of intuitive about this right? We know when software has become too complex.

Honestly, I don’t think so. This is highly subjective. I guess it mostly depends on whether a person currently understands a particular program or not. I’ve seen this happen many times: Somebody writes code, they love it, they think it’s great and elegant and simple. As soon as that person stays away from the code for some time and forgets about all the intricate details, they start ranting about how horrible it is. 😂

Maybe this could be a measure of simplicity/complexity: How long does it take a new person who joins the team until they understand the program? (This obviously depends on the individual skills, so this has to be averaged over many people …) 🤔

⤋ Read More

@movq@www.uninformativ.de but surely it doesn’t just come down to an individuals understanding of a piece of software right? I mean, complexity comes from many different things for example, the number of components the number of sub-systems, lines of code, the number of abstractions, even the complexity of those abstractions., etc..

⤋ Read More

how can we concretely think about “Complexity Budget” and define it in terms that can be leveraged and used to control the complexity of software dns ystems?

Not exactly on “Complexity”, more on UX, although I use this book as a reading material for design courses, on how finally the user receives all that complexity with tragic consecuences:
https://www.tragicdesign.com

And on that “complexity” that the user doesn’t see, usually I go with “Software Architecture: The Hard Parts”
https://www.oreilly.com/library/view/software-architecture-the/9781492086888/

⤋ Read More

@prologic@twtxt.net Hmm, yeah, hmm, I’m not sure. 😅 It all appears very subjective to me. Is 2k lines of code a lot or not?

I mean, I’m all for reducing complexity. 😅 I just have a hard time defining it and arguing about it. What I call “too complex”, others might think of as “just fine”. 🤔

⤋ Read More

This is the whole point of this Yarn where I’m trying to figure out with y’all to see if there might possibly be a way to formally measure and manage complexity, budget of a software, system or organization.

⤋ Read More

Participate

Login to join in on this yarn.