Re: Open source lock-in
"f you are locked in just because your design is so complex it makes moving to something new,"
In my experience, given a complex enough application, you'll end up inevitably locked in to some product, platform or technology. Simply because at some point it becomes advantageous to use whatever features are implemented in your product or platform of choice rather than roll yourself your own. Emulating these to avoid lock in means introducing another abstraction layer, creating by yourself something that is already there.
"This means that you might need to complete a load of work prior to getting into the point where you can migrate, which is better off for you in the long run, provided you can allocate that much resource to start with."
Exactly, related to the point above, management does not want to spend a lot of money on something just to prevent some kind of uncertain future lock in that does not provide any immediate benefits. This is why COBOL/RPG/FORTRAN .... will never die. It makes sense to keep using the old platform and pay the lock in tax as long as it is less than the cost of that lot of work. Which almost always is.
"Agree with you on the MSSQL licensing model, it is ridiculous and makes it hard for anyone without the relevant clout in the company wallet to move and expand. The Oracle licensing model is better imho, well perhaps more easier to work with than better."
Care to explain? I have had the privilege of looking at both brands and both of them are equally difficult to understand and apply.
The point of using open source is not avoiding lock in. Using open source merely shifts the lock in from a closed product to an open source one. The key difference is that with the closed product you're at the mercy of the product manufacturer: their product roadmap, lifecycle and even financial troubles become yours, and none of that has to do anything with how well the product works for you. With the open source product you have at least a choice of when and how to move forward, because having the source gives you:
- Ability to maintain the product yourself, or find an expert in the matter that can do it for you.
- The opportunity to fork and change the product to suit your needs, assuming of course that you are willing to keep the fork up to date.
Lock in is unavoidable. Using FOSS gives you more choices than using a closed product. This is purely a pragmatic view, of course arguments about freedom, sharing, etc, are not going to get very far in a business context, even if they are quite real and perhaps a good enough reason to use open source.