4 ms·
> It sounds to me like you have a problem with the virality component of OSS and SAMS, as you describe it, is just OSS without that. You did misunderstand, and
by gavinhoward 3y ago
> It sounds to me like you have a problem with the virality component of OSS and SAMS, as you describe it, is just OSS without that.
You did misunderstand, and I apologize for that.
The one quote I put in about not liking virality was an admission that I used to not like virality for bad reasons. My opinion has changed, which is why I have a note near the end that copyleft is a good thing, that it should be the default, even for SAMS. Especially for SAMS, really.
The difference between SAMS and FOSS is that FOSS gives an advantage to cannibals, and non-FOSS SAMS takes that advantage away from the cannibals.
For the end user, nothing should change between SAMS and FOSS (if my definition is right), and that is probably where your confusion comes from.
- JohnFen 3y agoI've reread the piece a few times now, and I'm still muddy on what you mean. This is likely the fault of my foggy brain, not a fault of your writing. But since I have your ear, can I ask a question? From a licensing point of view, what actually is the difference between FOSS and SAMS?
- gavinhoward 3y agoYes, of course you may ask! > From a licensing point of view This is pretty broad, actually, which is why I broke it down into roles that people might have in the post. Instead of talking about generic roles, I'll give a concrete example and include the types of ways people might approach it. Sorry for the long post. I'm building a GitHub-in-a-box VCS called Yar; it will be a VCS, but it will also include an issue tracker, a wiki, a forum, and ways to host it for others. Think something like the Fossil VCS meets GitLab. Let's say it's done, and I have licensed it under a noncommercial SAMS license. You find my VCS, and you're curious. You start as an end user, downloading the source, building it, making a test repo, and generally just experimenting. The license encourages you to do this. It turns out that you love Yar! (This is probably the most unlikely part of the story, lol.) You find out how to convert your Git repos to Yar repos, do the conversion, and you're still happy. So you decide that all your development will be in Yar. Unfortunately, you now need to have somewhere to host the server part of Yar so that your code is accessible over the Internet. As the author, I provide hosting, which is free for SAMS projects but paid for proprietary. Because you have proprietary code, you would have to pay. However, you know from your experimentation that Yar is easy to use, so you experiment again and see how easy it is to set up an instance on the server where your website. Turns out, it's easy! You don't even need root! So now you have code hosting for free. Under the license, this is entirely allowed! And encouraged. You are an end user still. It doesn't matter that your use of it is for commercial code; you are not providing Yar for others' use. Let's say that you are not quite happy with Yar's CI/CD because it doesn't use YAML, and you absolutely must have YAML. So you modify the code to translate YAML into what Yar understands, and Yar now can use YAML as an option. There's another end user, Eric, who is like you; he loves Yar but wants YAML. You give him a free copy of your modified Yar source for him to use elsewhere and even host himself. This is allowed and encouraged. Now, say we have another user, Cameron, who has proprietary code too. He happens to be a customer of your proprietary code. He uses Yar too, but he doesn't like my prices. He asks if he can host his proprietary code on your Yar instance. This is the moment you could become a dealer and break Yar's license. It doesn't matter if Cameron pays you or not; you will have "redistributed" (loosely) the code to him by providing the service. Well, let's say you ask me if you can, and I tell you this. I also tell you that I'll let you have a different license for a fee that would allow you to host Cameron's code. Let's say you decide to pay the fee if I let you have paying customers. We haggle, come to an agreement. (I want users to have hosting choice too!) So you can host Cameron's code, and you can now do it with or without pay. Can you still distribute your YAML modifications to other end users without pay? Yes! Can you provide your instance for pay to other end users, even the YAML modifications? Yes, because you paid for a license that included that! Would you have been able to provide your instance for pay, with or without the modifications, if you didn't pay? No, you would not. In essence, when you are acting as an end user, you can share, modify, and share modifications. You can host it for yourself. One thing you cannot do is provide it as a service to others. You also can't make them pay for your modifications because that's commercial too. I hope that clarifies.
- JohnFen 3y agoI still don't understand, I'm afraid. What I'm confused about is what the tangible difference between OSS and SAMS is. It seems to me that everything in your example could be done with an appropriate OSS license. What is the unique thing that SAMS is bringing into play? Is it just another OSS license variant? If so, that would be the answer to my question. :)
- gavinhoward 3y agoI apologize. The tangible difference is the "noncommercial" part, where if you offer your instance for pay, that would be violating the license. The Open Source Definition includes this: > The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research. (Emphasis added.) People interpret that as meaning that Open Source cannot restrict a business from using it for any purpose, including making money. This also comes from Freedom 0 of the Four Freedoms, where the software may be used "for any purpose." So if I put out a license that only allows noncommercial use, people say (and probably rightly) that it is not an Open Source license. SAMS is different from FOSS because it accepts a noncommercial license under its umbrella when FOSS does not.
- JohnFen 3y agoAhh, so SAMS is the software equivalent to the CC-NC license. Got it, thanks!