Let’s talk about mentoring and apprenticeships

Yesterday i had a very pleasant afternoon with Sandro Mancuso from the London Software Craftsmanship Community. The timing was perfect: i had a free afternoon and Sandro had just left Valtech.

Among other things, we discussed the meaning of mentoring and apprenticing. We agreed that they take a range of different forms, with varying degrees of formality.

An informal mentor may be someone you call when you have a problem and want another opinion on how to solve it. Maybe close friend, someone whose advice you value, not necessarily a formal mentorship agreement.

At the other extreme might be an intense apprenticeship where the apprentice lives and works with the mentor. The apprentice’s every need is met by the mentor. Every waking moment together is an opportunity for the mentor to instill values and practices into the apprentice, and for the apprentice to observe and learn from the mentor.

There is plenty of room for varying models between these extremes. Sandro and i got talking about different models, both within a company as a formal apprenticeship program (like we used to have in eden) and externally to a company.

I could talk at length about my opinions of what an apprenticeship program looks like – and i will in a separate post – but i want to start off a discussion among other people who are engaged in apprenticeship programs. What are you trying? What works well? What are the difficulties? How do you work in a way that is mutually fair and beneficial to both the apprentice and the mentor? What payment or expenses does the apprentice receive? How does this differ according to the country’s employment law? What challenges and milestones is the apprentice expected to achieve? How do you determine when the apprenticeship is completed?

This goes beyond Apprenticeship Patterns and gets into implementation details. We need examples of individuals and companies conducting successful apprenticeship programs to see how they are working.

Sandro and i also discussed how we can get the word out to more people. How should we let people know that apprenticeship is a useful way to learn? How could we find people who want an apprentice, and people who want a mentor, and bring them together?

At the moment this seems to happen quite naturally (and i think we would be mistaken to impose much structure on the process) but, as anyone who knows me well is aware, i strive for equality in all situations. It troubles me to think that most people are unaware that apprenticeships exist. We must be missing a vast number of people who would be ideal apprentices but just don’t know that the option is available to them.

To start with, we could all talk a lot more about what is happening. Thank you to Sandro for the discussion that prompted this post. I hope to hear from others and see many more blog posts talking about apprenticeship models and how we can find a way to share these ideas with the software community as a whole.

Welcome to Rohit, my new apprentice!

I have spent the last 8 weeks working at a consulting, design and development company in London. I’ve had a fantastic time, felt very welcome and i know that together we did some amazing work.

While i was there i had the pleasure of getting to know Rohit Gogna, who is employed there as a Quality Assurance Tester. Straight away i knew that there was something different about Rohit. In fact i commented early on that i’d never known such an enthusiastic tester. The following quote shows how Ro thinks of testing:

Software Testing is not a job … it’s a passion that turns into a career.

Rohit is keen to create a community of testers in London. LondonTester.com is Ro’s initiative to help testers find jobs and share knowledge. Ro is very keen to improve, learn new techniques and share with other people. In short, perfect apprenticeship material.

I encouraged Ro a lot over the 8 weeks. We spoke about my other apprentices, and what apprenticing and mentoring mean. I encouraged Ro to seek mentors who can guide and channel this enthusiasm, because i can see so much potential, provided Ro receives the right support.

I did not offer myself as a mentor; i waited for Ro to ask me, something like the moment in Avatar when Jake has become one of the Na’vi people and may choose a partner. Jake wants Neytiri but says “she must also choose me”. Neytiri says, “She already has”. If you are an apprentice and want a mentor, you should be the one to ask. Chances are that person might already want to mentor you but is waiting to see if you ask for it!

I take mentoring very seriously, so i made sure Ro knew exactly what would be involved, and knew that it would be hard work and painful at times. Ro understood and was still keen, so we shook hands to begin the formal arrangement, and went to skype call my mentor Enrique to share the great news!

Initially, i want to get Ro learning and blogging about automated test tools, starting with Selenium. I also want Ro to have a second mentor: someone who is more knowledgeable about testing and mentor Ro on these things that i don’t know so well. We’ll get networking and meeting people to see if we can find someone just right.

So please, follow Ro on twitter: Testerpedia, and watch with me, with pride, as we see Ro’s full potential begin to emerge!

Learning from my apprentices

I feel truly blessed to have the opportunity to be a mentor to my apprentices Alberto and despo. I am finding that i am really enjoying the role, and i feel such a sense of compassion and pride for my apprentices.

Whenever i pair with anyone, i always learn something. Although i am spending much of my time consciously teaching, to also learn from my apprentices by pairing with them gives me such a good feeling.

Thanks to despo, i am now using iTerm instead of Terminal. I have been encouraged finally to use Enrique’s Vim Ruby Refactoring tool, we have set up spork and autospec, and i have learnt about RSpec’s nested format. Together we both found out how to use RSpec shared examples today.

Importantly, despo is helping me to realise that i have a tendency to hold too much in my head, and try to do too much at once. I am grateful to despo for restraining me from racing ahead too fast, and for reminding me to do one thing at a time. It is good for me to realise what i need to do to become better at teaching.

I have not yet had the opportunity to pair for more than a few hours with Alberto, but i know i will get the chance soon, and i know i will learn new things from Alberto too, which excites me no end! :)

Welcome to Despo and Alberto!

I would like to make a big public welcome to our new apprentices Despo and Alberto who are starting at eden very soon!

Despo is well known to us through the Software Craftsmanship User Group, code retreats and other software crafting events. We are looking forward to having Despo join us tomorrow, and we’ve already got plenty of work lined up for Despo to jump straight into (pairing with other edenites, of course!)

Alberto has recently spent a 4 weeks here as an intern, and we are delighted to welcome Alberto back for an apprenticeship with us, starting next week. We have already seen Alberto learn a lot during those 4 weeks, so it will be great to follow Alberto’s further progress.

Both Despo and Alberto have solved the eden minisculus challenge!

I am personally very excited as i shall be acting as a mentor to both of them. This is a new challenge for me, and i’m looking forward to it. I very much enjoyed working with Tom over the summer, and i found that Tom seemed to learn a lot from me by coincidence without me actively trying to teach anything. I think that my skills of empathy and personal development help to make me suitable for the mentorship role.

Welcome, new apprentices, we are all very happy to have you join us! :)