Is this not the very definition of software in binary-only form?
Is this not the very definition of software in binary-only form?
Is there a difference between knowing what pressing a gas pedal in a car does and how it does that? Surely there's none.
"It's an 8 inch chef's knife in a stain-resistant steel"
and
"It's an 8 inch gyuto-style chef's knife, which is thinner and lighter than the German style knives, but tempered to a higher hardness. This one is hardened to RC-57 (soft for the genre), ground from a hot-forged steel with 1.03%, carbon, 13.06% chromium, 0.37% nickel, and 0.28% nicklel, heated to 1000 degrees to promote austenization, and then oil quenched to form a highly martensitic steel, with moderate levels of pearlite and low levels of cementite. The temperature is then raised to 230 degrees and held until the stress from the quench is relieved. The chromium compounds are relatively coarse, similar to A-1, with a similar effect on the edge. The edge is then wet ground.... etc, etc, etc."
A metallurgist or good blacksmith would be able to write hundreds more pages about a kitchen knife and the processes involved in it's creation.
[Note, I am not a metallurgist. The description, I think, is mostly right, although I may have some of the phase transitions and temperatures wrong. Corrections are welcome.]
A knife is fairly unimportant, but make the wrong decisions of that sort on a plane, or on a bridge, and people will die.
Even more subtle decisions can have serious consequences. See, for example, the DeHavilland Comet, which crashed because the windows were too square.
The squareness was causing them to act as stress concentrators. With the cyclic loading from pressure changes, this caused metal fatigue, and the windows would fail after hundreds of flights. This could be fixed by rounding the corners of the windows, or by using alloys that don't fatigue as easily. And this is why modern jets have rounded portholes, instead of rectangular windows.
The difference between a binary and source code is just level of description. A binary is obviously very hard to understand, but it is just instructions to the computer, and those instructions can be interpreted by following them logically according to the hardware documentation. This is true all the way down to the OS.
Of course, you have to trust that the hardware does what it says it does... I guess you could always break out the oscilloscope...
Anything else they don't get specific permission for is a breech of the law here (UK, Computer Misuse Act) ... would love to see that prosecuted.
The government should lead such a prosecution really given how important unauthorised computer use/access is to them - extraditing people for it and all.
On the other hand, if an EULA for video card drivers starts including language about transmitting your data, then you already know what it means.