3 ms·
Generally people just get a feel for it from practical experience, but there are some thought exercises you can use to help. For example "What if two programs
by tacostakohashi 6y ago
Generally people just get a feel for it from practical experience, but there are some thought exercises you can use to help.
For example "What if two programs did this?":
https://devblogs.microsoft.com/oldnewthing/20050607-00/?p=35413 https://devblogs.microsoft.com/oldnewthing/20050607-00/?p=35...
Often people with a poor grasp of complex systems will make a naive suggestion like "if x fails, we can retry n times". In isolation, this makes sense, although it adds complexity. In the grand scheme of things, it doesn't make sense, because if x does y, and y has a failure and retries... and then y does z, and z has an failure and retries, well now you have x * y * z retries all multiplying out and you won't hit your top-level "n times" restriction until after the heat death of the universe.
With a bit of practice, you can spot and point out these kinds of things.