Hva er en antipattern?
En antipattern er enhver aktivitet som blir gjentatt til tross for at den er kontraproduktiv. Selv om begrepet oppsto og fikk utbredt bruk innen dataprogrammering, kan det gjelde enhver form for rutinemessig oppførsel. Å identifisere og beskrive antipatterns kan forbedre den generelle rasjonaliteten ved å gjøre vanlige feil i resonnement lettere å oppdage. I denne forstand er antipattern til generell rasjonalitet, da feilen er til deduktiv logikk.
For at et parti med kode eller et sett av atferd skal utgjøre en antipattern, må det forekomme gjentatte ganger. Det må også, for noen observatører, kontrasteres med et kjent mønster som nesten helt sikkert vil fungere bedre. Isolerte feil kan dermed ikke være antipatterns, og heller ikke mislykkede forsøk på å løse et problem som det ennå ikke eksisterer noen løsning på. Denne definisjonen gir fortsatt rom for en lang rekke feilprosesser.
Selv innenfor den opprinnelige kategorien programvaredesign, er det mange forskjellige typer antipattern. Noen involverer svikt i å forutse brukerreaksjoner. "Interface bloat" og "Creeping Featuritis" - mest alle antipatterns har fått søte navn - referer til et program med et brukergrensesnitt så komplisert at det blir uhåndterlig.
Andre antipatterns involverer typiske programmeringsfeil. "Copy and Paste Programming" og "Cargo Cult Programming" beskriver situasjoner der programmerere er avhengige av for mye på eksisterende materiale i stedet for å skreddersy koden sin til programmet de for tiden utvikler. "God Class" er et sett med objekter i et program som har blitt for kraftig; hele saken er sårbar fordi alt er avhengig av disse elementene.
Mange antipatterns er også blitt identifisert i bedriftsverdenen, spesielt som en kontekst for programvareutvikling. "Spesifiser ingenting" og "Vietnamkrigen" innebærer feil i klarheten i ledelsens instruksjoner til sine ansatte. "We Are Idiots" innebærer å anta at kunder, og ikke programmerere, må ta enhver beslutning om hvordan en bestemt vare blir utviklet.
Andre antipatterns kan gjelde for mange typer organisasjonssosiologi. "Groupthink" finner sted når et sett mennesker er i stand til å opprettholde en kollektiv villfarelse ved å isolere seg fra ytre innspill. En "Death March" oppstår når alle som jobber med et bestemt prosjekt, vet at fiasko er uunngåelig, men ikke eller ikke kan formidle denne informasjonen til en mektig leder. "Hvis det ikke er brutt, ikke fikser det" er et stykke konvensjonell visdom som kan være en antipattern i sammenhenger der en eventuell sammenbrudd ville være uakseptabel.