Some will come and say "school is mostly one way!", but they are wrong, every school I know of has tests and those tests are checked by teaches, that part is necessary to teach, not the testing but the feedback loop, if you have any other way of providing effective feedback that works as well. Without that step we say the person self learned instead of was being taught.
In software engineering we mostly do this via code reviews, that way we systematically make engineers provide feedback to each other and it helps junior programmers learn effectively.