Hacker News new | ask | show | jobs
by lmaximus1983 2796 days ago
I actually created an account as this is one of those things that gets repeated a lot and IMO it simply isn't true.

1. The BSDs adoption was severely hurt in the 90s by the AT&T lawsuit, it basically stopped several years of development while the lawsuit legal status was clarified. Linux and the GNU tooling didn't have that problem. If the lawsuit never took place it is doubtful whether the Linux kernel would have got as much interest as it did at the time.

2. If you don't keep up contribute your changes back to upstream (whatever the license) eventually you will be left behind and have to maintain your own incompatible version. It is in your interest to send upstream patches.

3. GPL code gets stolen all the time and put into propriety software. I've worked at loads of places that have just straight out cut and pasted GPL code into their own product (usually this is done without management's approval). Large projects such as the Linux kernel companies can't really get away with it. However a lot of companies don't build software for the masses, most build bespoke software that is only deployed on one or two servers on a company intranet and the general public will never see it. A lot of developers will just straight up steal code (not caring about the license) from wherever. A surprising number of companies still don't even use source control, let alone bother reviewing code.

4. Companies do contribute back to BSD licensed projects, however this is normally financially not through patches.

1 comments

> software that is only deployed on one or two servers on a company intranet and the general public will never see it.

I thought that, in this case, it's the company itself who is the "user" of the software and isn't obligated to do anything to/for/about upstream (since there is no stream.. they're not re-distributing it). In that sense, they're not stealing anything, just using what was, explicitly, free to use.

The code was compiled, so they cannot make modifications. So it is in violation.

You would be right if it was PHP / Python or something else that was interpreted.

The real point to take away is that any modifications will never reach upstream.

I don't understand what compilation has to do with anything, if the company (user) in question isn't distributing the software outside the company.

How is it any different from an individual making changes to GPL software and using it (compiler or interpretted) on a personal computer? Surely that individual isn't obligated to share anything, either.

> The real point to take away is that any modifications will never reach upstream.

The GPL doesn't mention, AFAIK, any such concept. I thought the point was freedom for users of software, not implied benefit to some "upstream" programmer.

IOW, since the GPL is about the user, it's about protecting "downstream" and, without redistribution, there's none to protect.

Maybe I didn't make it very clear. Each time I observed it the company I was contracting for was selling it to a 3rd party (where it was installed on premises) as a proprietary product.

>The GPL doesn't mention, AFAIK, any such concept. I thought the point was freedom for users of software, not implied benefit to some "upstream" programmer.

The OP specifically said that one of the benefits of the GPL is people had to contribute back because they have to make the code public. As we have discovered they don't.

> Maybe I didn't make it very clear. Each time I observed it the company I was contracting for was selling it to a 3rd party

Indeed, that wasn't at all clear. The comment to which I was responding only used the word "company" (singular and plural), without any modifiers, which I read as describing the same party.

That clears up some of my confusion, since that's an obvious violation (assuming source code wasn't available to those same 3rd parties, which you also didn't explicitly state).

> The OP specifically said that one of the benefits of the GPL is people had to contribute back because they have to make the code public.

Such an assertion (which I see in neither ancestor comments nor the article) still seems mistaken, so perhaps it's a strawman?

The GPL, IIUC, is meant to protect the user, aka downstream, not provide benefits to "upstream". If the binary itself isn't made public, then the source code need not be, either (though I suppose the user/customer in your scenario would have the freedom to choose to make it public, they have no obligation and little, if any, incentive).

From the OP

> Companies extend the BSD OSs with proprietary additions, then abandon the work and it gets lost. With Linux, everyone is forced to play nice and release under the GPL, and the work gets to live as long as people value it.