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.

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.

👉 Read the full article here