7 ms·
Interesting. This is the first project I can think of where a clean-room implementation was done so that a project could use a less free license ("free" as defi
by AdmiralAsshat 8y ago
Interesting. This is the first project I can think of where a clean-room implementation was done so that a project could use a less free license ("free" as defined by the FSF).
Does anyone else know of instances where a company did a clean-room implementation of a previously FOSS tool so that they could make a paid/proprietary version? Usually it goes the other way.
- protomyth 8y agoHow is the ISC (version of BSD license used by OpenBSD) less free than the GPL3? This is very far from a "paid/proprietary" version.
- mouldysammich 8y agoIts much closer to a proprietary version than a GPL version would or could be however.
- kevin_thibedeau 8y agoProprietary-friendly is not less-free.
- StavrosK 8y agoHow not?
- GalacticDomin8r 8y agoBecause you are actually free to do what you want with it, instead of free to do what someone else wants you to do with it.
- StavrosK 8y agoYes, you are free to close it up and sell it, but everyone else then isn't free to use your changes. "More friendly to proprietary purposes" is "less free". It's kind of like arguing that a country where anyone can steal from anyone else with impunity is more free. Not when you consider the rights of the person being stolen from.
- derefr 8y agoJust because some forks of a project aren’t free, doesn’t mean that the project itself isn’t free. Especially if the project, like much of the e.g. MIT-licensed code in the world, is “done” for all intents and purposes and there is no reason at all to fork, proprietary or otherwise. (This comes up in the context of pure algorithms code a lot.) Also, even if a project is copylefted, people can still just do... exactly what they did here. Which, while different in the weak sense of “avoiding copyright” or maybe “avoiding patents”, in the context of systems code like this almost always results in the same code on both sides anyway. If the choice is between either giving the proprietary developers your code to use, or making them re-implement exactly what you wrote without your copy for reference—with no option for “they don’t implement it at all”—then exactly what is the point of choosing the latter over the former?
- StavrosK 8y ago> Just because some forks of a project aren’t free, doesn’t mean that the project itself isn’t free We aren't talking about non-free, we're talking about less-free. > Just because some forks of a project aren’t free, doesn’t mean that the project itself isn’t free No. The fact that there can be forks of the project that aren't open is what means that the project itself is less free than a project where all forks must be open. > Especially if the project, like much of the e.g. MIT-licensed code in the world, is “done” I don't consider this relevant to the argument at hand. > then exactly what is the point of choosing the latter over the former? Are you asking me what the point is of making something you don't want people to do hard for them vs making it easy?
- adamrt 8y agoThat's not a good analogy. In this case, people aren't being stolen from, they are freely giving it away for someone else to do as they wish. Additionally, "theft" as you put it, in this case, doesn't affect the original property owner.
- chriscappuccio 8y agoYou have the freedom to create your own proprietary derivative, a freedom you lose with the GPL version of rsync.
- anjbe 8y agoI want my code to be usable by anyone developing free software of their own. I want them to be able to integrate it, modify it, redistribute their modified copies, and more. The GPL, being long and complicated (over 5000 words, and that’s just the GPLv3!), and with the ideological restrictions built in, is incompatible with many widely used free licenses, not least previous versions of itself. In any situation where social or legal barriers prevent the target audience from switching to the specific version of the GPL in question, any code I release under it is unusable to them. Releasing my software under a simple, understandable, and permissive free license prevents this from ever happening. I dislike proprietary software. I don’t use it or create it, and advocate against it wherever I can. But given the choice between letting some Chinese featurephone developer use my code without “giving back,” and preventing swaths of the free software community I care about from using and improving my code for themselves, I will favor permissiveness every time.
- jimktrains2 8y agoI think gp means that this code is allowed to be used in products that choose to limit the end users freedoms. (I don't mean that as a plus or negative, but as just a statement on one of the largest philosophical differences between the bsd-style and gpl licenses: Who's freedoms are being protected? Those of the final end user or those of the developer?)
- meruru 8y agoUsing "less free" or "more free" in this context just leads to pointless semantic debates. What happened is that someone made a clean-room implementation of a copyleft program in order to have it available under a copyfree license. Both licenses are Free. http://copyfree.org/policy/copyleft http://copyfree.org/policy/copyleft
- TeMPOraL 8y agoFirst time I see this, thanks. The website isn't explicit about this point, but from what I gather, "copyfree" isn't viral in the way GPL is. It seems to provide "Free as in Freedom", but unlike GPL, doesn't protect that freedom from being immediately taken away.
- demoray 8y agoWSL. The implementation, lxcore.sys, is a clean room implementation of the Linux kernel ABI.
- wmf 8y agoBoth the ASF and FSF have a variety of NIHed projects that appear to exist purely for license ideology reasons. The most famous that comes to mind is Apache Geronimo, a clone of JBoss that few people used but was bought by IBM for ~$120M IIRC.
- joshklein 8y agoISC is a more free license for its users. GPL protects theoretical future users of theoretical derivative software by restricting freedom for its users. It's important to remember that GNU is Not Unix, but OpenBSD userland is much more so. There isn't much reason to protect future forks if you expect that future software should start from first principles instead of extending software until it becomes a monolith that must be protected from its own developers.
- m463 8y agoThat is not precisely accurate. The GPL does not place any restrictions on how software is used, so the (literal) users are not restricted. It restricts how it is redistributed.
- joshklein 8y agoApologies, I intended "user" in my comment to mean "a developer using the license". Thank you for clarifying.
- e12e 8y agoThis is the core difference between gnu and bsd - guaranteeing freedom for all current and future users VS all current and future distributors (in particular, the bsd guarantees the right to fork and close - often seen as essential for commercial use in a new software or software+hardware appliance; while gnu attempts to guarantee that any downstream user will always have the four freedoms).
- TeMPOraL 8y agoIt's so easy to forget that at the very end, there are people who are using software. Developers are middlemen for most code in the products they build (think dependencies). GPL cuts through that, and always has the end-user in mind.
- meruru 8y agoThe BSDs have a strong preference for copyfree licenses. They tolerate copyleft programs, but try to switch to copyfree when possible. See for instance GCC -> Clang/LLVM.
- int_19h 8y agoOn a very high level, LLVM/Clang happened because Apple needed a clean-room implementation of GCC.
- yjftsjthsd-h 8y agoOf gcc, or "a C compiler (with extensions as seen in the wild)"?
- int_19h 8y agoWell, Clang implemented gcc extensions long before it went for MSVC ones...
- bsder 8y agoAnd because the gcc code was an impenetrable mess--intentionally so in order to prevent people from making a non-GPL alternative.
- mindslight 8y agohttps://en.wikipedia.org/wiki/Bionic_(software) https://en.wikipedia.org/wiki/Bionic_(software) (You know, since we're tossing grenades)