Hacker News new | ask | show | jobs
by alfalfasprout 3392 days ago
inb4 the Stallman disciples descend upon this comment.

The things with FOSS is there are different degrees of rigidity. On the one hand, you have copyleft licenses like GPL that tend to make commercial development very tricky. On the other hand you have more permissive licenses like MIT and Apache that do encourage further open source work but where the vast majority of improvements don't get committed back upstream (since they become a part of proprietary offerings).

2 comments

That's the difference between OSS and Free software. One focuses just on the benefits of working openly, the other is about making sure the user have full control of what their machine does. Open Source is a side effect of Free and it's a selling point to creators but the consumer is the priority.

Edit: To be clear I'm talking more about philosophy, not licensing. I do still struggle with the idea of GPL requiring changes to be made public.

GPLv2 does not require you to make your source changes public, it only demands that this remains an option for anybody who acquires a license from you.

So if I sell you software under the GPL, I have to provide you the source. You are then allowed, but not required, to publish the source.

What is tricky about using GPL for commercial development?
Per-copy licensing, which is the base of most commercial software distribution, is pretty much impossible with the GPL. Also, a software company might have licensed some parts of the code from another party - this might not be compatible with GPL. Finally, some companies like to keep trade secrets. This is also incompatible with the GPL.

I can understand that many here disagree with this, and I am an open source advocate myself. Nevertheless, it is important to understand how some companies work. The best way to change this, is to create enough open source software, which can be used as a replacement for closed packages.

> Per-copy licensing, which is the base of most commercial software distribution, is pretty much impossible with the GPL.

Equivalent basis for support contracts, which have actually been the key part for many years in most non-consumer software contracts even when they nominally include copyright licenses, are quite possible (and common) with GPL software.

When you are selling a support contract, GPL is no problem. But this does not cover the sale of a software which costs many thousands per seat, you cannot make up lost sales revenue with support contracts. The cost pressure would drive customers to use the software with way more seats than they have support contracts for. And the GPL would prevent any legal licensing scheme which would try to enforce a support contract per user of the software. There are exceptions to this - a hosted platform like github can of course count the number of accounts created for invoicing.
Red Hat charges per server, which is pretty much the same thing as per copy licensing.
They figured it out.

You're not paying for the software on that server.

You're paying for a license to use a few non-free packages containing trademarked material (basically the visual skins / logos nicely factored out) but more importantly, support.

And the success of Red Hat comes to no small amount from other software companies, which certify their software products often on Red Hat only. That means, if you are trying to get technical support for that software, it might depend on running on red hat. Of course, the software would in principle run on most other Linux distributions, especially Fedora, but I have seen smaller incompatibilities when running not on Red Hat. So this creates a certain market pressure to use Red Hat.
RedHat is smarter than everyone. The have obtained security accreditation that is required by the USG and many commercial auditors. Ultimate lock in and profit from a protected position. How many RHEL license are bought by the USG and the Fortune 500 for only this reason? RH, the compamy, is a good citizen. These rules only become onerous if you have money, so it is accepted.
Not really. Customers are more than free to switch to CentOS, or even other distributions or pay someone to fork parts of Red Hat. Red Hat is providing support.
If you modify some free software, repackage and resell it without contributing the changes, then you are breaking the intentional viral effects of the license.

Most of the web stuff that people work on these days is rather outside of this problem, unless is an AGPL license.

It is tricky if you want to base your commercial product on a derivation of a GPL licensed software.

Not really, GPL only says whoever receives binaries, must also receive their source code. Receiver then can, but is not obliged to, publish it or contribute back. Still, yes it does cause problem with various licensing schemes.

But per-copy licensing without source code availability is an atrocity enabled only by misapplication of copyright/IP laws, where copyright holder can write practically anything into the EULA and have the law system enforce the terms "for free". I hope our civilization eventually comes up with better and more GPL-aligned software distribution model.

You don't have to contribute GPL changes back. Whomever you give a binary to you'll have to give the source to if they ask. It's pretty much that simple.
That's a distinction without a difference as anyone who receives the binary must also have access to the source and be free to redistribute that source, so effectively all derivative works of GPL'd code are GPL'd unless you refuse to distribute.