Glad we agree.
> The optimize then profile argument isn’t meant to be about architecture
Glad we agree. If only all the people who tell me “correct before performant” agreed with us. In practice, in my experience, this is not the case. People use it in day to day conversations at the earliest parts of conversations about architecture all the time. If they didn’t I wouldn’t have nearly the problems I do with the statement.
> As an aside, flat profiles are in practice exceedingly rare
This seems to be the most controversial part of our disagreement. In my experience, that is flatly untrue. Especially when talking about systems where the performance does not meet the requirements. I can count on 1 hand the number of times I’ve seen systems go from “unacceptable” performance to “acceptable” via micro optimizations. I’ve never seen one go to “great”. I don’t know how to quantify this though, so I’m willing to leave this in the realm of my experience is different than yours.
All that is to say, my experience says that systems that don’t treat performance as first class requirements don’t tend to meet their performance expectations.
All of which is neither here nor there based on the article but is directly related to the question of ‘what do you do with a flat profile’?