Although eXtreme Programming has been explained by Kent Beck[1], there are many benefits to adopting eXtreme Programming (XP) practices in other development processes. The benefits of adopting the complete XP approach are outside of the scope of this paper, what is discussed here are the lessons that XP offers to other development processes. This paper initially discusses the benefits available from adopting XP style unit testing on a project, and then moves on to identify useful lessons that can be learned from other XP practices. The paper concludes by asking questions about the nature of process improvement in software development and how we can make our software serve society.