Is it important when I buy a wooden table that I'm given full details of how it was made, how the pieces fit together, what glue was used, what size router bits, etc?
Is it important when I buy a wooden table that I'm given full details of how it was made, how the pieces fit together, what glue was used, what size router bits, etc?
Now the species of the tree your table's wood was taken confers it with quite distinct qualities and, some would dare to say, "personality". The particular process used to assemble it may or may not imbue it with additional properties by performing (potentially nefarious) rituals. Ditto for the different substances that may be used as glue. The router bits may have magic properties themselves, even if the table is otherwise ordinarily Muggle-made.
The problem is not that all this could happen. The problem is your mental model of a wooden table is so dissimilar to reality that you have no way of making informed decisions on what piece of furniture to bring into your home/life.
What if you wanted to build your own wooden table? Maybe you don't need the original schematics, but should you be both technologically and legally prevented from examining your own table to learn how it was constructed?
What if (for whatever perverse reason) your wooden table did in fact come pre-installed with a miniature surveillance camera that sent footage of you back to the manufacturer. Should you be both technologically and legally prevented from removing such a device from your table?
Allowing reverse engineering is a matter of allowing people freedom.
Trying to force people to provide source code for everything is the opposite.
http://www.gnu.org/philosophy/free-sw.html
The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
If anyone believes that, they're effectively saying that it is absolutely impossible for a human to program in machine code. Which is obviously false.
Also, I believe that most EULAs for non-free software have clauses which specifically forbid any attempt to reverse engineer it. I could be wrong, of course, but I doubt it.
A perfect demonstration of why "open source" is problematic. Stallman doesn't care especially about open source as the way things are made. He cares about freedom. If you can use your table freely how you like, great. Software happens to require access to source to preserve that freedom. Whether it was written using open-source methods is irrelevant to Free Software.