From early days software products tried to deal with bugs as soon as possible so many bugs fall into the category of wrong or invalid state.
State is everywhere, from a tiny private counter in your class to a complete transaction across multiple subsystems, databases, files, caching, microservices, queue-brokers and GUI. Managing states may become to some extent an aggressive operation.
There are so many programming paradigms.
The effort for better managing states, which is altered in a multi core CPUs HW in a parallel fashion, increased the popularity of solutions and concepts like Design-By-Contract, immutability, functional programming paradigm in ways we’ll try to better understand in this talk.
|Sela Technology Practice 28/12/22|