3 ms·
This 1000x. A well designed and properly isolated codebase is going to have limited technical debt in switching providers for various services. But the cost o
by kromem 8y ago
This 1000x.
A well designed and properly isolated codebase is going to have limited technical debt in switching providers for various services.
But the cost of maintaining vendor neutral code and avoiding making use of the unique product advantages of the provider you've already chosen has significant downside.
It becomes a matter of designing for the lowest common denominator between providers instead of making full use of the ways in which your existing product choice excels.
If you are frequently changing providers, you have other issues afoot. If you rarely change providers, it's doubtful it'd be a net loss to design vendor-specific interactions with those services/products. Just add an intermediate API to isolate vendor specific code, which is going to be a good thing to do anyways for testing.
The vendor lock in argument is one of the few programming boogie-men that really gets under my skin.