Mentoring developers-php benelux-2014


Published on

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.

Published in: Technology, Health & Medicine
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • 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
  • Mentoring developers-php benelux-2014

    1. 1. Mentoring Developers
    2. 2. Take someone with raw potential…
    3. 3. And turn them into something useful
    4. 4. Your definition of useful may vary
    5. 5. What is Mentorship?
    6. 6. Formal or Informal
    7. 7. Professional or Personal
    8. 8. Long or Short Term
    9. 9. Group or Peer
    10. 10. Why Mentorship?
    11. 11. Information Technology moves FAST
    12. 12. Role Modeling We all need a hero
    13. 13. Advice No man(or woman..or cat) is an island.
    14. 14. Networking To get to where you need to go, find the folks you need to know
    15. 15. Interaction Humans are social animals
    16. 16. Why Mentor Others?
    17. 17. Learning
    18. 18. Recognition
    19. 19. Networking
    20. 20. Reciprocation
    21. 21. Intangibles
    22. 22. Personal Tales Anecdotes stick around
    23. 23. Beginning Developer
    24. 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
    25. 25. Intermediate Developer
    26. 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
    27. 27. Advanced Developer
    28. 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)
    29. 29. Advanced Developer
    30. 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
    31. 31. Intermediate Developer • Some day that boy is gonna get me killed
    32. 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
    33. 33. Beginning Developer
    34. 34. What does a beginner need from a mentor? 1. Best Practices 2. Positive Feedback 3. Resources for their own research 4. NO SPOONFEEDING
    35. 35. Apprentice to Master They grow up too soon…
    36. 36. Successful Mentoring How to get in on the good stuff
    37. 37. Find a partner 1. Personality 2. Skills 3. Availability 4. Drive
    38. 38. Decide on goals 1. Ongoing 2. Together 3. Evolving 4. Specific
    39. 39. Communicate 1. Talk 2. Listen 3. See 4. Make Time
    40. 40. Exit Strategy 1. Change the goals 2. Change the relationship 3. Say Goodbye 4. Run away screaming
    41. 41. People Change, Relationships too
    42. 42. Remember: It takes two
    43. 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. 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. 45. When things go wrong… • • • • Mismatch in expectations Mismatch in personality Breaches of trust Lack of focus
    46. 46. Remember: Failure is good!
    47. 47. Mentoring (in) Organizations
    48. 48. Do the Mentor thing Be the solution
    49. 49. List your strengths
    50. 50. List your weaknesses
    51. 51. Set personal goals
    52. 52. Meet new people
    53. 53. Speed Date
    54. 54. Learn, and teach
    55. 55. WIN!
    56. 56. The Challenge
    57. 57. About Me    IRC – freenode – auroraeosrose  #php-gtk #coapp and others
    58. 58. Questions? More mentorship organizations?
    59. 59. Resources: