While it may be true that managed code can help protect such people from the damage they could cause, it does not follow that the corollary is true.
Sure it is, just invert the direction. Do you need managed code, if you are aware of what your program does?
Managed code just suggests that executing the programs in a VM (which is especially nonsense for Orbiter without a wrapper or proxy) is more secure, as the VM takes the responsibility for your bugs. It encapsulates them inside a virtual machine so they, in theory, don't leak out of the VM.
Of course, if you develop unmanaged and with thinking about your program, you can be as much bug-free. Even more, by the limitations of the VMs, you can actually develop more robust software without VMs (The number of bugs is more than the sum of the bugs in your program and the VM)
I know that I won't make friends among .NET (or Java, to a lower extend) fans with that opinion. But I know that I am dead right with this one.
I have seen far too many people who should have gone through the same lectures as I did, and still react with confusion and fear, if we start to get through their code in a debugging session and I ask them to "Tell me what your program does right now - not what it should do."
After all - what is the difference? Shouldn't code in a program always do, what the programmer intended? In the ideal case yes, in reality not. It requires reflection to understand what you just did. This is especially true if the bug is actually many hundred lines away from where it manifests itself.
And VMs don't change this. You just bow before a new god, who promises to listen to your prayers, but does not promise to fulfill them. Which is the dogma of managed code - it does not do what you tell it to do, but what it thinks is what you really want. And you want it that way.
I don't like my computer to think without my permission.

---------- Post added at 11:22 AM ---------- Previous post was at 11:20 AM ----------
Wow, what a sweeping statement. Java code is managed code, and as you are an advocate of Java, do I assume that you (by your own admission) don't understand your own code?
I am no advocate of Java, I just used it and prefer it over .NET. I am advocate of C++.
I do know that Java does not always do, what I tell it to do, but claims to be smarter than me, when I am not unambiguous.