Comment Re:Gosh!!! (Score 4, Insightful) 318
If you did, you'd see that he has a perfectly valid point about how the effect of non-Free licenses, combined with minified (and therefore effectively unreadable) code
No. Free Software wants JavaScript to be readable, and understandable. This is a valid point, regardless of the language and the availability of the source code.
We cannot make readable C from a decompilation, mostly because of different compilers and different optimization levels. We can decompile Java and C#/VB.NET because there is one and only one VM or IL definition.
JavaScript minification is only about renaming variables. I can tell you there is only one thing in the way of understanding JavaScript minification. Two, if you include a generic text editor's lack of "replace word only" functionality.
You have to read the de-minified version, just like any other code. You have to read, or if your language is not the same as the author's, translate, the variable names, just like the original source code.
JavaScript as it runs in your browser is exactly the same as it runs interpreted, compiled, or in any other fashion. You have the freedom to block it, you have the freedom to modify it (GreaseMonky is just one of many), you have the freedom to read it, save it, or do whatever else you want. If it executes on your machine, I think the FSF would support any measure of scrutiny you wish to apply before, during, or after executing.
I have read "free" software source code, and found it no more intelligible than minified JavaScript. Some no more readable than a disassembly.
If you are going to object to minified JS, you also have to object to any code which is difficult to comprehend, and then you place a subjective quality on what is truly free. Firefox, to me, is no longer free software. I debugged just the installer for a bug report on ReactOS, and found piles of code which was misleading, in the most complimentary term. I offered to make a change to Doom, which took me 3 times as long as I thought, and ultimately failed to achieve, because the seemingly readable code was slightly obfuscated by the build process.
Either source code is enough, or it has to be readable. If we say readable, we have to define the least common denominator who should be able to read it. If we do that, it becomes a subjective criterion, and probably a moving target.
So here we are, at a crossroads. If a project produces the source code needed to build a complete, binary-perfect copy of their executable(s), but it was run through the C pre-processor, or C++ pre-processor, is that enough? It compiles, it builds with the version of tools the provider used... if you discount the pre-processor, it is effectively the original source code provided to the compiler. Is that enough?
JavaScript is what is provided to the interpreter - minified or not. Is that enough?
I say it is, and I disagree 100% with the FSF on this point. Named variables are nice, but they can be interpreted by the usage, if you are going to read the code.
If you are going to take an ideological stance and say "I don't understand this, therefore it is not enough", you are going to have to establish an objective baseline. I can understand optimized assembly, and some pure hex - is that free enough?
This is the opinion of someone who believes that source is provided for everything that executes, or is interpreted. Surely to fuck if you wrote a compiler, you can understand this. If you wrote an interpreter it is easier to understand.
If you don't understand anything else, think of JavaScript like Spanish. Lots of people understand it, most people don't. In this case, you don't. You are provided all instructions in Spanish. Is it more difficult to understand the instructions if given in Spanish? Of course. But I don't see the objection. Especially if you allow C programs written with Spanish, or French, or any other foreign language to be classified as free.
Let us support the FSF in making all software English only. Or we could just say GFY.