On Software Predictability
Life’s busy. Also, it’s hard. Software that breaks compatibility or predictability makes life harder. Returning to a project after years off requires re-orientation of architecture and tooling. Although difficult, it’s a fair assumption to make that one should need to re-orient on an architecture: understanding where everything goes is natrual. The tooling, on the other hand, should remain stable. Familiar. Predictable. Imagine moving out of your childhood room to attend university or join the military. You’re gone for several years, and return one night, exhausted. You open the door and begin to search for your bed. As your fingers find the lightswitch and turn it on, instead of light you’re greeted with an error sound. Frustrated, you walk to where your bed ought to be. ...