Standing On The Shoulders Of Midgets
AntiPattern Name: StandingOnTheShouldersOfMidgets
Type: Design | Organizational
Problem: You're working in an organization that dictates that you reuse code in libraryX to solve the problem you're working on. Looking at this API, you find a jumbled mess of cluttered concepts and weird hacks, or it doesn't do half of what you want it to do.
Context: This pattern can show up not just with code libraries, but also with general architectures and databases. For example, the organization might be using a hand rolled messaging system with various limitations, or a hand rolled database with peculiar semantics, or a complicated/convoluted/contorted project management methodology.
Forces:
Supposed Solution: Go through the code gymnastics to set up arguments to libraryX as it wants them
Resulting Context:
Design Rationale: Midget libraries can evolve in all sorts of ways.
Related AntiPatterns: BigBallOfMud, GoldenHammer, IfItIsWorkingDontChange
Applicable Positive Patterns: AdapterPattern
AntiPatternCategory: DevelopmentAntiPattern, ArchitectureAntiPattern, ManagementAntiPattern
Also Known As:
Examples in the Literature:
Examples in Practice:
CategoryAntiPattern CategoryArchitectureAntiPattern CategoryManagementAntiPattern