@nprofile1q... this is also one of the biggest reasons to want microkernels; each service is easier to understand in isolation
point 2 in general (aiming for simpler to understand software) is my preferred approach to this (unsurprisingly given priors), but how far a user can get without becoming at least minimally a programmer is difficult to estimate, so the other hard problems you mention remain important where otherwise that would have been enough
it being enough for programmers is also why there is much less effort put into the other questions