@jk the notion of deciding on architecture first comes from the era in which there was no such thing as modules, and to move stuff around felt like unpicking the odd lines out of the wool jumper.
that you can move stuff around and still have bits that don’t change is enabled by a certain minimal amount of architecture that we now take for granted