Shortly after the notion of design patterns emerged, practitioners began discussing problem-solution pairs in which the solution did more harm than good. These have come to be known as antipatterns. The authors describe two existing classes of antipatterns related to human-centered computing: programming development and architecture. They then propose two new classes: procurement and unintelligent systems.