Identifying immutable values
Building software is complex, especially in our rapidly changing world, which has been yearning for bigger and bigger demands. These days, IT systems are handling enormous amounts of tasks and are designed to be scalable and reliable. It is impossible to make the process of developing such systems and the resulting code simple. By seeing how the world changes and how software evolves to make our lives easier, I have come to the conclusion that we are doomed to experience complexity. However, it is not a hopeless situation. There are ways to make the situation a bit better, and I will show you how Bosque tries to overcome this.
Back in Chapter 1, Exploring Bosque, you learned about accidental complexity and its main sources. Let's quickly recall what that is.
An accidental complexity, when it comes to building software, is a kind of trap we fall into when we're designing and implementing certain features. At the time the feature is implemented...