Being a good mentor is hard, perhaps harder than being a parent, because with children it’s fair to share with them all of your ideals. I’ve accrued some interesting life experiences and some interesting skills that give me my particular view point, but the goal isn’t to clone me or otherwise drive them to adopt my own views. But at the same time, it’s all that stuff that ends up making me qualified as a mentor for that person for some period of time.
Here’s a small example. Imagine explaining to a junior DBA the merits/challenges of an integer key versus a uniqueidentifier. Can you show them all the angles and let them evolve a view of their own which might not match your own? Or do you decide that there is only one answer (yours) and that the time is better spent on other topics? Both are valid approaches, though I favor the former. Which is better for them based on where they are right now?
Another place where mentoring is hard is deciding when (or if) to tell them something. Imagine you talk your pupil into blogging and they ask for feedback on their first post. Do you grade them based on experience, or give them the all out critique? Or suppose that they write their first post and get a zillion hits and believe that they are a blogging superstar, do you let them go, wait and see, or do a reality check? I’ve struggled with this call more than once, trying to decide whether they need to learn the lesson or it just me thinking they should learn the lesson?
It’s hard to know then, or even afterward. I’ll admit to having second thoughts more than once, hoping I’m doing more good than harm. The really hard part is it’s years or more before you find out, if ever, because for them it’s just another bit of input in most cases, not the huge decision point you felt it to be.
Mentoring is a lot like chess. It’s not just making the right move now, but it’s looking ahead and trying to prepare them for where you think they want to go.