The cost of adopting "external" technology instead of building your own is the lock in in some cases
Whenever possible, and key to the whole discussion, it's important to build our own interfaces so that we can change between build vs buy if it comes to it. If you're decoupling things wherever possible then we don't have to make the perfect choice before we have all the info.
Today I might want to "buy" my "product recommender", but tomorrow I might want to build it. As long as I build with the mindset that I could swap out the internals for something else, I'm going to be safe.
I did something similar a couple of years ago. We had to switch from Parse to another provider for push notifications because they were closing shop so I did something like that, in case we had some issues with the new provider (Azure) and indeed those troubles came. The final switch to AWS SNS was definitely easier :-)
I think building a good interface makes it easier to choose, perhaps, the fastest/cheapest option now, while opening up for the more solid option later.
Being good about having good patterns for interfaces within your app doesn't seem so much a "cost" as much as a good "habit" to be disciplined enough to undertake.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Whenever possible, and key to the whole discussion, it's important to build our own interfaces so that we can change between build vs buy if it comes to it. If you're decoupling things wherever possible then we don't have to make the perfect choice before we have all the info.
Today I might want to "buy" my "product recommender", but tomorrow I might want to build it. As long as I build with the mindset that I could swap out the internals for something else, I'm going to be safe.
Decent software design for the win :-)
I did something similar a couple of years ago. We had to switch from Parse to another provider for push notifications because they were closing shop so I did something like that, in case we had some issues with the new provider (Azure) and indeed those troubles came. The final switch to AWS SNS was definitely easier :-)
But are you considering the cost and effort involved?
I think building a good interface makes it easier to choose, perhaps, the fastest/cheapest option now, while opening up for the more solid option later.
Being good about having good patterns for interfaces within your app doesn't seem so much a "cost" as much as a good "habit" to be disciplined enough to undertake.