I'm sure it must be similar to the feeling I get when I'm working on a new code base that I'm not familiar with, and I need to make a modification in a function so that it calls another module correctly for some new functionality. But I can't tell if that change isn't going to break something somewhere else, so making that change becomes quite scary.
In the software development world, we handle this by creating suites of automatic tests that we can run after the change to make sure that what we just did doesn't break things. We also use config managent software so that we can back out any erroneous changes. These things aren't available to nontechnical users - they can't verify that they haven't broken anything, and if they have broken something, they may not be able to put things back the way they were. This pretty much guarantees that people won't experiment with their computer.