The biggest mistake a competitor can make is thinking Salesforce is a CRM. They may sell themselves as one, but that is just to get a foothold in a company's sales system. Salesforce actually sells (1) an ecosystem that lets your company connect to any other software out there and (2) a platform on which you can build...basically anything. These two together ensure that every one of their customers is 100% locked in…
100% agree. And we are not there yet. But I feel like open source is the best answer to 1 (building an ecosystem of integrations), and that it will also allow us to build a better platform for developers (2): why learn Aura components/Apex when you already know and can use Typescript/React?
That isn't even the big challenge though. The biggest challenge is getting people to build for your platform. If a sales team uses 10+ integrations (it's honestly probably 20-50), then they will pick a platform that supports 9-10 of their integrations.