diff options
author | Dave Kerr <dwmkerr@gmail.com> | 2018-10-04 23:44:24 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-04 23:44:24 +0800 |
commit | 7f6c23c67abcc3b7299fe8954fbf5449797cb35e (patch) | |
tree | 6d561135981d67a4e244f6b29b42d9b84a852cf2 | |
parent | 839b51ce767d3e485c47a3bd27e9caf719bcb318 (diff) | |
parent | ecf4d44aa920308a89013169ac6005e14c9ed791 (diff) |
Merge pull request #9 from dwmkerr/feat/teslers-law
feat: added tesler's law
-rw-r--r-- | README.md | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -9,6 +9,7 @@ Laws, Theories, Patterns and Ideas that all developers should know about! * [The Laws](#the-laws) * [⭐⭐ Conway's Law](#-conways-law) * [⭐ Hofstadter's Law](#-hofstadters-law) + * [⭐⭐ The Law of Conservation of Complexity (Tessler's Law)](#-the-law-of-conservation-of-complexity-tesslers-law) * [⭐⭐⭐ The Unix Philosophy](#-the-unix-philosophy) * [⭐The Spotify Model](#the-spotify-model) @@ -41,6 +42,16 @@ See also: 'The Spotify Model'. You might hear this law referred to when looking at estimates for how long something will take. It seems a truism in software development that we tend to not be very good at accurately estimating how long something will take to deliver. +### ⭐⭐ The Law of Conservation of Complexity (Tessler's Law) + +[The Law of Conservation of Complexity on Wikipedia](https://en.wikipedia.org/wiki/Law_of_conservation_of_complexity) + +This law states that there is a certain amount of complexity in a system which cannot be reduced. + +Some complexity in a system is 'inadvertent'. It is a consequence of poor structure, mistakes, or just bad modeling of a problem to solve. Inadvertent complexity can be reduced (or eliminated). However, some complexity is 'intrinsic' - is is a consequence of the complexity inherent in the problem being solved. This complexity can be moved, but not eliminated. + +One interesting element to this law is the suggestion that even by simplifying the entire system, the intrinsic complexity is not reduced, it is _moved to the user_, who must behave in a more complex way. + ### ⭐⭐⭐ The Unix Philosophy [The Unix Philosophy on Wikipedia](https://en.wikipedia.org/wiki/Unix_philosophy) |