Once I complete my web development class, I fully plan on using the GPLv3 for all of my work. I am all about free/open source. I feel like corporations need to be forced to give back to open source and not just be fucking leeches.
While there’s parts about the GPL that I do like, I think it’s a generally bad license. Above all, because it limits even FOSS projects from using your code, because it would basically force them to also use the GPL. A massive amount of FOSS projects are not GPL compatible.
I think it generally often just discourages the usage of your code. You have to be something utterly outstanding for most companies to consider even touching GPL code. At least with a more permissive license, some corporations will use your code and even if they don’t all contribute, some will. e.g., my company uses a ton of FOSS code. We can only import code with certain licenses, obviously not GPL code. Me and my coworkers have personally made upstream contributions to improve these projects when we discover bugs or limitations. We do certainly also have some projects where we make internal only modifications, but most of those are changes that don’t make sense to commit to the upstream (like adding compatibility with internal systems or adapting to our build system). Point being that the projects with permissive licenses will at least get some commercial contributions whereas most GPL software simply won’t get anything (the likes of Linux is a rare case – most GPL projects aren’t worth it for companies).
As an aside, have you seen the LGPL? Depending on what you’re developing, it can sometimes make more sense. Its use case is for libraries. It basically makes it so that if you change the library, you must open source the changes (like the GPL), but if you merely link the library, you don’t need to do so. That can make it a bit more compatible with other people’s projects while still having GPL-like tendencies.
I feel like corporations need to be forced to give back to open source and not just be fucking leeches.
I’m inclined to agree, although I think there might be some software where I would rather they steal the software and not give back than not use the software and rely on them to develop their own copy. For example, if I wrote a real-time PID control library with integrator windup protection and built-in saturation arithmetic, I’d license it as MIT for sure [1]. I don’t trust corporations to give back to the community, but I trust them even less to exhibit basic engineering judgement or care for the safety of their customers.
Also, I’m a recently graduated engineer. It’s possible that I’ll have to write code for my company where I don’t control the licensing of the final project. Unfortunately, “fully avoiding proprietary licenses” means “not working in engineering”. I wouldn’t choose a proprietary license, but if it is forced upon me then I gotta play ball. I’m sure there are others in a similar boat.
[1] Incidentally, the Arduino PID librarywas released as GPLv3, but later switched to MIT.
I will likely have to do the same if I am working for a company. The initial work I will most likely do though is personal projects to build a portfolio and showcase what I can do. All that stuff will be GPLv3.
Once I complete my web development class, I fully plan on using the GPLv3 for all of my work. I am all about free/open source. I feel like corporations need to be forced to give back to open source and not just be fucking leeches.
While there’s parts about the GPL that I do like, I think it’s a generally bad license. Above all, because it limits even FOSS projects from using your code, because it would basically force them to also use the GPL. A massive amount of FOSS projects are not GPL compatible.
I think it generally often just discourages the usage of your code. You have to be something utterly outstanding for most companies to consider even touching GPL code. At least with a more permissive license, some corporations will use your code and even if they don’t all contribute, some will. e.g., my company uses a ton of FOSS code. We can only import code with certain licenses, obviously not GPL code. Me and my coworkers have personally made upstream contributions to improve these projects when we discover bugs or limitations. We do certainly also have some projects where we make internal only modifications, but most of those are changes that don’t make sense to commit to the upstream (like adding compatibility with internal systems or adapting to our build system). Point being that the projects with permissive licenses will at least get some commercial contributions whereas most GPL software simply won’t get anything (the likes of Linux is a rare case – most GPL projects aren’t worth it for companies).
As an aside, have you seen the LGPL? Depending on what you’re developing, it can sometimes make more sense. Its use case is for libraries. It basically makes it so that if you change the library, you must open source the changes (like the GPL), but if you merely link the library, you don’t need to do so. That can make it a bit more compatible with other people’s projects while still having GPL-like tendencies.
I’m inclined to agree, although I think there might be some software where I would rather they steal the software and not give back than not use the software and rely on them to develop their own copy. For example, if I wrote a real-time PID control library with integrator windup protection and built-in saturation arithmetic, I’d license it as MIT for sure [1]. I don’t trust corporations to give back to the community, but I trust them even less to exhibit basic engineering judgement or care for the safety of their customers.
Also, I’m a recently graduated engineer. It’s possible that I’ll have to write code for my company where I don’t control the licensing of the final project. Unfortunately, “fully avoiding proprietary licenses” means “not working in engineering”. I wouldn’t choose a proprietary license, but if it is forced upon me then I gotta play ball. I’m sure there are others in a similar boat.
[1] Incidentally, the Arduino PID library was released as GPLv3, but later switched to MIT.
I will likely have to do the same if I am working for a company. The initial work I will most likely do though is personal projects to build a portfolio and showcase what I can do. All that stuff will be GPLv3.