People often forget "copy-on-write". Coupling doesn't have to be permanent. If refactor to create a sahred component, and then you want to modify a shared component to help one client, you can fork it -- it's not worse than simply not having created the shared component in the first place.
In my experience people will most likely just hack the shared component by adding awful arbitrary if-statements or other such hacks, rather than fork the shared component. This is the path of least resistance. Once this happens a few times that shared component begins to be seen as a central component and is quite a complicated mess.
But often the fork happens too late, after the first few differences have been creatively shoehorned into the shared code. The resulting mess then tends to live on twice after the fork.
In the end, almost every conceptual way to slice up software can be viable if you are good at whatever you do, and terrible of not.
Sunlight does effectively produce radiation burns in your skin, however. And that definitely causes cancer. If we treated sunlight the way we treat barely detectable nuclear radiation, we’d never go outside and we’d use blackout curtains.
0 is only relevant for linear utility/impact functions The effect of an isotope isn't necessarily linear in its magnitude from 0. The baseline should be something that matters, like maximum safe dose.
If you have a baseline and a scale that indicates an actual effect, then by all means use it. That’s not the case here, nor has it been the case for any other such graph I can remember seeing. Universally, the bottom is chosen as the minimum value in the data being plotted.