Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The problem with "free software" definitely exists as well but the intended meaning is still a plain English meaning of the word "free" but not the first one that comes to mind. Making it easier to correct "Free as in freedom, not as in beer." than "Please read the OSI definition of what 'open source' means." or still a bit confusingly "It's actually about the licensing of the source code and not the source code itself."

I agree it is still a problem - which is why "gratis" and "libre" see use to prevent the confusion and why I prefer the term "FLOSS".



> It's actually about the licensing of the source code and not the source code itself.

This is a big misconception. The Open Source Definition requires source code, you can't have an "open source" project that just releases binaries under the BSD license for example. The OSD (and the Debian Free Software Guidelines that the OSD is based on) is about the software and its attributes, including both the source code and the license.


The big misconception you speak of is being that the requirement is met if a <compiled binary> is released under a FOSS license but that isn't at all what I said. I said the licensing of the <source code> - not of any compiled binaries - is what matters. Swapping <source code> for <compiled binary> of course entirely changes the claim being made. The freedoms afforded by FLOSS licenses necessitate the availability of the source code as a pre-requisite to being met. So one does not meet the terms of the license of the source code if users cannot study/modify it and cannot distribute modified versions of it on account of not being able to modify it due to not being able to access it. Access to the source code in FLOSS licenses is intentional but also a side effect of the freedoms already afforded. There is no 5th freedom requiring the source code to be available because it already must be available in order to meet the requirements of freedoms 2 and 4.

But I'm still entirely wrong.

I'm completely and unequivocally wrong due to two other requirements - both of which actually pertain to the source code and not its licensing. There are in fact two requirements placed upon the source code itself to be considered open source under the OSD or even as free software as the FSF defines it. (1) It may not be deliberately obfuscated. Which makes me wonder if programs written to be deliberately obfuscated are technically not allowed to be considered free-libre or open source software? Such as programs written to compete in IOCCC or if the intent here matters and it's more about releasing obfuscated versions of source code that was not already written to be obfuscated and was made obfuscated with the intent being to prevent others from studying/modifying it. That one I think is a bit of a technicality. (2) The other being that the source code, if not released with the program, must be available in a well-publicized manner at no more than a reasonable cost of distribution/reproduction (ie no charging $1,000 for access to the source code to claim it's "technically available").


You are getting close to the complexity of FLOSS, but there is slightly more to it, some further thoughts below.

> freedoms afforded by FLOSS licenses necessitate the availability of the source code

This isn't really true, security researchers, reverse engineers and piracy experts often do the equivalent of the FSF four freedoms without having the source code. Of course not having the source code makes it harder for people without those skills and without the often costly proprietary tools that enable this work.

It is possible as a technically skilled person to write a binary in machine code, without any assembly or "source code" or other primary format. When an FLOSS license is applied to that binary, it should be considered Free Software. An example of this is the hex0 binary of the stage0 project, which is the first piece of code run by the Bootstrappable Builds project, which aims to build an entire Linux distro starting with only the ~512bytes of machine code in hex0 plus all the necessary source code.

https://savannah.nongnu.org/projects/stage0/ https://github.com/oriansj/stage0 https://ekaitz.elenq.tech/hex0.html https://bootstrappable.org/ https://github.com/fosslinux/live-bootstrap/blob/master/part...

> Which makes me wonder if programs written to be deliberately obfuscated are technically not allowed to be considered free-libre or open source software?

Debian definitely rejects such software, I assume the FSF/OSI would too, although they mostly concern themselves with licenses rather than actual software projects. In the past at least 3 times in different FSF/GNU projects, the FSF/GNU project has caused downstream GPL violations due to releases that were missing source code. Even minified JS without the original JS is not considered DFSG-free by Debian, even though it is extremely common these days. Debian applies this rule to all digital files, no matter whether they are programs or fonts or images or videos or other things. Some articles related to this topic:

http://www.inventati.org/frx/essays/softfrdm/whatissource.ht... https://b.mtjm.eu/source-code-data-fonts-free-distros.html https://wiki.freedesktop.org/www/Games/Upstream/#source http://compliance.guide/pristine

> programs written to compete in IOCCC

The main thing about source code is that downstream users be afforded equality of access to a work as the original author of a work. So if you can write an obfuscated program and realistically modify it yourself without hiding the real source code from users, then that is considered fine from the source code point of view. Of course it is a terrible way to write a program and should get modified to de-obfuscate everything, so more people can understand the code.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: