Penguin

Controversial--a term proposed to describe a culture of software development which puts greater emphasis on the processes followed than on the actual results. Often found in environments, such as internal development projects in large corporate companies, where the users don't have any choice about the software they are given.

Fond of adopting new, complicated-sounding technologies in the fond belief that they will improve software quality (e.g. UML), in spite of complete lack of any evidence to this effect. Prefers ObjectOrientation to data abstraction; design patterns to code reuse. Where languages like Java, C# or C++ are in heavy use, there is a good chance you will find Corporate Programming at work.

See It Takes A Project To Raze A Forest for an argument similar to this. Also a quote from elsewhere

For example, in the OO world you hear a good deal about "patterns". I wonder if these patterns are not sometimes evidence of ... the human compiler, at work. When I see patterns in my programs, I consider it a sign of trouble. The shape of a program should reflect only the problem it needs to solve. Any other regularity in the code is a sign, to me at least, that I'm using abstractions that aren't powerful enough....

-- Paul Graham

CategoryProgramming