| ▲ | jbstack 8 hours ago |
| There's nothing wrong at all with charging for your product. What I do take issue with, however, is convincing everyone that your product is FOSS, waiting until people undertake a lot of work to integrate your product into their infrastructure, and then doing a bait-and-switch. Just be honest since the start that your product will eventually abandon its FOSS licence. Then people can make an informed decision. Or, if you haven't done that, do the right thing and continue to stand by what you originally promised. |
|
| ▲ | Someone 5 hours ago | parent | next [-] |
| > What I do take issue with, however, is convincing everyone that your product is FOSS, waiting until people undertake a lot of work to integrate your product into their infrastructure, and then doing a bait-and-switch. But FOSS means “this particular set of source files is free to use and modify”. It doesn’t include “and we will forever keep developing and maintaining it forever for free”. It’s only different if people, in addition to the FOSS license, promise any further updates will be under the same license and then change course. And yes, there is a gray area where such a promise is sort-of implied, but even then, what do you prefer, the developers abandoning the project, or at least having the option of a paid-for version? |
| |
| ▲ | ufocia 3 hours ago | parent [-] | | > what do you prefer, the developers abandoning the project, or at least having the option of a paid-for version? It's not a binary choice. I prefer the developers releasing the software under a permissive license. I agree that relying on freemium maintenance is naive. The community source lives on, perhaps the community should fork and run with it for the common good absorbing the real costs of maintenance. |
|
|
| ▲ | puszczyk 7 hours ago | parent | prev | next [-] |
| > Just be honest since the start While I agree with the sentiment, keep in mind that circumstances change over the years. What made sense (and what you've believed in) a few years ago may be different now. This is especially true when it comes to business models. |
| |
| ▲ | hirako2000 6 hours ago | parent [-] | | When your product entered mainstream with integration that would yield millions when virtually obliged to get a license is typically what happens. When backed by a company there is an ethical obligation to keep, at least maintenance. Of course legally they can do what they wish. It isn't unfair to call it bad practice. | | |
| ▲ | skeledrew 5 hours ago | parent | next [-] | | There's no way that maintaining something is an ethical obligation, regardless of popularity. There is only legal obligation, for commercial products. | | |
| ▲ | hirako2000 3 hours ago | parent [-] | | If offering a tie in thing supposedly free of charge without warning that would end once it serves a party less profit purpose then yes. Ethics are not obligations, they are moral principles. Not having principles doesn't send you to prison that is why it isn't law. It makes you lose moral credit though. | | |
| ▲ | kube-system an hour ago | parent | next [-] | | That is ridiculous. If you buy a sandwich for a homeless person, you do not need to warn them that you won't give them another one tomorrow. If you think generosity is an obligation of slavery, you have your morals backwards. However, almost every open source license actually DOES warn that support may end. See the warranty clause. https://github.com/minio/minio/blob/master/LICENSE#L587 | |
| ▲ | acdha 2 hours ago | parent | prev | next [-] | | > If offering a tie in thing supposedly free of charge without warning that would end once it serves a party less profit purpose then yes Claiming that you’re entitled to free R&D forever because someone once gave you something of value seems like a great way to ensure that nobody does that again. You got over a decade of development by a skilled team, it’s not exactly beyond the pale that the business climate has changed since then. | |
| ▲ | PKop 20 minutes ago | parent | prev [-] | | Those might be your moral principles, but others reject this nonsense of an obligation to perpetual free labor you think you're entitled to, and don't grant you this moral high ground you assume you have. |
|
| |
| ▲ | rofrol 5 hours ago | parent | prev | next [-] | | There is no ethical obligation. You just want them to release new work under open source licence. | | | |
| ▲ | antonvs 2 hours ago | parent | prev [-] | | > When backed by a company there is an ethical obligation to keep, at least maintenance. You're saying that a commercial company has an ethical obligation to do work for you in future, for free? That doesn't follow from any workable ethical system. |
|
|
|
| ▲ | devsda 6 hours ago | parent | prev | next [-] |
| Everyone is quick to assert rights granted by the license terms and fast to say the authors should have chosen a better license from the start in case the license doesnt fit the current situation. License terms don't end there. There is a no warranty clause too in almost every open source license and it is as important as the other parts of the license. There is no promise or guarantees for updates or future versions. |
| |
| ▲ | direwolf20 6 hours ago | parent [-] | | They're not saying they violated the license, they're saying they're assholes. It may not be illegal to say you'll do something for free and then not do it, but it's assholish, especially if you said it to gain customers. | | |
| ▲ | kube-system 2 hours ago | parent | next [-] | | Continued updates is not and never has been a part of FOSS, either implicitly or explicitly, you simply have a misconception. FOSS allows you to change the software. That's what it has always meant. | |
| ▲ | rofrol 5 hours ago | parent | prev | next [-] | | They gave code for free, under open source, but you call them assholes if they do not release more code for free. So who is the asshole here? You or them? | |
| ▲ | skeledrew 5 hours ago | parent | prev | next [-] | | There's no broken promise though. It's the users who decide+assume, on their own going in, that X project is good for their needs and they'll have access to future versions in a way they're comfortable with. The developers just go along with the decision+assumption, and may choose to break it at any point. They'd only be assholes if they'd explicitly promised the project would unconditionally remain Y for perpetuity, which is a bs promise nobody should listen to, cuz life. | |
| ▲ | rpdillon an hour ago | parent | prev | next [-] | | I'm noticing this argument a lot these days, and I think it stems from something I can't define - "soft" vs. "hard" or maybe "high-trust" vs "low-trust". I always warned people that if they "buy" digital things (music, movies) it's only a license, and can be taken away. And people intellectually understand that, but don't think it'll really happen. And then years go by, and it does, and then there's outrage when Amazon changes Roald Dahl's books, or they snatch 1984 right off your kindle after you bought it. So there's a gap between what is "allowed" and what is "expected". I find this everywhere in polite society. Was just talking to a new engineer on my team, and he had merged some PRs, but ignored comments from reviewers. And I asked him about that, and he said "Well, they didn't block the PR with Request Changes, so I'm free to merge." So I explained that folks won't necessarily block the PR, even though they expect a response to their questions. Yes, you are allowed to merge the PR, but you'll still want to engage with the review comments. I view open source the same way. When a company offers open source code to the community, releasing updates regularly, they are indeed allowed to just stop doing that. It's not illegal, and no one is entitled to more effort from them. But at the same time, they would be expected to engage responsibly with the community, knowing that other companies and individuals have integrated their offering, and would be left stranded. I think that's the sentiment here: you're stranding your users, and you know it. Good companies provide a nice offramp when this happens. | |
| ▲ | devsda 5 hours ago | parent | prev | next [-] | | > say you'll do something for free I think this is where the problem/misunderstanding is. There's no "I will do/release" in OSS unless promised explicitly. Every single release/version is "I released this version. You are free to use it". There is no implied promise for future versions. Released software is not clawed back. Everyone is free to modify(per license) and/or use the released versions as long as they please. | |
| ▲ | ufocia 3 hours ago | parent | prev | next [-] | | Customers are the ones that continue to pay. If they continue to pay they will likely receive maintenance from the devs. If they don't, they are no longer or never have been customers. | | |
| ▲ | ranger_danger 3 hours ago | parent [-] | | It would be interesting to see if there could be a sustainable OSS model where customers are required to pay for the product, and that was the only way to get support for it as well. Even if the source was always provided (and even if it were GPL), any bug reports/support requests etc. would be limited to paying customers. I realize there is already a similar model where the product/source itself is always free and then they have a company behind it that charges for support... but in those cases they are almost always providing support/accepting bug reports for free as well. And maybe having the customer pay to receive the product itself in the first place, might motivate the developers to help more than if they were just paying for a support plan or something. | | |
| |
| ▲ | knowitnone3 an hour ago | parent | prev [-] | | [dead] |
|
|
|
| ▲ | j1elo 4 hours ago | parent | prev | next [-] |
| The only meaningful informed decision, but sadly much less known (and I think we should talk and insist more on it), is to be wary if you see a CLA. Not all do, but most perform Copyright Assignment, and that's detrimental to the long-term robustness of Open Source. Having a FOSS license is NOT enough. Idealy the copyright should be distributed across all contributors. That's the only way to make overall consensus a required step before relicensing (except for reimplementation). Pick FOSS projects without CLAs that perform Copyright Assignment to an untrusted entity (few exceptions apply, e.g. the FSF in the past) |
| |
| ▲ | baq 44 minutes ago | parent [-] | | Bad advice. You should be wary always. CLA or not, nothing guarantees that the project you depend on will receive updates, not even if you pay for them and the project is 100% closed source. What you’re suggesting is perpetuating the myth that open source means updates available forever for free. This is not and never has been the case. |
|
|
| ▲ | hiAndrewQuinn 8 hours ago | parent | prev | next [-] |
| >Just be honest since the start that your product will eventually abandon its FOSS licence. Then people can make an informed decision. "An informed decision" is not a black or white category, and it definitely isn't when we're talking about risk pricing for B2B services and goods, like what MinIO largely was for those who paid. Any business with financial modelling worth their salt knows that very few things which are good and free today will stay that way tomorrow. The leadership of a firm you transact with may or may not state this in words, but there are many other ways to infer the likelihood of this covertly by paying close attention. And, if you're not paying close attention, it's probably just not that important to your own product. What risks you consider worth tailing are a direct extension of how you view the world. The primary selling point of MinIO for many businesses was, "it's cheaper than AWS for our needs". That's probably still true for many businesses and so there's money to be made at least in the short term. |
| |
| ▲ | berkes 7 hours ago | parent [-] | | "Informed decisions" mean you need to have the information. Like with software development, we often lack the information on which we have to decide architectural, technical or business decisions. The common solution for that is to embrace this. Defer decisions. Make changing easy once you do receive the information. And build "getting information" into the fabric. We call this "Agile", "Lean", "data driven" and so on. I think this applies here too. Very big chance that MinIO team honestly thought that they'd keep it open source but only now gathered enough "information" to make this "informed decision". |
|
|
| ▲ | timcobb 4 hours ago | parent | prev | next [-] |
| > Just be honest since the start that your product will eventually abandon its FOSS licence. How does this look? How does one "just" do this? What if the whole thing was an evolution over time? |
|
| ▲ | vladms 8 hours ago | parent | prev | next [-] |
| Isn't this the normal sales anyhow for many products? One attracts a customer with unreasonable promises and features, makes him sign a deal to integrate, then issues appear once in production that make you realize you will need to invest more. When you start something (startup, FOSS project, damn even marriage) you might start with the best intentions and then you can learn/change/loose interest. I find it unreasonable to "demand" clarity "at the start" because there is no such thing. Turning it around, any company that adopts a FOSS project should be honest and pay for something if it does not accept the idea that at some point the project will change course (which obviously, does not guarantee much, because even if you pay for something they can decide to shut it down). |
| |
| ▲ | praptak 7 hours ago | parent [-] | | > I find it unreasonable to "demand" clarity "at the start" because there is no such thing. Obviously you cannot "demand" stuff but you can do your due dilligence as the person who chooses a technical solution. Some projects have more clarity than others, for example the Linux foundation or CNCF are basically companies sharing costs for stuff they all benefit from like Linux or Prometheus monitoring and it is highly unlikely they'd do a rug pull. On the other end of the spectrum there are companies with a "free" version of a paid product and the incentive to make the free product crappier so that people pay for the paid version. These should be avoided. |
|
|
| ▲ | kube-system an hour ago | parent | prev | next [-] |
| Almost every FOSS license has a warranty disclaimer. You should have always been taking them seriously. They are there for a reason. |
| |
|
| ▲ | mactavish88 4 hours ago | parent | prev | next [-] |
| I hear this perspective a lot in relation to open source projects. What it fails to recognize is the reality that life changes. Shit happens. There's no way to predict the future when you start out building an open source project. (Coming from having contributed to and run several open source projects myself) |
|
| ▲ | qudat 4 hours ago | parent | prev | next [-] |
| At this point I don’t trust any company that offers a core free tool with an upsell. Trials or limited access is one thing, but a free forever product that needs active maintaining, be skeptical. It’s been tough for us at https://pico.sh trying to figure out the right balance between free and paid and our north star is: how much does it cost us to maintain and support? If the answer scales with the number of users we have then we charge for it. We also have a litmus test for abuse: can someone abuse the service? We are putting it behind a paywall. |
|
| ▲ | StopDisinfo910 7 hours ago | parent | prev | next [-] |
| > then doing a bait-and-switch FOSS is not a moral contract. People working for free owe nothing to no one. You got what's on the tin - the code is as open source once they stop as when they started. The underlying assumption of your message is that you are somehow entitled to their continued labour which is absolutely not the case. |
| |
| ▲ | rpdillon an hour ago | parent | next [-] | | Everyone is keying on forced free labor, but that's not really the proposed solution when an open-source project ends. The fact that it ends is a given, the question then is what to do about all the users. Providing an offramp (migration tools that move to another solution that's similar, or even just suggested other solutions, even including your own commercial offering) before closing up shop seems like a decent thing to do. | |
| ▲ | growse 7 hours ago | parent | prev | next [-] | | It's a social contract, which for many people is a moral contract. | | |
| ▲ | PKop 15 minutes ago | parent | next [-] | | Expectations are maybe fine maybe not, but it's funny that people can slap the word moral onto their expectation of others being obligated to do free work for them, and it's supposed to make them be the good guys here. Why do you presume to think your definition of morals is shared by everyone? Why is entitlement to others labor the moral position, instead of the immoral position? | |
| ▲ | kube-system an hour ago | parent | prev | next [-] | | No, social contracts require some sort of mutual benefit. | |
| ▲ | 627467 6 hours ago | parent | prev | next [-] | | Show me a FOSS license where a commitment to indefinite maintenance is promised. | | |
| ▲ | account42 5 hours ago | parent [-] | | Social contracts are typically unwritten so the license would be the wrong place to look for it. | | |
| ▲ | PKop 11 minutes ago | parent | next [-] | | > Social contracts are typically unwritten Maybe this is the case, but why is your presumption of entitlement to free labor of others the assumed social contract, the assumed "moral" position, rather than the immoral one? Why is the assumed social contract that is unwritten not that you can have the free labor we've released to you so far, but we owe you nothing in the future? There's too much assumption of the premise that "moral" and "social contract" are terms that make the entitled demands of free-loaders the good guys in this debate. Maybe the better "morality" is the selfless workers giving away the product of their labor for free are the actual good guys. | |
| ▲ | skeledrew 4 hours ago | parent | prev [-] | | If it's neither written nor explicitly spoken, then it's not a contract of any kind. It's just an - usually naive - expectation. | | |
| ▲ | account42 4 hours ago | parent | next [-] | | A social contract isn't a legal contract to begin with, but even for those "written or explicitly spoken" is not a hard requirement. | | |
| ▲ | skeledrew an hour ago | parent [-] | | A social contract still has to be explicit in some way to be considered such. Otherwise it's just an accepted convention. |
| |
| ▲ | dbacar 3 hours ago | parent | prev [-] | | It was not expectation when they started, did a lot to lure many into the ecosystem. When you release it free, wait for the momentum to build, then you cut off, it is something else. And the worse is they did it in a very short time. Check out elasticsearch, the same route but did not abandon the 7 release like this. | | |
| ▲ | skeledrew an hour ago | parent [-] | | I know all about ElasticSearch, MongoDB, Redis, etc. Yes, what they did sucks. No, it doesn't make the maintainers bad or anything. It's still on the user to know that anything can happen to that spiffy project they've been using for a while, and so be prepared to migrate at any time. |
|
|
|
| |
| ▲ | StopDisinfo910 7 hours ago | parent | prev [-] | | Where is this mythical social contract found? I stand by my point: it's a software license, not a marriage. Free users certainly would like it to be a social contract like I would like to be gifted a million dollars. Sadly, I still have to work and can't infinitely rely on the generosity of others. | | |
| ▲ | growse 4 hours ago | parent | next [-] | | The social contract is found (and implicitly negotiated) in the interactions between humans, ie: society. | | |
| ▲ | antonvs an hour ago | parent [-] | | Sounds like you've misunderstood this particular social contract. Luckily several people in this thread have corrected you. |
| |
| ▲ | account42 5 hours ago | parent | prev [-] | | Where is the contract to return the shopping cart to the corral? | | |
| ▲ | bee_rider 3 hours ago | parent | next [-] | | I always preferred people who didn’t, when I worked in retail. It generates a nice chill task (wander around the parking lot looking for carts). But if you want to do a favor for the faceless retailer, go for it. Mostly I chuck my cart in the corral to get it out of my way, but this sees more like a morally-neutral action to me. | |
| ▲ | StopDisinfo910 5 hours ago | parent | prev | next [-] | | Your analogy doesn't make sense. You are getting benefits from using the shopping cart and you bring back as it's expected as part of the exchange. You bring the cart back to where you took which is a low effort commitment entirely proportional to what you got from it. Free software developers are gifting you something. Expecting indefinite free work is not mutual respect. That's entitlement. The common is still there. You have the code. Open source is not a perpetual service agreement. It is not indentured servitude to the community. Stop trying to guilt trip people into giving you free work. | | |
| ▲ | thayne an hour ago | parent [-] | | MinIO accepted contributions from people outside the company who did work on it for free, usually because they expected that minio would keep the software open source. | | |
| |
| ▲ | imtringued 3 hours ago | parent | prev [-] | | In this context the social contract would be an expectation that specifically software developers must return the shopping cart for you, but you would never expect the same from cashiers, construction workers, etc. If the software developer doesn't return your cart, he betrayed the social contract. This sounds very manipulative and narcissistic. |
|
|
| |
| ▲ | PunchyHamster 7 hours ago | parent | prev | next [-] | | it's still a bait and switch, considering they started removing features before the abandonment. | | |
| ▲ | Ekaros 7 hours ago | parent [-] | | Users can fork it from point they started removing features. Fully inside social, moral and spiritual contract of open source. |
| |
| ▲ | dangus 5 hours ago | parent | prev [-] | | This isn’t about people working for free. Nobody sensible is upset when a true FOSS “working for free” person hangs up their boots and calls it quits. The issue here is that these are commercial products that abuse the FOSS ideals to run a bait and switch. They look like they are open source in their growth phase then they rug pull when people start to depend on their underlying technology. The company still exists and still makes money, but they stopped supporting their open source variant to try and push more people to pay, or they changed licenses to be more restrictive. It has happened over and over, just look at Progress Chef, MongoDB, ElasticSearch, Redis, Terraform, etc. | | |
| ▲ | skeledrew 4 hours ago | parent | next [-] | | In this particular case, it's the fault of the "abused" for even seeing themselves as such in the first place. Many times it's not even a "bait-and-switch", but reality hitting. But even if it was, just deal with it and move on. | | |
| ▲ | ghywertelling 3 hours ago | parent | next [-] | | Make hay while the sun shines. Be glad that the project happened. | |
| ▲ | imtringued 3 hours ago | parent | prev [-] | | This is definitely the case because the accusations and supposed social contract seem extremely one-sided towards free riding. Nobody here is saying they should donate the last version of MinIO to the Apache software foundation under the Apache license. Nobody is arguing for a formalized "end of life" exit strategy for company oriented open source software or implying that such a strategy was promised and then betrayed. The demand is always "keep doing work for me for free". |
| |
| ▲ | nubinetwork 5 hours ago | parent | prev [-] | | > bait and switch Is it really though? They're replacing one product with another, and the replacement comes with a free version. |
|
|
|
| ▲ | jillesvangurp 7 hours ago | parent | prev | next [-] |
| It's part of the due diligence process for users to decide if they can trust a project. I use a few simple heuristics: - Evaluate who contributes regularly to a project. The more diverse this group is, the better. If it's a handful of individuals from 1 company, see other points. This doesn't have to be a show stopper. If it's a bit niche and only a handful of people contribute, you might want to think about what happens when these people stop doing that (like is happening here). - Look at required contributor agreements and license. A serious red flag here is if a single company can effectively decide to change the license at any point they want to. Major projects like Terraform, Redis, Elasticsearch (repeatedly), etc. have exercised that option. It can be very disruptive when that happens. - Evaluate the license allows you do what you need to do. Licenses like the AGPLv3 (which min.io used here) can be problematic on that front and comes with restrictions that corporate legal departments generally don't like. In the end choosing to use software is a business decision you take. Just make sure you understand what you are getting into and that this is OK with your company and compatible with business goals. - Permissive licenses (MIT, BSD, Apache, etc.) are popular with larger companies and widely used on Github. They facilitate a neutral ground for competitors to collaborate. One aspect you should be aware off is that the very feature that makes them popular also means that contributors can take the software and create modifications under a different license. They generally can't re-license existing software or retroactively. But companies like Elasticsearch have switched from Apache 2.0 to closed source, and recently to AGPLv3. Opensearch remains Apache 2.0 and has a thriving community at this point. - Look at the wider community behind a project. Who runs it; how professional are they (e.g. a foundation), etc. How likely would it be to survive something happening to the main company behind a thing? Companies tend to be less resilient than the open source projects they create over time. They fail, are subject to mergers and acquisitions, can end up in the hands of hedge funds, or big consulting companies like IBM. Many decades old OSS projects have survived multiple such events. Which makes them very safe bets. None of these points have to be decisive. If you really like a company, you might be willing to overlook their less than ideal licensing or other potential red flags. And some things are not that critical if you have to replace them. This is about assessing risk and balancing the tradeoff of value against that. Forks are always an option when bad things happen to projects. But that only works if there's a strong community capable of supporting such a fork and a license that makes that practical. The devil is in the details. When Redis announced their license change, the creation of Valkey was a foregone conclusion. There was just no way that wasn't going to happen. I think it only took a few months for the community to get organized around that. That's a good example of a good community. |
|
| ▲ | yread 5 hours ago | parent | prev | next [-] |
| Easy. If you see open source software maintained by a company, assume they will make it closed source or enshittify the free version. If it's maintained by an individual assume he will get bored with it. Plan accordingly. It may not happen and then you'll be pleasantly surprised |
|
| ▲ | adamcrow64 7 hours ago | parent | prev [-] |
| exactly |