Software developer with ~30 years experience. JavaOne rockstar, author & teacher. Codename One co-founder, OSS hacker.
I co-founded an open-source startup 9 years ago. Its always been an open-source startup from day one.
One of the difficulties of building an open-source startup is the balance between the commercial interests of potential investors, owners, and the community. Unfortunately, this isn’t something that can be extracted as a “general rule”. Different companies have different business models and different situations.
There’s the “purist” view of “everything should be open source”. Whereby you should make money off of consulting, support etc. I’m not a fan of that approach. It has several problems most of which are illustrated in this slightly old article. It’s hard to build a company with that business model and it’s even harder to get investments and grow it.
The most popular approach today is the cloud approach. We provide an open-source project but also offer a more convenient cloud-based solution based on it. This lets developers use the cloud for convenience but rest easy that they could always fall back to the open-source version if there’s a problem.
Where’s the Line?
As I said our product was always open source. But most developers didn’t use the source. Most used the cloud. The main reason was that we didn’t make using the code easy.
Yes, there was a git repo with the full instructions. But you had to actually read a blog post and follow the instructions. They weren’t hard but they weren’t trivial. They were also a bit harder for some platforms (e.g. iOS required more steps). We did this because it’s really hard to support the myriad installations and build environments users might have.
Opening (almost) Everything
We recently decided to effectively make the open source build even easier, just a target in maven that fetches precompiled binaries from maven central and builds a full native app. No cloud involved. That means you can use the open source without even using git. Effectively, this makes open source free (as in beer) and not just free (as in freedom).
Did we go too far?
I don’t know for sure yet.
But at least in terms of volume, I don’t think most people care:
We announced the maven support and open-source build in a very large series of blog posts and references all over the web. We placed links in reddit in social etc. and sent out a direct mail. The announcement was made on the 29th of March. While we see some impact on the traffic it’s lower than the peek before the 23rd of March. It seems the impact of further open sourcing has no effect on traffic which generally correlates to growth/revenue.
This is all relatively new so there might be impact under the surface (for better or worse). I’ll try to update this post with newer insight if it’s applicable.
While our product/business model is pretty unique I’m curious about the balance between open source and closed/cloud in other companies. How do you decide the point between free/paid and how easy it should be?
When something is reasonably open source making the process of working with the OSS easier doesn’t impact web traffic in the short term. It might have longer-term impact which is why I’m happy we did this. But if you’re a startup with limited resources and you need to pick where to put them… Focusing on making the source code more accessible might be a waste of your time.
Create your free account to unlock your custom reading experience.