The National Science Foundation (NSF) has invested over $100 million in a new program, Computer Science for All: Research Practitioner Partnerships (RPP) (NSF Grant No. 1745199), which focuses on researcher-practitioner partnerships as a model to foster the research and development needed to bring Computer Science (CS) and Computational Thinking (CT) to all K-12 schools.

The hallmark of the RPP program is to “strengthen the capacity of an organization to reliably produce valued CS and CT educational outcomes for diverse groups of students, educated by different teachers from varied contexts” and the studies have “less prescriptive research designs and methods, with research occurring in rapid, iterative and context-expanding cycles.”

Our latest publication, A Framework for Examining Research Practice Partnerships for K-12 Computer Science Education, shares our codebook for analyzing an RPP’s Theory of Change. This can be used to provide insight into a single project or to compare/contrast multiple RPPs.

About the RPPforCS Project

RPPforCS engages the community of funded partnerships through a Connected Community of Practice (CCOP). Learn more about our community!The RPPforCS project (Using an RPP approach to developing a shared evaluation and research agenda for CS for ALL RPP (NSF #1745199)) seeks to adapt the RPP approach to build the capacity of the CSforAll movement: RPP evaluators and researchers to study, understand, and report on their project efforts and to establish a participant-driven, multi-site research agenda for the CSforAll: RPP program.

RPPforCS Members

RPPforCS members are highly diverse in terms of size, context, research area, and strength of working relationships. This project is engaging evaluators and researchers from the onset of the program to collaboratively develop a shared data set to capture participation data across projects, co-define an RPP research agenda to advance the field of CT/CS educational knowledge, and use the CSforAll infrastructure for collaboration, learning, and dissemination. This approach will lay the foundation for program-wide assessment and learning. In particular, this project seeks to facilitate the community in developing a framework for answering:

  • What are the RPP-specific activities and partnership characteristics that shape the extent to which/ways in which RPPs meet their goals for quality CS education?
  • How do different RPPs define and design around different indicators of healthy RPPs and how do they evolve over time?
    How do RPPs measure their effectiveness at affecting CS education and broadening participation?
  • What is the influence of RPPforCS on the grant-funded community and broader CS education community (including CSforALL)?

Looking to connect with CS for All: RPP projects? Search through our database to find projects working on similar problems or in your geographic area.

Conducting Research as an RPP

Using an RPP approach necessitates different ways of approaching problems of practice and working with research partners than traditional education research. Coburn, Penual, and Geil (2013[1]) identified five characteristics of Research-Practice Partnerships:

  1. Are long-term,
  2. Focus on problems of practice,
  3. Are committed to mutualism,
  4. Use intentional strategies to foster partnership, and
  5. Produce original analyses.

Each of these aspects of RPPs can run up against long-standing cultural norms present in academia and K-12 institutions. Additionally, the cyclical nature of the grants cycle can sometimes pose a challenge for creating deeply collaborative proposals and long-term bodies of work. The Chicago Alliance for Equity in Computer Science is considered a model for the field and an example of a research practice partnership that has evolved over time.

Image of RPP Framework

This graphic[2] visualizes the development of an RPP over time and provides insight into the Improvement Science roots of RPP models. RPPs are intended to be dynamic and iterative, combining technical knowledge, research, and a social-emotional component of trust to enable deep learning through partnership.

Learn more about forming and working within an RPP here:


The K-12 CS Education Research Resource Center is an amazing resource for projects looking to explore and refine a problem of practice, source instruments and items for assessing or evaluating progress, and represents a step toward integrated, field-wide learning. The existence of this repository aligns well with an RPP ethic of data and instrument sharing for collective improvement. We encourage RPP teams (and others!) to utilize the resources found on this site and to contribute to the development of CS Education Research as a field of inquiry.

Outputs of this work include The Intersection of RPPs and BPC in CS Education Compendium, a compendium of ten articles from RPPs sharing their processes and findings.

[1] Coburn, C.E., Penuel, W.R., & Geil, K.E. (January 2013). Research-Practice Partnerships: A Strategy for Leveraging Research for Educational Improvement in School Districts. William T. Grant Foundation, New York, NY.

[2] Developed by Erin Henrick from Henrick, E.C., Cobb, P., Penuel, W.R., Jackson, K., & Clark, T. (2017). Assessing Research-Practice Partnerships: Five Dimensions of Effectiveness. New York, NY: William T. Grant Foundation. Presented to the RPPforCS community on 12/19/18.