John Carmack on Functional Programming in C++ (2018)
&gt; A large fraction of the flaws in software development are due to programmers not fully understanding all the possible states their code may execute in.<p>I think this probably the most important concept for programmers to keep at the front of their minds when working day to day. So many of the problems I see come from developers (myself included) adding new business logic to a process, or fixing a bug and not thinking through the side effects of the change