Hacker News new | ask | show | jobs
by pooriaazimi 4885 days ago
This is how I think about BSD vs. GPL issue (of course, it's a contrived example and numbers are not accurate):

You have created X (say, redis). 5000 individuals and companies need it right away and want to use it momentarily.

If it's in public domain, all of them will use it, then make separate forks, and maintain them (individually, or in groups).

If it's a commercial product (say, $20.000), you might get 10-20 customers. They won't contribute back code, but will give you loads of money so you can hire more people. It's great business, but a couple of teenagers can't hack away with it because it's just too expensive.

If it's GPL, 500 companies (10%) will use it. Because if they use it, they have to re-licence their code as GPL also, which is unacceptable in many cases. They all contribute back their modifications though, which is great.

If it's BSD, everybody (5000 people) can and will use it (as it doesn't require you to contribute back your modifications, and you can have a private fork). So, we have 5000 companies using X. How many of them are contributing back? If it's more than 10%, then it's a win. If it's less, it's a loss (compared to GPL).

In other words, if you GPL you code, your pool of potential contributes has shrunken substantially.

---

So, the question is this: which is bigger? the percentage of companies that can use a GPL-licenced software, or the percentage of companies that are using BSD-licenced software and are contributing back their changes. I think in a lot of cases, the second one is bigger.

2 comments

If it's in public domain, all of them will use it, then make separate forks, and maintain them (individually, or in groups).

SQLite is almost exactly analogous to what you described (database, public domain).

AFAIK, there is no widely-used SQLite fork.

IOW, the situation you describe with every company "maintaining their own fork" literally did not happen to the software that's the closest case study in real life to what you describe.

But also any GPL project can poach from a BSD project, but not the converse, so BSD contributions are (technically) a strict subset of GPL contributions.