http://www.perlmonks.org?node_id=962651


in reply to Re: The Rules of Optimization Club
in thread The Rules of Optimization Club

Great point, JavaFan, (as always...) Of course, if performance is a higher requirement than functionality, then is the function really broken if it meets performance but is suboptimal in its functional scope (aka. fast but got bugs)?

I think the point he's trying to make (and I could be wrong) is that if you optimize a solution prior to getting it fully scoped, you could encounter elements of scope that destroy any work you did in optimizing performance, essentially you're spinning your wheels. Likewise you can introduce unnecessary architectural complexity if you optimize before finishing any functional requirements.

Of course you should never dismiss performance when designing a system...

Replies are listed 'Best First'.
Re^3: The Rules of Optimization Club
by JavaFan (Canon) on Mar 30, 2012 at 20:28 UTC
    if performance is a higher requirement than functionality
    It's neither a "higher" requirement, nor a "lower" requirement. Performance is always a requirement. In the end, someone or something is waiting for the results, and they aren't going to wait forever. Now, where the balance lies between performance and functionality, that depends on a case-by-case bases. I don't think the blanket statements made by the OP reflect any real world scenarios (which surprise me, as petdance usually comes across as someone with both feet in the business world).
    Likewise you can introduce unnecessary architectural complexity if you optimize before finishing any functional requirements.
    Or the other way around. ;-) I guess most of us have encountered systems that were beautifully designed, and has implemented every little aspect that was dreamed up before hand, but noone uses it because performance was factored in too late.