Anti-patterns

An anti-pattern is a common response to a recurring problem that is usually ineffective and risks being highly counterproductive. The term, coined in 1995 by Andrew Koenig, was inspired by a book, Design Patterns, which highlights a number of design patterns in software development that its authors considered to be highly reliable and effective.

Stovepipe or Silos: An organizational structure of isolated or semi-isolated teams, in which too many communications take place up and down the hierarchy, rather than directly with other teams across the organization

Circular dependency: Introducing unnecessary direct or indirect mutual dependencies between objects or software modules

God object: Concentrating too many functions in a single part of the design (class)

Silver bullet: Assuming that a favorite technical solution can solve a larger process or problem

https://en.wikipedia.org/wiki/Anti-pattern

Intelligent Architecture – University of Irvine sidewalks

When I was in college a professor told us a story about an architect (Developer) who would build all of his buildings, but put down no sidewalks. He would just plant grass. 6 months later he would come back and put sidewalks down where all the paths were worn. In this way, he assured that the walks would be where the people were mostly likely to walk. The point of the story was that we should observe how people do whatever it is we are trying to model in software and then build it to work that way, thus creating “user friendly” software.

I am told that when they built the University of California at Irvine, they did not put in any sidewalks the first year. Next year they came back and looked at where all the cow trails were in the grass and put the sidewalks there.

via straighdope message boards