
Ask HN: To BaaS or not to BaaS - anish_t
We are a startup, working on ... well ... another instant messaging and sharing app!! The goal is of course to reach millions of users.<p>From a time to launch perspective we are wondering if it is at all a good idea to use BaaS services like parse&#x2F;StacKMob&#x2F;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:<p>- Any idea on costs of BaaS once one moves into the enterprise usage range with millions of API calls per day<p>- 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?<p>- 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<p>- any other insight if you think this is a complete no no<p>cheers
Ani
======
samsheen
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

------
timita
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 :)

------
6thSigma
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.

------
pearjuice
I have read your entire post and still don't know what BaaS stands for. B.. as
a service?

~~~
anish_t
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...)

------
petervandijck
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.

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

