Hacker News new | ask | show | jobs
by christiansmith 4255 days ago
I'd like to take that devil by the horns and strongly suggest that companies like Firebase, who clearly deliver a critical infrastructure dependency for anyone using their service, should open source their platform as an act of good faith toward their customers.

No one wants to run yet another cluster, but anyone with an eye to business continuity ought to want the assurance that they can migrate to and from their own servers if that need should arise.

That might not be in the short term interests of Firebase, but it's definitely in the long term interests of their customers. Why would anyone ever base the future of their own business on the exit needs of another company's investors? It is a ridiculous risk. As much as I love what Firebase has built, I'd never use it for anything more than a toy project for that exact reason.

Basho, ElasticSearch and Docker(?) seem to be on a good path with commercial open source models. Is there any reason that a startup like Firebase couldn't do both? Offer their open source product as a service with non-critical value adds? GitHub is another example that comes to mind. If they were to get bought and shut down, it would be a pain in the ass to set up new remotes, but no one would have to stop using git.

5 comments

One company similar in services to FireBase is FanOut (fanout.io) and they share your open philosophy. Their server code is open source, and they make money by running it for you. I'm optimistic about FanOut and hope that they can be a success based on this model (and their service in general).
Looks fascinating. Setup of the open source version seems quite involved, are there containers I can use to try it out?

For my applications in healthcare I'm often forced to use in-house servers.

If you are using VMs in house, then an easy way to get going with Pushpin is to install Ubuntu Utopic and run "apt-get install pushpin".

It is also available in Debian jessie.

This is a great point. Just running the infrastructure is a big enough value-add. I wonder how well this is working for Discourse. Obviously a very different type of platform, but they're using this model and appear, from the outside, to be having success.
I'd also be very interested to see how things are turning out for Discourse as a business. I've been keeping an eye on OSS product + hosted businesses for awhile (Ghost being another one now).
It's not just Discourse and Ghost. Wordpress has been doing this since way before those projects were started and there's no sign that they're going away any time soon.
Maybe Google could open source it themselves. A lot of us didn't want to risk much on Firebase, because who knew what might happen to a small company. With the acquisition, we are now in the position of not wanting to risk a significant part of our business on an insignificant part of Google's.

What to do?

Google could resolve that by both hosting Firebase and open sourcing it. That way, you could outsource the critical Firebase management to Google and not have to build it yourself, while still having the security of knowing that if Google ever made it unavailable (shutting it down, worsening service, raising the price, etc.), you wouldn't be wiped out.

They already offer hosted database service for other OS databases. I hope they'll do the same with Firebase.

One interesting thing about the legacy of CouchDB is the sync protocol. There are now multiple implementations capable of syncing with each other, making it easy to migrate data to a different provider, even if the underlying implementation is different. I think there have been one or two forks and different service providers, and they can all exchange data without issue, as far as I know.
HTML5 - http://pouchdb.com iOS, Android, .NET, Java - http://developer.couchbase.com/mobile Hosted - http://www.iriscouch.com and http://cloudant.com Original - http://couchdb.apache.org

All of these are 100% open source and interoperable.

This is exactly why I went for couchbase and decided to avoid firebase.
Assuming you use PouchDB, how do you avoid syncing the entire database with all users?
database-per-user is a common pattern with CouchDB. If you need to aggregate data across your users for reporting etc then you can use a server-side replication to create a "master" database which is only accessible to your internal users.

You could also use filtered replication but it is: a) not scalable b) not secure (the whole db would still be accessible to all users)

Couchbase has a different spin on this via "channels" though I'm not sure how it interoperates with PouchDB.

Couchbase Sync Gateway's channels are just slices through the data. The mechanism is internal to the Sync Gateway (you write a JS function that says who can see which channels and which channels a doc belongs to.) Replicating clients don't Need to know about this filtering, so channels work great with all flavors of Couch.
Before making suggestions like this and getting the HN bandwagon to support this POV, perhaps we should put ourselves in the startup's shoes?

Forcing an open source on acquisition severely limits your exit options and lowers your acquisition value. In terms of the companies you've mentioned with commercial open source models, none of them are clear successes. All still have battles to fight. Open source is a really hard path to take, and it's littered with dead companies and zombies who's revenues have been cannibalized by their open source creations.

As much as the users feel like startup founders owe them something, startup founders are human like everyone else. They don't exist to be our slaves. Imposing rules like this on companies would result in fewer tools and companies overall as the companies themselves would no longer make economic sense.

> Before making suggestions like this and getting the HN bandwagon to support this POV, perhaps we should put ourselves in the startup's shoes?

As a founder, I am in a startup's shoes, and my intention was not to provoke an angry mob, but merely to state my own opinion. I don't want to use Firebase for anything my own revenue will depend on, and that's a shame, because they have made an awesome product.

> Forcing an open source on acquisition severely limits your exit options and lowers your acquisition value.

These acquisitions of 3 year old companies are always sort of disappointing to me. On the one hand, I'm truly inspired and encouraged see their measure of success. On the other hand, I'd really like to see more startups committed to building lasting companies that strive for win-win outcomes that include users, employees, investors and founders. This isn't supposed to be a zero sum game.

> As much as the users feel like startup founders owe them something, startup founders are human like everyone else. They don't exist to be our slaves.

With a company like Firebase, there's a chain of trust that's really important. They are not responsible for just their own individual users. They are responsible for other companies' users. The effects of everything they do are multiplied accordingly.

Part of offering a platform is the guarantee that "this thing you depend on to serve your users will not go away unexpectedly without leaving a viable alternative." That's not an unreasonable thing for someone to demand when they're building their house on your foundation. Their use of your service also represents an investment of their own developer time. You go away, they lose that investment. If you as the operator of a platform don't want to take on that level of responsibility, don't go into that business.

> Imposing rules like this on companies would result in fewer tools and companies overall as the companies themselves would no longer make economic sense.

Who said anything about imposing rules? You're putting words in my mouth.

There's a trend to throw VC money at open source force multipliers: http://words.steveklabnik.com/is-npm-worth-26mm

This isn't perfect and it contradicts my point about wanting to see sustainable companies, but I find it encouraging nonetheless. I think Firebase could have easily fallen into this category.

I'm not trying to say your opinion is incorrect. Judging by your response, you took my comment a little too harshly.

I'm trying to point out that there is a very large number of companies where open sourcing on acquisition doesn't make sense. And there's also very serious financial risk to founders if they choose to adopt this idea. The way you've stated this suggestion, I'm afraid unsuspecting founders will adopt this policy and shoot themselves in the foot a few years down the line.

I draw a lot of this from personal experience. I just sold my company a few months back, I currently work at an open source company (which you've already mentioned as one of the "model" OSS companies), I have first hand experience with a company getting acquired that had this "open source" clause a few weeks back, and I'm also heavily involved in the due diligence process for many tier 1 VCs that look to invest in the infrastructure space.

Having been through all of that, I can say that my personal outcome would not have been possible had I had the "open source" clause for my company, and we would have needed to pivot hard. The company acquired with this clause lost a vast majority of its acquisition value because of this "open source" clause. It's basically become a talent acq. And from doing due diligence/working at an OSS company, it's become clear that most founders SEVERELY underestimate the challenges in building an OSS company. It's a double edged sword. And it's one where arguably the edge facing you is sharper than the one facing your market.

I didn't take it personally at all and if you have the time and inclination I'd love to hear more about your experiences. Please feel free to email me. smith at anvil dot io.
I was trying to respond to your pre-edit comment about fewer companies being started if we have such rules.

Most people start companies because they love what they are doing, want to make an impact, and to make a good living.

An interesting study would be whether open source startups are doing any better or worse than closed source companies. Do you have any links?

I don't have any links per say, but I have done extensive market research on this as it's a requirement in my job (I work at one of the aforementioned open source companies). A quick nitpick, regardless of what people publicly say to the press, I'm 100% positive that most companies are started with some financial motive.

It's not impossible to build a business around open source, but it's incredibly hard. Take MySQL for example. MySQL's initial pitch was this "We'll destroy 50% of the DB market, and then capture 25% of the remaining market." And MySQL the company never really made it. This is with arguably the largest pure technical market to ever exist (databases).