this post was submitted on 16 Jun 2024
1005 points (88.7% liked)

linuxmemes

20880 readers
6 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
 

Context:

Permissive licenses (commonly referred to as "cuck licenses") like the MIT license allow others to modify your software and release it under an unfree license. Copyleft licenses (like the Gnu General Public License) mandate that all derivative works remain free.

Andrew Tanenbaum developed MINIX, a modular operating system kernel. Intel went ahead and used it to build Management Engine, arguably one of the most widespread and invasive pieces of malware in the world, without even as much as telling him. There's nothing Tanenbaum could do, since the MIT license allows this.

Erik Andersen is one of the developers of Busybox, a minimal implementation of that's suited for embedded systems. Many companies tried to steal his code and distribute it with their unfree products, but since it's protected under the GPL, Busybox developers were able to sue them and gain some money in the process.

Interestingly enough, Tanenbaum doesn't seem to mind what intel did. But there are some examples out there of people regretting releasing their work under a permissive license.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 4 points 5 months ago (1 children)

If the government is the US (federal), I think you are technically supposed to release your code in the public domain by default. Some people work around this but it's the default.

But anyways, the example you've given is basically that you're paid with government funds to do work to assist industry. This is fairly similar to the people that do the work for free for industry, only this time it's basically taxpayersl money subsidizing industry. I've seen this many times. There is a whole science/engineering/standards + contractor complex that is basically one big grift, though the individual people writing the code are usually just doing their best.

I'm also an idealist of sorts. The way I see it, I'm developing publicly funded code that can be used by anyone, no strings attached, to boost productivity and make the world a better place. The fact that this gives us publicity and incentivises the industry to collaborate with us is just a plus.

Perhaps it makes the world a better place, perhaps it doesn't. This part of the industry focuses a lot on identifying a "social good" that they are improving, but the actual impact can be quite different. One person's climate project is another's strategic military site selector. One person's great new standard for transportation is another's path to monopoly power and the draining of public funds that could have gone to infrastructure. This is the typical way it works. I'm sure there can be exceptions, though.

Anyways, I would recommend taking a skeptical eye to any position that sells you on its positive social impact. That is often a red flag for some kind of NGO industrial complex gig.

Calling it a self-imposed unpaid internship, when I'm literally hired full time to develop this and just happen to have the freedom to be able to give it out for free, is missing the mark.

Well you're paid so of course it wouldn't be that.

Also, we develop these libraries primarily for our own in-house use, and see the adoption of the libraries by others as a great way to uncover flaws and improve robustness. Others creating closed-source derivatives does not harm us or anyone else in any way as far as I can see.

Sometimes the industries will open bug reports for their free lunches, yes. A common story in community projects is that they realize they're doing a lot of support work for companies that aren't paying them. When they start to get burned out, they put out calls for funding so they can dedicate more time to the project. Sometimes this kind of works but usually the story goes the other way. They don't get enough money and continue to burn out. You are paid so it's a bit different, but it's not those companies paying you, eh?

You aren't harmed by closed source derivatives because that seems to be the point of your work. Providing government subsidy to private companies that enclose the derivative product and make money for their executives and shareholders off of it.

[–] [email protected] 2 points 5 months ago (1 children)

You are almost on point here, but seem to be missing the primary point of my work. I work as a researcher at a university, doing more-or-less fundamental research on topics that are relevant to industry.

As I wrote: We develop our libraries for in-house use, and release the to the public because we know that they are valuable to the industry. If what I do is to be considered "industry subsidies", then all of higher education is industry subsidies. (You could make the argument that spending taxpayer money to educate skilled workers is effectively subsidising industry).

We respond to issues that are related either to bugs that we need to fix for our own use, or features that we ourselves want. We don't spend time implementing features others want unless they give us funding for some project that we need to implement it for.

In short: I don't work for industry, I work in research and education, and the libraries my group develops happen to be of interest to the industry. Most of my co-workers do not publish their code anywhere, because they aren't interested in spending the time required to turn hacky academic code into a usable library. I do, because I've noticed how much time it saves me and my team in the long run to have production-quality libraries that we can build on.

[–] [email protected] 5 points 5 months ago

You are almost on point here, but seem to be missing the primary point of my work. I work as a researcher at a university, doing more-or-less fundamental research on topics that are relevant to industry.

This is something I'm very familiar with.

As I wrote: We develop our libraries for in-house use, and release the to the public because we know that they are valuable to the industry. If what I do is to be considered "industry subsidies", then all of higher education is industry subsidies. (You could make the argument that spending taxpayer money to educate skilled workers is effectively subsidising industry).

This is largely the case, yes. Research universities do the basic research that industry then turns into a product and makes piles of cash from. And you are also correct that subsidizing STEM education is a subsidy for industry. It very specifically is meant to do that. It displaces industry job training and/or the companies paying to send their workers to get a degree. It also has the benefit of increasing overall supply in theur labor market, which helps drive down wages. Companies prefer having a big pool of potential workers they barely have to train.

We respond to issues that are related either to bugs that we need to fix for our own use, or features that we ourselves want. We don't spend time implementing features others want unless they give us funding for some project that we need to implement it for.

That's good!

In short: I don't work for industry, I work in research and education, and the libraries my group develops happen to be of interest to the industry. Most of my co-workers do not publish their code anywhere, because they aren't interested in spending the time required to turn hacky academic code into a usable library. I do, because I've noticed how much time it saves me and my team in the long run to have production-quality libraries that we can build on.

I think your approach is better. I also prefer to write better-quality code, which for me entails thinking more carefully about its structure and interfaces and using best practices like testing and CI.