another similar concept i have found to be effective is to “teach what you learn”, i have noticed that it takes some good understanding of the topic you want to teach in order to communicate that effectively as well.
Not only a deeper understanding, but to retain the mental state of when you first didn't understand and be able to empathize that in your student's mind.
Some problem domains simply becomes so hard to teach, because once you learnt the domain, you tend to forget what made it confusing or hard, and thus unable to "teach" it to someone who hasn't understood it.