Hacker News new | ask | show | jobs
Ask HN: To BaaS or not to BaaS
6 points by anish_t 4646 days ago
We are a startup, working on ... well ... another instant messaging and sharing app!! The goal is of course to reach millions of users.

From a time to launch perspective we are wondering if it is at all a good idea to use BaaS services like parse/StacKMob/PubNub. While we are aware of most of the pros and cons of using a BaaS, our main worries with BaaS are high costs at a later stage when users multiply, vendor lock-in. Some things we would love some experienced hackers to throw light on are:

- Any idea on costs of BaaS once one moves into the enterprise usage range with millions of API calls per day

- can one launch with a BaaS backend, and then as the app is gaining traction, build out and switch to a custom solution? is this practically feasible?

- if above (switch to custom solution) is feasible then any specific advice on what one must keep in mind while architecting the app, and any recommendations on a BaaS provider that is easier to switch over from

- any other insight if you think this is a complete no no

cheers Ani

6 comments

I believe that the question you should be asking yourself is this - Can BaaS (or any other service) help me get to the market right now at the lowest cost possible.

For any such commodity as a service, the initial costs to you will be lower than if you had to build the service yourself. However, over time the costs will go up. The benefit to you will always be ease of development and having the time to focus on building the core features that will make your startup feasible. Most startups fail before they reach a point where they need to worry about rising costs and that's a good problem to have. (when you have it you can mostly pay someone to fix them for you)

My recommendations (having never used any of the above mentioned BaaS providers, do take these with a pinch of salt)

1. Look at how easy it is to get your data back if you need to host the services yourself or change providers. Does the provider have any processes for the same? Speak to the sales (and support) people about this before you decide on a provider. Look for the provider that is transparent about this.

2. Don't worry about what the cost will be when you reach a million users. Your time right now is spent wisely validating your idea. Cross that bridge when you come to it.

3. The only "complete no no" scenario I can think of would be if you were hosting sensitive information (credit card etc)

Hope this helps

Hi anish_t,

About six months ago I tested Kinvey (a BaaS) for an application that makes heavy use of data. Basically you upload your data (say, from CSV) and then you access it via API calls.

It looks like you can download your data at any time, say if you need to switch providers. I don't have any experience of other providers, but with Kinvey it doesn't look like there is a risk of vendor lock-in. It's data on the wire via AJAX requests. If things turn to be expensive when you grow up, you move the data to your own backend.

That said, I must add that I never ended up using them. The reason - I just needed something with serious geospatial capabilities. I mean PostgreSQL + PostGIS kind of thing.

There is also the DIY route, which is not necessarily the best, since it will prolong the time until you release a MVP. But, if you have the manpower to work on it, maybe Drupal is a good alternative for you. It can be set up as a backend, it is secure, and it's free. I think you can even set it up as a SPARQL endpoint.

Good luck with your startup! I don't wish you to reach millions of users, but instead to make millions of dollars :)

Don't even worry about it, to be honest. If you are lucky enough to be in that situation, it would be a very good problem to have.

You would face technical scaling issues no matter what you were using. If the BaaS is your bottleneck you could fix it then.

I have read your entire post and still don't know what BaaS stands for. B.. as a service?
as Sumang already pointed out BaaS is "backend as a service". BaaS vendors provide the most common backend features for web and mobile apps such as user signup, social integration, notifications, storage etc. in a managed cloud. They have easy to use APIs for each platform thus making it very easy to launch quickly and across multiple platforms (ios, android, web...)
BaaS - Backed as a Service
Yes you should use them if they speed you up.

"High costs at a later stage when users multiply, vendor lock-in" -> it doesn't matter. 95% chance you won't get millions of users, so focus on that first.

Thanks everyone for your right on comments! now its time to focus! focus!!!!