Why did I not spell this out in the blog post? For my own amusement. I also think it shows that licenses really don't matter all that much as some people think, they are not computer code.
Why did I not spell this out in the blog post? For my own amusement. I also think it shows that licenses really don't matter all that much as some people think, they are not computer code.
They matter as long you're willing to enforce them, and have the time and money to do so.
In that case, you may be able to submit some form of take down request to GitHub against that project and other projects who are using your library.
https://github.com/search?q=bouk%2Fmonkey&type=commits
edit: wow, one of the projects that depended on your library was arduino up to 2020. https://github.com/arduino/arduino-cli/commit/09b4e8804fbd61...
edit2: was also used by AWS up to last week when they removed it. https://github.com/awslabs/karpenter/commit/d84365e8c44178ea...
the library is currently in use by Heroku/SalesForce to build deploy java apps (or something like that) https://github.com/heroku/java-buildpack/blob/master/go.mod
I wonder what sort of settlement you could get if you were to send them a lawyer for real.
The damages probably amount to $0. "Don't use this code, no seriously don't" isn't exactly an advertisement of the value it provide.
which doesn't even use go.
And they'd like you to even move away from that replacement to an ever newer replacement: https://github.com/heroku/buildpacks-jvm
This is why the GPL is more developer friendly than other licenses. If a business doesn't like the GPL you can offer to relicense your code, ... for money. And money is the restitution you seek when the license is violated.
Non-free licensed code has been on GitHub for quite some time. It's not only about free software and you should not assume so, as in all software.
Edit: changed FOSS to "free"
It would be an interesting precedent, forcing companies to comply with everything their advertisements say and doing away with any sort of fine print and ToS. I’m all for it, in fact. Total Ankh-Morporkization!
By technicality, the license has been violated by quite a large variety of corporations: Microsoft, AWS, Heroku, Bilibili, Baidu, Apache, Arduino, etc. [0~6], and much much more [7]
Crazy.
[0]: https://github.com/microsoft/bedrock/blob/a0ab244a80a94133cb...
[1]: https://github.com/awslabs/karpenter/pull/609
[2]: https://github.com/heroku/java-buildpack/blob/master/go.mod#...
[3]: https://github.com/bilibili/overlord/blob/b524449801b5411583...
[4]: https://github.com/baidu/openrasp/blob/f992962207bec063eda6f...
[5]: https://github.com/apache/camel-k/issues/2067
[6]: https://github.com/arduino/arduino-cli/issues/740
[7]: https://sourcegraph.com/search?q=context:global+%28bou.ke%7C...
If you do personal projects that are open source it's equally important to know what licenses your dependencies have if you release those projects to the public.
I would describe an end user count, revenue size, etc in order to apply special circumstances to corporations. Drone.io does a great job of this.
The lawyer seemed genuinely surprised and said they would read up on it. I'm pretty sure my bringing this up in a friendly manner caused them to question their assumptions. Had I picked a fight during the presentation I'd just be labeled a basement dweller.
However, this lawyer also told me something interesting. To some extent it doesn't matter whether I was able to change his mind. As long as other lawyers in the field have this bogeyman concept in mind, the use of GPL will get flagged in due diligence, etc. and it's easier to simply not use a component with strong copyleft when developing a product (unless it's as irreplaceable as Linux).
This is a long-winded way of saying that selling exceptions will likely scare off potential purchasers long before they are in a position to consider the purchase. Most shops have a blanket "no GPL ever" policy and a dev won't even bother with the component even for a prototype.
For example, using an LGPL based JavaScript library just leaves me confused every time. I read the LGPL 3.0, read some stack overflow answers, and read the GNU website. Yet I am left without being 100% certain that I can minify the LGPL JavaScript into a single file with my own source code (because JavaScript is not object code, and because sending JavaScript to the browser is distribution).
With BSD/MIT licences everything is clear and less ambiguous, and if I get something wrong then it is usually something easy to fix.
If I were a general counsel, I wouldn’t trust all my developers to follow the GPL licenses properly nor would I trust developers to correctly avoid simple mistakes. A default ban limits liability, reduces risks of negative publicity, and anyone that needs an exception has to justify it.
Idealistically, I love the GPL, and I truely believe in the goal of share and share alike.
Practically I understand why following the *GPL licences is difficult and that it involves multiple risks for a business, and so many commercial businesses sensibly prefer to avoid the costs.
> (F) Platform Limitation- The licenses granted in sections 2(A) & 2(B) extend only to the software or derivative works that (1) are run on a Microsoft Windows operating system product, and (2) are not Excluded Products.
So you could not deliver it on Safari, but also not on Chrome if it ran on Mac.
Aaaand that is why the JSXLSX implementation was developed, exactly the same as xlsx.js but without the restriction.
Sure, it's funny, but it's a joke at the expense of everyone else. This is like going to a party and walking up to every person and making a joke at their expense. Were the jokes funny? Maybe. Does everything think you're an asshole? Almost certainly.
In this case the license was silly, but if this library had been GPL, it’d still have been a massive violation by most of those big companies, and that’s something we need to pay more attention to.
People shouldn't use software without checking the license, but if you're making a joke, for a pattern that's actually something used in the industry, because you believe that pattern is bad, yeah, you should label it a joke.
If someone spends the time to integrate mystery code without taking the time to check the license allows it then frankly they dug that hole themselves.
You absolutely have the power to end the controversy by switching to a more mainstream license then adding a clear disclaimer like “use at your own risk”.
GitHub currently lists 465 projects that depend on your library, which means more than a handful of devs find it useful.
(We fleshbags could probably use more widespread application and understanding of formal language and notation as well—the most cumbersome description of linear interpolation I’ve ever seen was in the section on a real estate tax hike in the tax code; it had paragraphs! I mean, I feel for those who didn’t have a good time in high-school algebra, but I don’t see how they could reasonably deal with that monstrosity either.)
Algebrophobia apparently is a thing.
Culturally, yes, and I can’t help but be awed at how stupid and self-inflicted it is. (See “Mathematician’s lament”, et al.) Introducing algebra into legal practice now would probably be a spectacularly bad idea even if it were possible. That’s why I mentioned “more widespread application and understanding of formal language”. Passing this hurdle is a massive ordeal—if I meaningfully contributed to it and knew that, I could probably die a happy man—but, I mean, we were talking disembodied brains in VR here.
By the way, can anyone explain what it is people actually like about A Brief History of Time? I went on to study some of this stuff, but the book appears both unnecessarily convoluted and surprisingly stingy with actual information compared to my preferred pop sci fare. I like me some enigmatic promises of explanations, but Hawking’s were left mostly unfulfilled, or so it seemed to me.