Our team recently joined up with a few smaller teams, and as we had some direction and standards to our development it was decided that it would be best to train those up in our chosen languages and methodologies.
Some members take years to achieve an acceptable level of competence, and I've noticed that there seems to be this assumption that a developer with less knowledge requires almost 50% of a more knowledgable persons time.
When I started devloping several years ago I had no mentor, I had a project in front of me, a good book, and later on I had the internet, and that's pretty much paved my learning approach over the years, as a result of that I can taken on a language or methodology and learn very quickly, the only time I need to seek advice from colleagues is for design work, code reviews and standards discussions.
The staff who have this allocated time to mentors appear to be constrained, and I strongly feel that when it comes to technology, you shouldn't need much human interaction, if you rely on someone to walk you through technologies I fear that they will only remember that and therefore be constrained in the learning.
So my question is, how do you deal with training up staff? My way has always been to not find out the solution but to find out how to achieve the solution. I don't quite understand the whole spending time shadowing another developer, maybe that's just me, but there must be a standard approach to this.
Would like to some input please.