I'm fully aware of what I'm doing :-)
The D Language Foundation is a non-profit, has expenses, and is funded by donations. None of it goes to me.
Imagine Linus Tarvolds stopped working on Linux before there was a foundation to take over because he did it just for fun and no one else wanted to take up the mantle? It's hard to say what the outcome from that would have been... maybe Google would have claimed it entirely and slowly shifted the license to something else?
I appreciate that people can create things for fun, and those things can be open-source, but if someone creates something because it's the right thing to do and not just about fun... well where do we stand now? Should they make it open-source but demand money? Should it be closed-source if the fun-factor is less than 80%? 50%?
Unless a small, dedicated team of capable people agree that your open-source project is worth preserving, allowing it to survive you as the founder, I question the validity of open-sourcing anything for fun unless you design the licence, and more, to enable you to walk away and/or get bored.
Would love to hear your thoughts.
When using open source, you take that risk. I've used a lot of libraries that have been abandoned over the years where I either had to switch to a fork, another library entirely, or just write the functionality myself. I know the risk inherent in OSS. For large projects like Linux, since it's so large, someone else would pick it up, but again, there's always a risk that someone doesn't.
I do not mean this to imply I think commercial software is superior to free software, I am a great believer in FOSS, I just wnat to show a reason why a "scary" warning in commercial software is not equivalent to the same warning in FOSS.
Then someone else can take over, or not, depending on how important it really is to those 150000.
From the perspective of a business, using open source is strictly safer than closed source. With closed source, if the entity owning the code goes bankrupt, increases licensing fees substantially, just axes the project (incidentally what Google is also known for) or looses interest in some other way, you are out of luck. Go find something similar and hope there is a migration path. With open source, the equivalent is the maintainer walking away because they are bored, and you have the code right there to take over, or pay someone else to do so.
> I question the validity of open-sourcing anything for fun unless you design the licence, and more, to enable you to walk away and/or get bored.
Every open source license is already designed so that you can just walk away for whatever reason, e.g. when you are bored.
I’m unaware of any open source license that prevents an author from walking away, ever? GPLv3 has no warranty or liability?
I guess you meant something with “and more”, but that sounds like a mismatch of expectations of what a user of open source might want, vs what is required of an author of open source?
Then 150,000 people should open their wallet, or crack open a text editor, and pay.
> design the licence, and more, to enable you to walk away and/or get bored.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Then a few of those 150,000 people can start contributing and take over maintainership. If no one wants to step up, then I guess it isn't that important to them.
If you're depending on a one-person open source show for your company's livelihood, it's on you if you don't have a contingency plan for if/when that one person decides to abandon the project, or, hell, dies or gets too ill to continue working on it.
> I question the validity of open-sourcing anything for fun unless you design the licence, and more, to enable you to walk away and/or get bored.
No one owes you anything. Any way that anyone wants to open source something is perfectly valid. No one has to use their work for free, or under any particular terms. People who need the functionality from an open source project are free to find a different project (free or paid) or build their own, if they are uncomfortable with how a particular project is managed or licensed.
> you design the licence, and more, to enable you to walk away and/or get bored.
It's all Boost licensed, so anyone can fork it, anyone can step up and continue with it, etc.
As D's scope has increased, a lot more of the tasks have been delegated out. I do a lot less management than I used to, and get to concentrate on the parts I'm good at.
I sometimes say "hell no" to features popular in other languages (like version algebra, and macros). How do you say "hell no" to your employer?
You have the privilege of being able to develop open-source but that's hardly a sustainable model.
I have no expectations of the users, and I expect the same from them.
Outdated, less optimal, almost-famous code/libraries/frameworks that businesses still rely on for money and don't want to spend money migrating away from that need various updates for new OS versions, security patches, and those are the maintainers that are underpaid and struggling.
They can just not do it if they don’t want to.
On one hand OSS authors select permissive license exactly because they want big corps to use their software.
On the other hand - OSS authors are unhappy about big corps using their software in a way that license allows them to.
Just stick to GPLv3 / AGPL.
I don't understand why an OSS author would select anything more permissive than that: big corps can use MPLv2/EUPL libraries in proprietary software just fine.
[1]: https://joinup.ec.europa.eu/collection/eupl/how-use-eupl
Honestly? Because many things are too small to be worth paying a lawyer to write a letter to license violators.
If I'm not willing to sue someone for disobeying the license on a library or tool, I just use a maximally permissive license. And at a good lawyer's hourly rate, it has to be a pretty big project before I'd even care.
So for minor projects, MIT or Apache it is. Or I just CC0 it. I wrote the code because I found it useful, and I decided that it wasn't worth the often heartbreaking effort of building a sustainable business around it. So if someone else finds my code useful, that's great!
(EDIT: See discussion below for why I don't bother with a license I'm not willing to enforce.)
That’s a false alternative. You can chose copyleft license and not sue.
This is _especially_ useful for things I don’t plan to monetize. It allows free use but also protects the society from free riders.
That's a value judgment that others may not share. I'm not (quite) one of them, but there are people who believe that bits on a hard drive shouldn't be owned, by anyone. I think it's a perfectly reasonable stance to argue that releasing something as a public good under the least restrictive terms possible is a moral and correct thing to do.
Personally I prefer strong copyleft for most projects that I really care about. But that's my preference, and I don't kid myself into believing that I know what's right or wrong for society in this area.
> Because many things are too small to be worth paying a lawyer to write a letter to license violators.
Then don't! I would advice you never even consider it, that would be absolutely crazy!
But what you miss is that big companies using your library have a lot of money, and therefore it is a risk for them to not comply with your licence. What does that mean in practice?
* Big companies will favour permissive licences. If you publish your library under a permissive licence, you screw the other small libraries that have a copyleft licence (that would be an argument for a permissive licence). * Big companies can't use strong copyleft libraries in proprietary software, so that would be a no-go. * Big companies can TOTALLY use weak copyleft libraries in their proprietary software. But if they do, they have to distribute their changes. Because not doing it would be a risk they are not willing to take.
Just to clarify: I have actually been involved in open source license enforcement efforts, because big companies do violate strong copyleft licenses regularly. Or their subcontractors do.
Usually, if you're willing to pay a good lawyer to yell at them, you can get the domestic ones to stop. And I know of some enforcement organizations that manage to get voluntary settlements on the order US$15,000, or who get the violators to appoint a "compliance officer."
For a big, commercially important project? This is often worth it. For a modest CLI tool, or something which I put a few weeks of full-time effort into? It is not remotely worth my time to enforce a strict license. This is a purely personal tradeoff. But if it's not worth $400 to me to have a lawyer write a letter, then I'm going to use a permissive license.
Again: if it's not worth $400 to have a lawyer write a letter, just don't have a lawyer write the letter! But you can still have the copyleft license... for the situation where it may be worth a lot more in the future. Or just to give leverage to fellow developers: if I use a copyleft library at work, then I can tell my managers that I must contribute my changes upstream, during my working hours.
Whenever someone starts a sentence with "respectfully", it's usually because they're about to say something disrespectful. Definitely the case here.
GP doesn't have it completely wrong. There is no wrong or right. The person who is doing the building gets to decide the license, and any reason or motivation they have for picking a particular license is by definition correct, because that's what they want to do.
> If you publish your library under a permissive licence, you screw the other small libraries that have a copyleft licence (that would be an argument for a permissive licence)
No one releasing something under an open source license has any sort of responsibility or obligation to some random other open source project they may not even know about.
Only alternate facts?
I answered to a comment that said "I don't use copyleft because I don't want to have to pay a lawyer", which to me is a completely invalid point. It's like saying "I don't use copyleft because I don't want to eat bananas". You can use copyleft and not sue, just like you can use copyleft and not eat bananas.
> No one releasing something under an open source license has any sort of responsibility or obligation to some random other open source project they may not even know about.
I meant that permissively-licensed libraries tend to be favored, so that's an advantage when competing with similar libraries. If you care enough to choose a license but you are not trying to compete with other open source alternatives, then it would be nicer to go for copyleft.
I know permissively-licensed projects that were inferior to copyleft alternatives but got more traction because... well because companies could freeride on the permissive license. In that case those who chose the permissive license knew exactly what they were doing and decided to compete this way instead of technical merit.
Probably there's no real reason apart from legal saying "meh, we can't be bothered about reviewing this"
As I don't care about Google using my code or not, I choose EUPL, but it's worth mentioning that some companies only accept permissive licenses that grant them the right to do basically whatever they want with your code.
Free software has almost lost, now that MIT has become the default, pushed hard by corporations and its employees.
Not sure what you mean. GPL-style licensing is still very popular among open source projects. Sure, there are perhaps a lot more projects that are MIT-licensed (and similar), but that doesn't detract from the body of thriving GPL-licensed software.
I think you're reading too much into people's motivations. When I release something under a permissive license, it's because I don't care about it enough to license it under something like the GPL. Or I just don't want to deal with the possibility of there being license violations that I'd feel responsible for dealing with (if I'm not going to, then why bother licensing under a copyleft license?).
For the most part I don't really care who (if anyone) uses the stuff I release. Building a community around an open source project that I started could be fun and rewarding, sure. But honestly I'm not sure I'd even want big corporate users, since they're likely to expect things from me that I'm not willing to provide.
> On the other hand - OSS authors are unhappy about big corps using their software in a way that license allows them to.
Regardless, you're painting all of us with a very broad brush. Please don't assume anyone's motivations or licensing decisions fall under some simple, one-size-fits-all rubric that you have in your head.
I think the best option is to just AGPLv3 everything. You maximize freedom but still own the copyright so if corporations want your software they can simply pay for permission to use it. AGPLv3 gives us our leverage back in an ethical way.
Even asked Richard Stallman what he thought of it. His reply:
> It is my understanding that as the copyright holders
> they have the right to do it without any problems.
> They leverage the AGPLv3 to make it harder for their
> competitors to use the code to compete against them.
I see what you mean. The original developer can engage
in a practice that blocks coopertation.
By contrast, using some other license, such as the ordinary GPL,
would permitt ANY user of the program to engage in that practice.
In a perverse sense that could seem more fair, but I think it is
also more harmful.
On balance, using the AGPL is better.I developed this license https://justdo.com/source-available-license , if someone wants to adopt it for their project, I'd love to provide its Latex form, just DM me. (With enough demand, I might Open Source the Source available license ;) )."
I'm not here to make Bezos' yacht ten feet longer.
Stallman et. al. have not worked in big corp since the 80s so they don't understand how misaligned incentives are now. The AGPL is a solution to the issues we were having in the 00s. The issues of the 20s are solved by source available licenses. Or my preferred solution, any open source license which can only be used by a natural person, corporations need not apply.
"The PolyForm Project is a group of experienced licensing lawyers and technologists developing simple, standardized, plain-language software source code licenses. PolyForm aims to fill gaps in the menu of standardized software licenses, like non-commercial, trial, and small-business-only terms."
"allow us", "ensuring we can" ...
You misunderstand OSS, which is about "allow all", and "ensuring all of us can". Of course, the OSS model doesn't always work, nor do its proponents claim it is the one true way to run a project. Though, they do get irked when source-available licenses try to pass off as "almost OSS" but aren't quite.
The gp clearly distinguishes open-source and source-available, and I don't think he misunderstands OSS.
Perhaps misunderstands source-available:
"At JustDo we make our source code available for transparency and collaboration"
Transparency: If I can see the source code, that is certainly pretty much the definition of transparency.
Collaboration: It is easier to collaborate if I can see the source, don't you think? That doesn't define the legal terms under which this collaboration happens, of course, and you should make sure they suit you before you collaborate.
> Open source software companies need to come to grips with that uncomfortable truth: their business model isn’t their community’s problem, and they should please stop trying to make it one.
are full of unjustified entitlement. And also not relevant: The companies we are talking about are not open-source companies. They are just companies. Some of them, with source-available software and/or hardware. Some of them, with open-source software and/or hardware. Some of them, with both.
> So that argument is idiotic.
Well, what's idiotic is expecting collab on a source-available project. There's a reason the community forks or uses OSS instead, as the article notes.
Those of us who have been around for a while — who came up in the era of proprietary software and saw the merciless transition to open source software — know that there’s no way to cross back over the Rubicon.
Open source software companies need to come to grips with that uncomfortable truth: their business model isn’t their community’s problem, and they should please stop trying to make it one. And while they’re at it, it would be great if they could please stop making outlandish threats about the demise of open source; they sound like shrieking proprietary software companies from the 1990s...Depends on what you understand by "collab". That can be a business partnership where actual money is exchanged. It is called capitalism, and I leave it up to you to judge how idiotic it is.
> Open source software companies need to come to grips with that uncomfortable truth
Again, I don't know many open-source software companies. I am currently using the Monaco Editor for a project, it is great open-source software, published by Microsoft. I wouldn't call Microsoft an open-source software company, though. Which is my point.
I don't think a small software company can gain much these days by making their software open-source. Just put it behind an SaaS, with a generous free tier (free as in beer) to attract users. Make (some part of) it source-available, so that people can experiment with your software and interface with it, for example for writing plugins (that would be the collab part). Think really hard about whether to actually open-source anything, and if it is worth it. When in doubt, consider AGPL.
I wouldn't be interested in collaborating with a company on their source-available software (since I'd be doing free work for their profit), but if my company were using their product, and we needed a new feature or bug fix that they weren't going to prioritize, I'd much prefer to build that feature or fix that bug myself and give it back to the company than have to maintain my own fork.
And I don't really see a problem with that. Presumably my company would be using their software because building the whole thing ourselves would be too costly. But if I need to spend a week or two augmenting it? That's fine. Cheaper for my company, and I'm getting paid to do that work.
Presumption that enterprises don't have access to / or fix bugs in proprietary closed-source software of enterprises they depend on is unfounded. iow, source-available (as a way to increase collab and be transparent) is a gimmick.
You underestimate the level of cooperation that can exist between two tech companies working on each other's proprietary code-bases (where warranted). I'd wager that those agreements won't look too different than with source-available firms.
So, to me, there's no added benefit to source-available; some of these firms want to build a FOSS-like community but also don't want to be FOSS.
I personally wouldn't use something available under a non-OSS source-available type license, but if they're able to build a business around it and are doing well, that's great.
Lots of us said this in the 1990s by the way. Even back then, the belief that many developers and businesses would reciprocate by freeing their own source or even that enough would reciprocate for FOSS to be self sustaining was clearly, ahem, unrealistic.
GPL didn't foresee SaaS becoming such a huge thing. As I understand, AGPL is a step on the way to fixing this.
Android in doesn't even accept patches from the like of you or I, and future versions are developed almost entirely in secret.
You're talking about open development and governance, which are often associated with open-source, but aren't required.
I use only open source software. Thanks for writing it.
A big part of Open Source is not knowing or caring about the intentions of the user. Wherever it may go is magical but also, potentially, terrifying.
I can't articulate it that well, but look back at the whole RSA/military grade encryption thing for references.
Even if it was strictly a donation model, I'm not sure I'd feel completely comfortable with that.
But it is the truth. Do you not like the truth?
It is not a job. Nobody asked you to do it. You do not get to be sad when nobody pats you on the head. You are owed nothing.
Thanks for the code.
You might not be getting paid, but you also aren't getting nothing.
> You are owed nothing.
You owe them exactly what is written on the license file. If you do not give them what they are owed, you do not have a right to use their software.
Even if we assume they used the most permissive license imaginable, if you used their code you are still obligated to put a copy of their name and copyright notice as well as the license conditions and warranty disclaimer somewhere in your software or product. Typically you are also prohibited from using their name in the marketing materials of your derivative work.
Your "thanks for the free code loser" attitude is why I will AGPLv3 all of my current and future projects. At least the AGPLv3 is big enough to intimidate away people who don't even read licenses.