Thanks for writing this and the useful links!
Reading this makes me think of tooling and working with machinery. No one goes to a machinist job expecting to know how the dowel roller works, nor how to build one. There’s always a process to learn the tooling.
The thing that fuzzes it for software is that the tooling is so accessible to change developers think they have to learn how the dowel roller is built in case they want to refactor it into a peg roller.
Really it’s more of an apprenticeship-style process and there are no people willing to do the lifting of teaching fundamentals “this is the start button on and this is the power cord”.
So again thanks for the insight and the resource links. It’s good apprenticeship.