Let the final user access at least to parameters.
Let the developer decide, which access should be possible.
Parameter access allowed per default, but possible to turn off.
I do not want to give access to all parameters of my objects, because the given away version is sometimes locked to certain settings and only the commercial one has free access to all parameters and settings. And I do not want, that my objects are translated in every language. Public domain is another thing, but if I give it for a feeless usage I, as developer, want to keep control.
Hiding all scripts isn't a good solution also. A lot of settings in my objects are done by numeric values, which offer full options first in the user interface. Optional access to the user interface would be appreciated and locking direct parameters access.
But you are right. The way it works now, is not very good.