Well, It's really early in the morning and I've got the quote of the day already
I'm imagining the Silicon Valley scene where the character Gilfoyle has set up a loud death-metal automated noise that plays whenever the price of Bitcoin meets certain conditions... except the trigger is some kind of code-quality metric, the effect is my machine shouting at me to become serene.
And I think there is a place for perl, just like there is a place for bash one-liners.
The authors example is personal software. The things we write to scratch our own little itches, that do not need to be shared or developed together with other people.
There's overlap with ideas like modularity and decoupling, but the emphasis is different, it shouldn't lead people into architecture-astronautics or trying to be vicariously immoral through their work.
I found an excellent way to avoid premature abstraction and optimization and to write better software in general was to explicitly consider v1.x a throw-away.
Build something expedient that works well enough to deploy in the field, get actual user feedback and system metrics (e.g., where are the actual bottlenecks). Do a few iterations on user feedback and system metrics. NOW, you are much further down the road to a true final spec, and you can use that real information to design the real system to scale up on.
One Test Is Worth A Thousand Opinions.
This plan first tests your ideas against the real world of users, hardware, and data flows, and keeps a lot of technical debt out of the scaling system.
I discovered it a bit by accident, having previously been really big on early abstraction and planning, but sort of having to do this in one startup, and it was a real eye-opener how well it worked.
Fantastic