How to train the next generation of Masters One of the best ways to move yourself forward as a developer is to have mentors who can help improve your skills, or to be a mentor for a newer developer. Mentoring isn’t limited to just ‘hard’ or technical skills, and a mentoring relationships can help in all aspects of any career – be it open source, a day job, or something else entirely. Learn some skills and tips from people who make mentoring an important aspect of their lives. From how to choose a mentor and what you should expect from a relationship as a padawan, to how to deal with the trials and successes of the person you are mentoring as they grow in their career. Also learn about setting up mentorship organizations, from the kind inside a company to one purely for the good of a community.
24. What is expected of a beginning
apprentice?
1. Try to find it on your own first
2. Ask questions, lots of questions, but never the
SAME questions
3. Don’t be afraid to question “why?” but also be
open to the answers – show respect
4. You will be pushed outside your comfort zone
26. What is expected of an intermediate
apprentice?
1. Branch out beyond what you think you need to
know into new areas
2. Have faith that the support you need will be
there when you ask for it
3. Continue to reach out in new directions to new
people, but keep your older contacts close as
well
4. Remember that failure breeds success
28. What is expected of an advanced
apprentice?
1.Your mentorship relationship is more peer
to peer, more give and take
2.Have respect for those who mentor you,
but realize they are just people too
3.Sometimes real life gets in the way
4.Never stop learning and growing
5.Give back (time to get your own
apprentice)
30. What does an advanced dev need from
a mentor?
1.Support and encouragement
2.Feedback loops for coding improvements
3.A shoulder to cry on, an ear to listen, and
less help with fixing things
4.Help with those steps out of the comfort
zone
32. What does an Intermediate dev need
from a mentor?
1.Stretching of their coding boundaries
2.Networking connections and introductions
to others
3.Encouragement to leave the comfort zone
4.Positive role model for moving ahead
43. Rules of an Apprentice
1.Take responsibility for career goals
2.Listen and share
3.Incorporate feedback given
4.Make time for interaction
5.Have realistic expectations and approach
the relationship with honesty
44. Rules of a Mentor
1.Trust and Respect
2.Listen
3.Help apprentice define and achieve goals
4.Offer advice, references, resources,
CONSTRUCTIVE feedback
5.Give support when apprentice succeeds,
and when they fail
45. When things go wrong…
•
•
•
•
Mismatch in expectations
Mismatch in personality
Breaches of trust
Lack of focus
STORYTIME – me, elizabethnaramore and doing keynotesWhy talk about mentorship? Because at the end of the day being in tech and programming is more of a CRAFT then a straight skillUsually when you start mentioning programming as craft you get all the “crafts should have intrinsic value” UmNoThat is artThe craftsman is also in love with his medium, but believes that form and function must be balanced to maximize the profit/usefulnessfrom delivered value.
So what is mentorship?Mentorship is a process that always has a beginning- that beginning is generally taking something with raw potential, usually young but not necessarily… and by pairing that person with other people who can train them and shape their potential into…
AT the end of the day mentorship can be the best thing ever – or the worst thing ever… there are lots of factors that can make even a relationship that ends badly worth the trouble thoughRemember a single mentor never has complete control over how a person turns out in the end
Mentorship refers to a personal developmental relationship in which a more experienced or more knowledgeable person helps to guide a less experienced or less knowledgeable person. However, true mentoring is more than just answering occasional questions or providing ad hoc help. It is about an ongoing relationship of learning, dialog, and challenge.The person in receipt of mentorship may be referred to as a protégé (male), a protégée (female), an apprentice or, in recent years, a mentee."Mentoring" is a process that always involves communication and is relationship based, but its precise definition is elusive. One definition of the many that have been proposed, isMentoring is a process for the informal transmission of knowledge, social capital, and the psychosocial support perceived by the recipient as relevant to work, career, or professional development; mentoring entails informal communication, usually face-to-face and during a sustained period of time, between a person who is perceived to have greater relevant knowledge, wisdom, or experience (the mentor) and a person who is perceived to have less (the protégé)".[1]
There are many mentorship organizations which have very formal training procedures, there are also much more informal ways of finding a good mentorWhat will work best for you is going to depend a LOT on what you want to accomplishFormal mentorships tend to be work oriented and focused unless they’re affiliated with some kind of organization (such as a usergroup)
Not every mentorship relationships needs to be or should be the kind where you invite them to your weddingThe level of personal involvement you have in a mentorship relationship is something you need to think about
Long term mentorships can be a rich and ever changing experiences – but it’s almost like commiting to a marriage, you have to make it work. Shorter, intensive mentorships often are a better fit, especially when you only want to work on a skill or career related component
Most mentorship works best face to face, one on one – that’s where you get the best bang for your buck.. But mentorship is a very personal thingSometimes especially in the more formal, impersonal settings you’ll get more done by having group mentorships take place. Generally the more skilled a person is the less use a group mentorship truly is for them
So now that we know what mentorship is – the next question is really why bother? What are the personal reasons to make mentorship something you get involved with?
The Law of Accelerating ReturnsWe can organize these observations into what I call the law of accelerating returns as follows:Evolution applies positive feedback in that the more capable methods resulting from one stage of evolutionary progress are used to create the next stage. As a result, therate of progress of an evolutionary process increases exponentially over time. Over time, the “order” of the information embedded in the evolutionary process (i.e., the measure of how well the information fits a purpose, which in evolution is survival) increases.A correlate of the above observation is that the “returns” of an evolutionary process (e.g., the speed, cost-effectiveness, or overall “power” of a process) increase exponentially over time.In another positive feedback loop, as a particular evolutionary process (e.g., computation) becomes more effective (e.g., cost effective), greater resources are deployed toward the further progress of that process. This results in a second level of exponential growth (i.e., the rate of exponential growth itself grows exponentially).Biological evolution is one such evolutionary process.Technological evolution is another such evolutionary process. Indeed, the emergence of the first technology creating species resulted in the new evolutionary process of technology. Therefore, technological evolution is an outgrowth of–and a continuation of–biological evolution.A specific paradigm (a method or approach to solving a problem, e.g., shrinking transistors on an integrated circuit as an approach to making more powerful computers) provides exponential growth until the method exhausts its potential. When this happens, a paradigm shift (i.e., a fundamental change in the approach) occurs, which enables exponential growth to continue.Knowledge Transfer and tribal knowledge (aka the bus factor issues) are endemic in open source and in technology in generalKurzweil'sThe Law of Accelerating Returns (no no, not Moore’s Law which actually only applies to semiconductor circuits)Learn or be unemployed
The term role model generally means any "person who serves as an example, whose behavior is emulated by others“Often in careers the only way to know where you want to get to is by seeing someone who is where you want to beSTORYTIME – my hero in PHP – Sara (embarrass shit out of her)
No one person can know all things - and no matter how hard you try you can never – EVER see yourselfTalk about how others have been where you’ve been, done what you’ve done, and frankly see you better then you see yourself Dunning–Kruger effectThe Dunning–Kruger effect is a cognitive bias in which unskilled individuals suffer from illusory superiority, mistakenly rating their ability much higher than average. This bias is attributed to a metacognitive inability of the unskilled to recognize their mistakesActual competence may weaken self-confidence, as competent individuals may falsely assume that others have an equivalent understanding. As Kruger and Dunning conclude, "the miscalibration of the incompetent stems from an error about the self, whereas the miscalibration of the highly competent stems from an error about others”Also imposter syndrome – you are as good as you think you are
STORYTIME – Rasmus, Sara, and getting a job at Yahoo
Accountability: Mentors can help you commit to your goals and stay motivated. Stretching: Mentors can challenge you to grow and call you out if you’re slacking off. This is the most personal aspect of any mentorship relationship
discuss the pay for my time vs. do it all for free
You can learn as much from the person you are mentoring as they can learn from youSometimes you will get schooled by the person you are endeavoring to mentor (this is not necessarily a bad thing)STORYTIME – me, google summer of code, and being a good mentor (cairo)
Even if they are not your deeds, the things your subordinates do will shine down on you
Connection: Mentors can help you navigate a large organization and find just the right people who can help you. This is also how you get good jobs, references and move up in the worldSTORYTIME – getting started in consulting
If you’ve been mentored by someone, it’s often in your best interest to give back
Accountability: Mentors can help you commit to your goals and stay motivated. Stretching: Mentors can challenge you to grow and call you out if you’re slacking off. This is the most personal aspect of any mentorship relationship
So finally I’m going to tell you why I’m interested in mentorship myself, and why I push so hard for both individuals and groups to get involved in some kind of structured or non-structured mentorship programs
Talk about the story of the cable modem in the basement, and the bad PEAR run inAlso speak on how first mentorships are often those we know best
These are the things I learned that a beginning apprentice needs to understand and do to have a successful mentoring
Story of Sara and coding drunk and the ballmer peakWez and my first karma at my first conferenceandrei and “write it yourself”
These are the things I learned in my intermediate apprentice situation and what I needed to deal with
Elizabeth, Lorna, Lig and phpwomenMatt and eli – and many many more – as my skills have grown so has the circle of people who I consider “mentors” – but also friends
As an advanced developer most of your relationships tend to shift – frankly it gets somewhat harder as you increase your skills to find those with more skills then you You tend to shift SIDEWAYS – having those “mentoring” relationships where you trade on something you excel in for something they excel in, instead of straight advancement as you did in the early days
Somgdm also known as michaelmaclean came into my office (otherwise known as php-gtk)With some pushing and prodding he got involved in php documentation, php-gtk, then helped me move the cairo extension from the shape it was in after gsoc into something much more useful and awesomeHe’s also done his own from scratch extensions and moved on in the world …. But we still talk a lot though we’ve never met in personBe sure to mention the conversations over changing jobs and feeling confidence in your own skills
These are some of the hardest mentoring relationships to maintain simply because as your apprentices become more skilled they need you less, and often there is less connection there – still don’t be afraid to reach out and let the relationship change
Php-gtk,zen framework, phpthrowdown – currently trying to talk him into getting a better job ;) some words about talking him into speaking (woot)
Intermediatesdevs are interesting creatures because their move to the next level is entirely dependant on how confidant they are in themselves as developers and people. You will find you don’t need to do as much of the day to day answering questions, but you may need to keep an eye on bad habits and squash them
My son the geek Patrick, teaching him slowly how to be a good dev in many languages on many systems and he likes to learn
In order to make that move from a beginning developer to a more advanced developer, I need to work on feeding the apprentice with these actionsBeginning developers require more work then the other two types of developers put together but I think it’s important to always have at least one you’re working with for the simple reason that as a mentor they keep you grounded with the “beginners” crew… and you remember what it was like as a N00b who knew absolutely nothing.Many senior devs lose this remembered mindset and that’s why they often have a hard time with some parts of their jobs
No matter where you are in your current career remember that the lables of “apprentice” and “master” are just that – labels. You will grow and change and the people around you will as well, this is a good thing. Share that pool of knowledge and remember that it’s ok to do things differently. Life isn’t star wars and sometimes the dark side is a great place to visit and eat cookies ;)
With any relationship there are no hard and fast rules about what makes a success, but there are ways to increase your chances for having a positive experience, either as a mentor or apprentice
These are the steps you need to take before you really start into any mentorship relationship. It’s almost like getting married, only with no money changing hands, no sex and a lot easier to get out ofRemember each of these steps is important even in informal and personal mentorships it’s often a good idea to sit down and hash things out
Ongoing processBoth sides together, never a one way streetGoals will evolve with circumstancesGoals should be specific enough to clearly define progress
Remember that the key is prioritizing the relationship – lack of communication is the number one way to kill any relationshipTechnologies that prioritize face to face interact are superior – but you can supplement face to face interaction with technologyInteraction is the key to good mentorshipOnline is never quite as good as face-to-face, but far better then nothingUse the tech tools availableNo one is ever “too busy”
Remember to always have a way to back out – a defined way of how you intend to have closure or merely an idea of how (and when) you intend to redefine the relationship
What is merely a partnership orchestrated by a company between two co-workers might turn into a lifelong partnership in their own companyWhat started as a simple mentorship might turn into much moreEvery relationship will grow and change on it’s own – don’t try to force anything – especially in more informal mentorshipsThis is VERY important and worth reiterating 100 times
Rule of mentorship – like any relationship or partnership it’s a shared responsibility – both sides have to be willing to make a go of it, if one or the other does not you can’t keep trying to hold it together entirely one sidedThere is nothing that says you can’t simply walk away if the mentorship doesn’t work well
. Mentee Commitment I'm responsible for my career goals and would enjoy the benefit of a mentor's guidance to create a plan for success I'm ready to listen and to share my ideas to develop a give and take relationship I'm ready to receive objective feedback to consider new ideas and new approaches suggested by my Mentor I’m ready to give objective feedback to my Mentor in order to work towards our objectives I have realistic expectations for my Mentor relationship. No one is perfect and good relationships take honesty, effort and time I'm busy with work, but I'm ready to make a commitment by meeting up / communicating with my Mentor
I will make a personal connection based on trust and mutual respect and listen to my Mentee's needs and concerns I will help my Mentee to define career goals and provide networking opportunities to attain those goals I will share my knowledge of educational and professional requirements to prepare my Mentee for his/her career I will offer information, advice, references, and resources to assist my Mentee's needs I will offer constructive feedback , and allow my Mentee to learn from his/her mistakes I will give help and support in a non-threatening way , in a manner that the recipient will appreciate and value and that will empower them to move forward with confidence towards what they want to achieve
There are lots of things that can drain the soul out of a mentoring relationship, some aren’t escapable. For example a mismatch in personality or a breach of trust between two people is seldom something that can be overcome – you can try moving the mentoring to more “formal” ground where personality is less of an issue, but those scars will still remainLack of focus or expectations mismatch are far easier to recover from – these
What doesn’t’ kill us only makes us stronger (but be ready with your life support tools)Remember at the end of the day each person is responsible for their own career and their own path in life.You can whip out the life support tools and try to rescue someone but they may not be any happier for it
STORYTIME –gsn and it’s bad take on doing a mentoring in their systemthe strange wonderfulness that is phpmentoring (accidentally)
So everyone has talked about mentorship and how it works, now be more than hot air – start your own path
If you don’t know where you want to go, how can you get there? Sit down and write out where you want to be, what you want to learn
Now expand your circle, maybe the best person to mentor you isn’t someone you’ve met yet, being here is a great start
Eventually you’ll find the right match – and the one you’re not related to
STORYTIME _ Evan Coury came to Zendcon and left as a member of Matthew’s Zend Framework squad. He’s now responsible for LOTS of cool stuffThe challenge is simple – learn one thing from someone here, and teach one thing to someone here
A little bit about me – involved in a lot of stuff
Have any questions or comments about the talk in general?
remember that a lot of the information on the internet and looking at extensions is out of date – these are some stuff that can help you, but your own experiences blogged would be great as wellI’m always sitting around in IRC willing to help out with things