Agile methodologies, specially eXtreme Programming (XP), appear as a counterpoint to traditional software development methods. We live in a moment were it is considered acceptable to find bugs in computer programs, even those for which we pay a lot of money. It is essential to improve the way we teach techniques with which teams can collaborate on the development of quality software so that this area of knowledge reaches the maturity we wish. Teaching XP is a relatively complex task because it implies that people must go through a cultural change to accept its values, principles, and practices. Different organizations need to adapt the methodology so that it will work well in their local context. Finding ways to facilitate teaching and adopting agile practices is fundamental to improve the quality of software being developed in the country. This work researches the process of teaching XP in academic, governmental and industrial con- texts. Three case studies were conducted and analyzed so that we could suggest patterns that can support educators teaching the methodology in any context.