Pair-programming is a software development technique that was introduced as part of Extreme Programming. In pair-programming, two developers share a computer to work together on developing one piece of code. To test Pair-programming effects on students' behavior and performance in a Middle Eastern society where some interaction restrictions are found, we devised an experiment that was carried out over an entire academic year consists of two semesters. The experiment targeted two sections per semester of an advanced computer programming course. The students of one of the sections worked in pairs during the lab sessions, applying pair-programming rules and techniques. The other section had students who worked individually, as it is the norm in most programming labs. Video recordings were recorded throughout the lab sessions, and then studied and analyzed. In addition, code samples were collected from the students to study the effect of pair-programming on the students' code quality. Through this experiment we found out that pair-programming has the potential to increase the students' confidence, their enjoyment of the course, and improved the course's completion rate. In addition, the students in the pair-programming sections showed that they were able to individually produce code of better quality than the students in the traditional section.