31

The worst kind of accidental complexity in software is the unnecessary distribution, replication, or restructuring of state, both in space and time.

you are viewing a single comment's thread
view the rest of the comments
[-] aev_software@programming.dev 2 points 1 day ago

ELI5?

Author wrote a lot of words about data and state, but I'm not sure I understand the argument. Please explain like I'm 5?

[-] fubarx@lemmy.world 3 points 1 day ago

When designing large, complex systems, you try to break things down into manageable chunks. For example, the bit that deals with user login or authentication. The payment bit. Something that needs to happen periodically. That sort of thing.

Before you know it, there are tens, or hundreds of chunks, each talking to each other or getting triggered when something happens. Problem is, how do these bits share data with each other. You can copy all the data between each chunk, but that's not very time efficient. And if something goes wrong, you end up with a mess of inconsistent data everywhere.

So what bits of data do you keep in a shared place? What gets copied around from place to place? And what gets only used for that one function to get the job done? This is the job of software architects to sort out.

The author says the more copies of something you make, the more complexity and 'state' management you have to deal with. He's right, but there are ways to mitigate the problem.

[-] thenextguy@lemmy.world 4 points 1 day ago

I think they just had some bad experiences with bad software and generalized it. If you just glue together separate components with separate data and configuration then you’re going to have a bad day.

this post was submitted on 23 Dec 2025
31 points (97.0% liked)

Programming

24029 readers
653 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS