![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
One of the things I've learned about complex software is that the best way to describe what it does is that it has behaviors. The behaviors of the software are controlled by the rules that are programmed into it.
If you write the rules correctly and the interactions are nice and tight, then your software will be well-behaved. If you write the rules badly -- or, God forbid, fail to initialize parameters for the rules through one or more species of programming errors! -- then the software will be badly behaved and unpredictable.
All of this turns out to be harder to get people to do than you'd think. :)
If you write the rules correctly and the interactions are nice and tight, then your software will be well-behaved. If you write the rules badly -- or, God forbid, fail to initialize parameters for the rules through one or more species of programming errors! -- then the software will be badly behaved and unpredictable.
All of this turns out to be harder to get people to do than you'd think. :)