Re: You don't NEED to view the source code.
I disagree with this. System understanding is based upon the level of security and need for ensuring that level, and potential for harm. I agree that most people do not need to know everything, but for anything where and type of security, safety, and especially weapons systems are involved, you darn well need to know and understand explicitly every millimeter of that vehicle, or device. How can you possible know if something is wrong with it, if you do not even know how it works?
We have all seen what happens when ignorant morons get behind the controls of powerful and dangerous systems when they "fealt they did not need to know" how it functioned correctly. I will remind you of a few: Exploding space shuttles. Wheels flying off tractor trailers and killing people. Banks being robbed because no one fully knew how the security system works. Billions of viruses and botnets propagating across the Internet because any average ignoramus can get online and use a system which has damage potential beyond most people's level of understanding.
I firmly believe that anyone should not drive a car unless they understand how it works. A computer, a gun, a vehicle, or a mechanical system is a potential disaster waiting to happen in the hands of the average moron who thinks they do not need to know how something works before they leap right in and start using it.