Các lập trình viên làm việc và làm lại các mã trong dự án XP. Khách hàng nhìn thấy một hệ thống phát triển từ lớp từng lớp cụ thể. Phần mềm này chỉ có hiệu quả như các chi tiết nó là hiện thân. Một hệ thống kế toán thuế phải vòng tính toán một cách chính xác, | of gumption traps are 9 Intermittent Failure In this the thing that is wrong becomes right all of a sudden just as you start to fix it. Parts Setback It s always a major gumption trap to get all the way home and discover that a new part won t work. Value Rigidity The facts are there but you don t see them. Ego Traps When the facts show that you ve just goofed you re not as likely to admit it. When false information makes you look good you re likely to believe it. Pirsig defines these gumption traps in terms of motorcycle maintenance but they apply equally well to software development. Whether you are a mechanic or programmer gumption traps keep you from getting your job done. You can get out of gumption traps by yourself. Pirsig gives solutions for each of these traps. The biggest problem is recognizing that you have fallen into one. Even when you recognize you are in a trap it can take you days to get out of one if you are working alone. With a partner you ll probably be out in a few hours or possibly even minutes. You and your partner think differently. You have different backgrounds and skills. When you are pair programming together these differences balance each other out to help both of you avoid and recover from gumption traps. Each of you probably won t fall into the same gumption traps. If you both fall into the same trap one of you will come out first and help the other out. I m sure you have had the experience of searching for a code defect with another person. It would be a rare event for both of you to find it at the exact same moment. It doesn t matter who finds it first because both of you can continue coding once it is found. Reducing Risk Through Knowledge Transfer Programming pairs are not only better at finding defects they produce better code and learn more than solitary programmers. Programming partners often come up with two different implementations for the same task. One 9 Zen and the Art of Motorcycle Maintenance Robert M. Pirsig Bantam