Foo says: We should build XXX ourselves, so that we have control and can easily maintain it.
Bar says: We should pay YYY to get started quickly, thus providing us all the advanced features which we could take months to develop.
Many times, I come across arguments of building XXX vs paying YYY:
- Build a push notifcation system vs using OneSignal/etc
- Manage your own service vs AWS managed services/etc
- Develop email client VS Mailchimp/etc
- Host your own server hardware VS Google Compute/etc
Both are Right
Their reasons are facts.
There is nothing to counter argue on such factual reasons.
Yet, I often hear counter arguments that starts off by disagreeing.
There could be ego at play. Or someone doesn’t know how to win an argument.
The Fair Middleground
We must consider the context in this order:
- Who to use? Who to build? Who to maintain?
- Do you have the luxury of time and resources to build?
- Do you have the skillset to build?
The who is especially important. The people determine the success of such undertaking.
Usually, if you are a startup, the answer is to use a service.
And, if you are a mature company with the resource to scale and optimize current processes, then you build your own service.
There is no right or wrong, but a matter of evaluating your current situation from a fair middleground, without ego.