By Shannon Campe | August 2, 2016
Research Associate, ETR
Fifteen years ago, ETR started working with middle school girls to help them build computer programming skills and confidence. This was Girls Creating Games, a project where girls designed and programmed their own games. It was one of the earliest projects in our Diversity in IT group.
In the world of technology professions, females, Blacks and Latinos continue to be substantially underrepresented. Through partnerships, consulting and research projects like Girls Creating Games and The Girl Game Company, we have designed and supported efforts to increase diversity in STEM fields. (Find out more about the research we’ve done, and a list of our group’s publications, here.)
One of the strategies we’ve frequently used and studied is pair programming. We’ve developed some classroom tips that can make pair programming more effective.
Find out about our free tip sheets on increasing diversity in STEM education here.
Pair programming is when two people program on a computer together. Each partner has a different role. One is the “Driver,” controlling the mouse and keyboard. One is the “Navigator,” who helps direct the driver. They complete programming tasks together, rotating roles regularly.
When we started our work with middle school girls, pair programming was a strategy that had been used with some success in industry and at the university level to provide peer support and encouragement. It had not been studied with youth working on computers. We felt it was time to see whether it might benefit middle and high school youth.
We designed curricula and conducted research where both girls and boys pair program to develop games and other technology projects. We looked at both school-based and after-school programs. We’re excited that others are now also utilizing and researching this strategy.
Educators often want to pair students doing programming because they believe it will make the process more fun, less intimidating and encourage collaborative learning. This intuitively makes sense. But educators don’t always know the best way to pair students or the conditions under which pair programming has benefits for learning. We are studying what pair programming looks like on a deeper level, how it may or may not increase students’ engagement and learning, and which students gain the most benefits from pair programming.
Researchers at Harvey Mudd College have developed a set of strategies and tips for computer science teaching, including tips for pair programming. We’ve developed our own set of “10 Tips” for making pair programming successful with middle school students, based on our research, our experiences with youth and the work of others in the field. We think it’s likely many of these will work with elementary and high school students as well.
Remember that Pair Programming is just another way of working collaboratively on a project. As students do their pair work, be sure to utilize your own favorite strategies to guide students through the process. For example, check in with them regularly about how they are doing. Assist them with resolving conflicts if necessary. Acknowledge positive examples you see as the teams work together. Encourage students to have fun.
Have you already tried pair programming? What have you found works well with your students?
Have any questions? Feel free to contact me. I love talking with educators about pair programming.
Shannon Campe is a Research Associate and Project Coordinator at ETR. Her work focuses on bridging research and practice in K-12 education. Most of her work is funded by the National Science Foundation. You can reach her at email@example.com