Event sourcing as an evolutionary architectural pattern

In software, the only thing that is constant is change. And software architecture is no different, it has to evolve. Simply put, system components should be organized in such a way that they support constant change without any downtime, Even if all the components are changed or completely replaced, the show must go on. Software architecture has to be technology agnostic, Resilient, and designed for the incremental change. If we think about the Theseus paradox, Evolutionary architectures care less about the sameness of the ship(s) and focus more whether the ship would keep on… Read More