Earlier quoted context omitted.
"Non-technical users" is a contradiction in terms. If you're using technology, you're a "technical user". If you don't know how certain options work, you should leave them alone; but if you don't leave them alone and something breaks, it takes only common sense and not specialized knowledge to suspect that the thing you changed has some relationship to the thing that broke. De-featuring software for the presumptive c…
It's true that users should not break things without some mind as to how to fix them, but it's also irrelevant. If a user breaks your product, it makes no difference to him or her who broke it. It's still broken. Users will have a bad experience. This doesn't mean advanced options shouldn't exist, but it does mean that they should be out of the way for non-advanced users. In this case, the setting is moved to about:c…
A good user experience can be achieved by providing users with an efficient way to understand and fix problems that they encounter.
De-featuring a product to prevent users from ever encountering a problem reduces the utility of the product, which produces a worse experience for everyone, not just the ones who would have had a problem they couldn't solve.
Those who would have had a problem they couldn't solve will still ultimately have a bad experience, because it's their own pattern of usage, and not any defect in the software, that's ultimately getting them stuck.
Moving an "advanced" setting to a different interface is fine, but the release notes don't say that the JavaScript toggle was moved to about:config; the notes say that it was removed (and that user-set values will be reset to default, which, IMO, is an unacceptable thing for an update patch to ever do.)