Hacker News new | ask | show | jobs
by embik 703 days ago
I seriously wonder what HN thinks is a valid business model for writing open source software. Everyone here seems to insinuate that people want to create a business and use open source as a growth hack. But how do you differentiate those from people who want to write open source (because they believe in it) and have to have a business to support their livelihood?

This is a team of eight people that tried to do everything „right“ by changing to a FOSS license (which happened four years ago) and the changes announced here sound very reasonable (changing branding and removing undocumented APIs). But all comments are dunking on them as if they haven’t even read the article.

5 comments

From my experience, people here like permissive licenses because they can grab the source and don't think about it further (and don't forget to give credit if their coffee was good that day), because it's building on top of other people's work without any effort.

I don't think it's bad intentions though. Just grab the pieces you need, assemble, add the missing parts and start a project, and earn money.

xGPL (which I strongly support) prevents this building model by forcing license inheritance, release of changes and limiting license interoperability, preventing creation of technical secret sauces, and many people think that all secret sauces are technical.

OTOH, the harder (but better in the long run) way to create value with FOSS and Free Software particular to have stellar support and reliability. i.e.: Your code can be deployed, compiled, or built upon, but you're the best source to get the software in the first place. Your presence, human relations and knowledge about the product is the secret sauce you have, but this needs more effort, is a more of a soft skill and grows like a sequoia (i.e. roots first for a decade, then start to get taller).

This is not a quick buck, but an old school proper business building, but many people don't have time for that, and since everyone wants to build fast and consume fast, this more healthier mode of making business is frowned upon.

Sometimes you need to move slow and break(through) things, but as the meme says "ain't nobody have time for dat!", which is shortsightedness in my perspective.

> OTOH, the harder (but better in the long run) way to create value with FOSS and Free Software particular to have stellar support and reliability. i.e.: Your code can be deployed, compiled, or built upon, but you're the best source to get the software in the first place.

...It's not obvious to me that the person who originally wrote the software is necessarily better positioned to support the software. Everyone has the current source code, so from that standpoint it's a level playing field. Another party could come in and build a business as the premier support consultants without most of the original developer's startup costs.

Now, I'm not sure if this has ever actually happened. If it hasn't, maybe I'm wrong. I would like to be wrong.

The biggest example is SQLite. It's public domain [0], yet its secret sauce is how the developers know, develop and test the software.

They do not accept outside patches, which is not against Free Software, it's more like a cathedral, but it's not "not open source".

> ...It's not obvious to me that the person who originally wrote the software is necessarily better positioned to support the software.

Let's take an example. Scientific software. Something like OpenFOAM, or some simulation code. Open it with GPL, everybody has the source code, but only the developers know the intricacies of material simulation, the fragile math of it, how to optimize it, how to test it. You can fork it to infinity, but unless somebody has the expertise to understand the science of it, nobody can do anything with it, maybe besides breaking it in subtle ways making things worse.

> Another party could build a business as the premier support consultants without most of the original developer's startup costs.

When you have good enough product with tons of implicit knowledge buried in its source code (see above), it's not easy as it sounds.

Many people write CRUD software, and CRUD software has no effective moat. It's just DB dressing and some automation. Start to blend in domain specific knowledge into it, and now we're talking.

[0]: https://www.sqlite.org/copyright.html

> When you have good enough product with tons of implicit knowledge buried in its source code (see above), it's not easy as it sounds.

I don't doubt that it's hard. But I'm not convinced that it's harder than writing the software in the first place, so that is still a major savings for the competitor (which they could then use to undercut in terms of rates, etc).

As a point of comparison, let's say that SQLite's development team all died in a plane crash. Would a new team throw out SQLite's codebase and start from scratch, because they could never hope to understand the old code as well as something they wrote themselves? No—they'd review the code and documentation and bring themselves up to speed. Maybe they're never 100% as good as the first team, but they'd be quite capable.

> but they'd be quite capable.

That's the thing. They won't have the same shared vision and abstract model and roadmap of SQLite to begin with.

Let's take more examples: Audacious, GIMP, Darktable, DigiKam, Inkscape, KiCAD, Blender... Why these programs are not forked, or forked successfully? These are not niche programs. They are standard tools for some people. The thing is, all of these tools require very deep knowledge about some obscure and hard subjects. Some groups may take them over, but they can't just continue them as is. They will break things, or need to relearn tons of theory and their numerical versions which can be applied in programming languages.

I did my Ph.D. in SWE, writing a material forming simulator. Boundary Element Method more specifically. You can't expect a group of people just to say "Meh, let's fork something like this and just be better". You can't. You need to know deep numerical math, theory of BEM, need to build the formulae, and know enough CS + numerical linear algebra to transform that math to computer code.

I spent 7 years to build one from scratch. Not all applications can be transferred to a new team in two weeks flat. KiCAD is in development for 30+ years, for example.

> Now, I'm not sure if this has ever actually happened. If it hasn't, maybe I'm wrong. I would like to be wrong.

It has. As a popular example, Percona are among the best consultants on MySQL/MariaDB/MongoDB/databases in general, and they are not related to any of those projects (one of the founders of Percona used to work at MySQL decades ago).

> and build a business as the premier support consultants without most of the original developer's startup costs

I think a real world example for this would be https://www.collaboraoffice.com/about-us/. And looking at it from the outside a positive example as well. At least I could not find any public beef between collabora and the document foundation (as the organisation behind libreoffice).

Collabora guys push tons of code back to LibreOffice, too, as far as I can remember.
It's not necessarily about being better. Sometimes a competitor can beat you just by being cheaper, or by being better connected.

One example is that the Matrix project recently took a budget hit when the core team apparently lost a big bid to a "large system integrator" who seems to have used their own open source code to bid against them.

Sadly this wasn't a one off - Element has repeatedly lost deals to larger SIs who take our own FOSS software and compete with us with it, and win because they are better connected and don't have any of the costs of actually maintaining the software and so can charge a lower price. Hence shifting to AGPL to make it less desirable for SIs to commercialise us without first agreeing an AGPL exception.

A better approach would be if the purchaser mandated that the upstream project has to participate in the deal rather than being disintermediated by the SI, but we've seen very few instances of that happening.

Hacker News isn't a single mind, so it doesn't "think" anything of its own.

Personally, I believe there are several "valid" business models that include open source contributions. Microsoft, Facebook, Google, Amazon and even Apple all contribute to open source software. Redhat, Canonical, Suse are all companies that have open source software at the heart of their products. Blender and Godot have found viable paths as nonprofit foundations. Linux, OpenStack, Eclipse and others are all foundations that work on a different level, combining contributions from many different companies and individuals, and support multiple projects.

There are open core companies like Gitlab that are also "valid", while I personally don't prefer the open core model.

Automatic sponsors WordPress development, and makes money providing hosting and related services. Automatic competes in a very competitive market with other companies providing hosted WordPress, but they survive.

Releasing code as open source is not an automatic mint. Business is hard. Businesses that don't release a single line of open source code fail all the time. It should not surprise anyone when a company that contributes to open source fails, because companies fail all the time.

Just because you want something to have a viable business model doesn't mean it does. If you want to get paid to develop open source software, I think you have a couple of options:

1. Just don't. Work on open source on the weekends, etc.

2. Do it as part of a "commoditize your complements" strategy.

3. Work at a company that is so large they can fund open source development as part of their advertising strategy.

4. Gather together some expertise in existing open source projects and sell consulting. Crucially, you'll probably need to build on top of some existing open source install base or name recognition. Redhat didn't start the linux project or the gnu userland, Percona didn't write mysql, etc. In some sense you are now one of the leaches that posts such as this one complain about.

The fundamental piece in common here is that the open source bit isn't the main value driver for the business.

This framing is just wrong; there has never been, is not currently, and will never be a guarantee that you can sustain a company entirely off of an open-source offering.

If you are concerned about your livelihood then don't hinge it on the viability of open source projects to underpin your business model.

I've said it before, I will say it again.

i think the issue is less "sustain a company" and more the unspoken qualifier "extremely valuable".

sustaining a small company offering commercial licenses or hosting or support or consulting or whatever for an open source product is not going to be that much more difficult than sustaining any other kind of small company.

the issue that I see most often are OSS devs not approaching the problem like a company would and startup founders looking to build a unicorn while also keeping some kind of purity wrt open source.

not everything needs VC investment with valuations measured in the tens of millions but everything does need some level of formal business development (even if that business is of the non-profit variety).

> I've said it before, I will say it again.

Cool, and what is your proposal to people who both believe in open source, build on open source, but would also like to be able to put food on the table and enjoy their work?

Blender and Godot both show one possible way to putting food on the table and spending your time contributing to open source projects that you love. Other companies provide consulting and related services. Business is hard, you can't just write some code, throw it over a wall with an open source license, and expect the money to start pouring in.

You can get a job at a company like Google, Amazon, Microsoft, or hundreds of others where they pay folks to write open source code, too.

Uhh, suck it up? Just because you really want something to work some way doesn't mean it can work that way. It's just that simple.
The geomsys model, featured two days ago on the front page, seems like being on the right track: https://news.ycombinator.com/item?id=40905849

Don't try to sell software, sell your expertise. Basically variations on consulting.