Keeping It Simple
We are often urged to keep code, design and architecture simple. What, however, is the motivation for this? And what does this mean in practice? Is it just an aesthetic or does simplicity also have social, economic and technical implications? In this masterclass, we'll look at typical sources of complexity in our coding habits and development processes, from working with incomplete knowledge to trying to future-proof our systems, from deadline pressure to technical neglect, from noisy code to paradigm. To keep it real, we'll also look at some examples of complexity and their simpler counterparts, with code examples in a variety of programming languages.