You shouldn't be running random executables period. At one time people still had the common sense not to run code they wasn't vetted and that they trusted.
There were warnings from the beginning (both with ActiveX and NPAPI), but for most engineers, getting things done took precedence over trust issues. Youtube, for example, would not have been possible until much later without Flash.
At one time? When? People have been executing arbitrary and malicious code since the moment they could share it between two computers.
But, it was easier to avoid this common error before every site depended on it.
I honestly can't see a much better compromise than JS to include the common users.
The problem with JS in browser has been security, specifically cross origin not that JS is code