Different types of lock-ins
Lock-In Types from Martin Fowler’s Article
Created Apr 20, 2025 - Last updated: Apr 20, 2025
Summary of Lock-In Types from Martin Fowler’s Article
In his article Don’t get locked up into avoiding lock-in, Martin Fowler explores different types of lock-in that can influence software architecture and decision-making. In short words:
1. Vendor Lock-in
Occurs when switching vendors is difficult or costly, often due to proprietary technologies or contractual obligations.
2. Product Lock-in
Happens when you’re dependent on a specific product’s APIs, configurations, or features, making it hard to switch to alternatives—even open-source ones.
3. Version Lock-in
Arises when you’re stuck on a particular product version due to customizations or compatibility challenges that complicate upgrades.
4. Architecture Lock-in
Results from building systems around a specific architectural style, making it hard to pivot to a different one without major changes.
5. Platform Lock-in
Occurs when applications depend heavily on a specific platform’s services, making migration to other platforms complex.
6. Skills Lock-in
Happens when a team’s expertise is tied to particular tools or technologies, making it challenging to adopt new ones without significant retraining.
7. Legal Lock-in
Involves legal or compliance restrictions (like data residency laws) that limit your ability to change platforms or vendors.
8. Mental Lock-in
Refers to psychological or cultural inertia—biased thinking that discourages exploring alternative approaches or solutions.
Key Insight:
Fowler emphasizes that lock-in is not inherently bad. The goal should be to balance the unique utility of a solution against the costs and risks of being locked into it.