I guess the real skill lies in building skyscrapers at the speed of building sandcastles.
What I've started doing, keeping with the physical structure analogy, is to build up your own "skyscraper" boilerplate. Then you can rapidly build ideas out, but on solid foundations.
Yeah definitely. I think there's a happy middle ground - when you're boshing out an MVP you can be aware of the technical (or design) debt you're creating and take steps to mitigate it if you feel it's that bad.
Really nice way of framing the difference between small hacks and larger codebases. This feels very similar to a writing process I've seen a bunch of people (and tools like hemingway.io) subscribe to. Which is the write now, edit later philosophy.
I guess how this translates to digital products is that there are occasions when you can anticipate a scenario when a codebase is going to have to mature at some point. Like a caterpillar goes into a cocoon, it's interesting to take a closer look at that moment when a developer starts to take things seriously, goes back and writes those tests, refractors the front-end code so that everything makes sense.