Comment by djmips
5 years ago
Sure it does apply. These complaints come out after the game has been released. They should have optimized this before they released, while they even designed the system. However that's considered premature optimization, when in fact it's just bad design.
> while they even designed the system
See, that's exactly why you're wrong. This wasn't a bad "design". If the fix required to rebuild the whole thing from scratch, then you would have a point and thinking about it "prematurely" would've been a good idea. In this case, both the fixes were bugs that could've been fixed after the game was finished without having to undo much of the work done.
The whole point of the saying is that you don't know what's gonna be a bottleneck until after. Yes by optimizing prematurely, you would've caught those two bugs early, but you would've also spent time analyzing a bunch of other things that didn't need to be analyzed. Whereas if you analyze it at the end once people complain about it being slow, you're only spending the minimum amount of time necessary on fixing the things that matter.
> Whereas if you analyze it at the end once people complain about it being slow
I think that we should also stop doing crash tests in cars. Just release the car to the public and analyze human crashes afterwards.
You do understand that "my entertainment takes 6 minutes to load" is a very different problem from "my essential transportation kills people"? And therefore call for different approaches?
Putting aside the bad analogy that the other comment covers, the overall point I was making also covers doing the optimization before game release, but after the game is more or less complete. Rockstar optimizing during the final few months of playtest wouldn't be premature optimization.
Premature optimization is about trying to optimize the micro (a given function), while you don't yet have the macro (the game itself). If the function accounts for 0.1% of the performance of the final game, it doesn't matter if you make it 5x faster since that will only make the game 0.08% faster. You could've spent that time optimizing a different function that accounts for 10% of the performance, and even optimizing that function by 5% would make the game 0.5% faster, which is more impactful.