← Back to context

Comment by Terr_

19 days ago

> Much better is to put it all into one, ugly file until the kinks are worked out and then organize it later

IMO this defer-until-needed approach depends a bit on having better tooling to use whenever the rework happens. Stuff like languages with statically-checkable types, good "Find Usages" IDEs, tests that exercise the overall architecture, etc.

When you can't count on those things, a constant gradual approach is needed to compensate.

It’s funny, I did a lot of python programming early in my career, and I didn’t realize just how afraid I was of refactoring until I started doing embedded work. Even as bad as the weakly typed C type system is, I found the compiler to be a godsend for changing my code later.