Issue 030: 2017-05-24
Last week an article sparked quite a bit of (justifiable) backlash against a SaaS company called Firebase. While Firebase did eventually respond to Home Automation’s protest about a %7,000 cost increase, this incident serves as an important reminder of the dangers of tying one’s business to any SaaS provider.
A few points from the article best summarize these dangers:
- They changed how they report their bandwidth usage, increasing our bill by 7,000% without any change to our actual usage. After years of using the service.
- No warning or message was sent out that this was being done — we only got notified once they were planning to shut down our app completely.
- Their profiling tools do not show the increased usage. You can only see it by looking at your massively increased bill.
- From the article’s excellent “lessons learned” learned section (applicable to Firebase, AWS Lambda and any other SaaS services that are out there):
So please, I beg of you…learn from our embarrassing and now dooming mistake:
- Always build your architecture in a way that will avoid becoming trapped into a specific service. Build your application in a way that swapping one service for another is as simple as possible.
- Always keep in mind that the services you use can change at any moment and put you in a situation where you don’t have options if you aren’t careful.
- Whenever possible, rely on your own infrastructure. The SaaS model seems attractive to both Startups and Service Providers…. but in the end, its the Startup that gets bitten by it and the providers that make the real money.
- Always heavily consider open source alternatives (something which didn’t exist for Firebase at the time but now alternatives like Horizon and Backendless exist, for example).
The Changelog podcast had an excellent episode covering the origin and usage of Kubernetes. I notated the interesting spots of this episode.
Thoughts? Feedback? Let me know: @eli4d on Twitter