I have been involved in many development models, and have found XP to be the best for a new programmer from the aspect of learning, as the collaboration between the team members is very high and the opportunities to share knowledge are great.

What are the expert opinions on this?


6 Answers 6


I would say regardless of methodology, the group must have the right attitude when sharing their knowledge. Where participants don't worry about prestige, and dare to ask questions from each other.

  • +1 because it's not the methodology it's about the right people talking openly to each other to solve the problem
    – Gary
    Commented Nov 9, 2010 at 9:33
  • 1
    Yes it's not about XP iself, it's more about values such as trust and courage (which btw is an integral part of using XP). Commented Nov 9, 2010 at 10:30
  • ok good ans it means XP is only successful when people comes up with right attitude for shearing. Commented Nov 9, 2010 at 11:35

I don't think you can beat an excellent teacher who knows his stuff.

The temptation of pair programming is. you just need a domain expert, teaching skills not required. In my experience, that works only for the very few students who wouldn't strictly need a teacher anyway.


Yes it will helps a lot. Thanks to pair programming and highly self managing team.

Other systems like Scrum are also very well suited to work with XP.


It helps, but only when the more knowledgable programmer of a pair works to transmit that knowledge to the other. For instance, if he does all the programming while the newbie is watching, that won't help (much). However, if the new guy does some of the work with the more experienced programmer helping him, he will learn more and the more experienced programmer will be able to hone his teaching skills.


While I'm not an expert, there are different ways that people learn things which should be acknowledged. Some people can handle being given all the abstract details and then go and implement it with little difficulty while others would struggle to get through the first example. If the expert goes too fast, bullies the other developer, or uses language that the other developer doesn't understand this can cause problems for the non-expert and thus not be the best way to learn.

I have seen coding camp examples done where I learned a lot though this is from watching and absorbing what is being shown. While having a consultant can be useful, it can also be overwhelming in some cases to try to absorb so much if they are only there for a short time. Some of what was shown is still with me, but other parts are long gone.


I would say that listening and watching closely is the best way of learning from experts. You can do this without XP. You can even do it when they don't know you're doing it.

Not the answer you're looking for? Browse other questions tagged or ask your own question.