Effective versus efficient code
        Posted  
        
            by 
                Todd Williamson
            
        on Programmers
        
        See other posts from Programmers
        
            or by Todd Williamson
        
        
        
        Published on 2011-02-21T17:31:22Z
        Indexed on 
            2011/02/21
            23:33 UTC
        
        
        Read the original article
        Hit count: 421
        
TL;DR: Quick and dirty code, or "correct" (insert your definition of this term) code?
There is often a tension between "efficient" and "effective" in software development.
"Efficient" often means code that is "correct" from the point of view of adhering to standards, using widely-accepted patterns/approaches for structures, regardless of project size, budget, etc. "Effective" is not about being "right", but about getting things done. This often results in code that falls outside the bounds of commonly accepted "correct" standards, usage, etc.
Usually the people paying for the development effort have dictated ahead of time what it is that they value more. An organization that lives in a technical space will tend towards the efficient end, others will tend towards the effective.
Developers often refuse to compromise their favored approach for the other. In my own experience I have found that people with formal education in software development tend towards the Efficient camp. Those that picked up software development more or less as a tool to get things done tend towards the Effective camp. These camps don't get along very well. When managing a team of developers who are not all in one camp it is challenging.
In your own experience, which camp do you land in, and do you find yourself having to justify your approach to others? To management? To other developers?
© Programmers or respective owner