Avoid Mini-Frameworks
4 months ago
- #frameworks
- #best-practices
- #software-development
- Mini-frameworks are small, team-specific frameworks built on top of a company's shared tech stack to address perceived shortcomings.
- They introduce new concepts, claim to solve problems 'magically,' and often push for broader adoption despite being tailored to specific needs.
- The author shares a personal story where a mini-framework caused significant pain, including prolonged migration, increased complexity, and reduced productivity.
- Mini-frameworks lack feature completeness and compatibility, often failing to handle edge cases or adapt to changing requirements.
- They violate the Easier To Change (ETC) principle by locking in current use cases and relying on implementation details of the original framework.
- Mini-frameworks reflect the creator's mental model, which may not align with others', leading to cognitive load and usability issues.
- They contribute to tech stack fragmentation and suffer from maintenance issues, especially when original authors leave.
- Instead of mini-frameworks, the author recommends creating libraries that don’t introduce new concepts and linking abstractions to concrete business needs.
- If a framework is necessary, it should be built from scratch, not as a wrapper, and treated as a serious decision with proper justification.