TechSmart Inc.

Comprehensive Computer Science Professional Development: Transforming Teachers into Subject Matter Experts

December 21, 2018

Solving the Computer Science Teacher Shortage

For a district looking to implement computer science education, perhaps the biggest obstacle is a lack of qualified instructors. Coding literacy and computer science knowledge are at a premium amongst teachers, leaving many states with a teacher shortage in the subject area (Cross, 2017). How can a district overcome this deficit to reach all students with computer science?

Our team has tested out various approaches to solving this problem, identifying flaws in many common strategies currently used in schools (see Table 1). Ultimately, our experience strongly indicates that the best answer is to use comprehensive professional development (PD) to give teachers a depth of knowledge in computer science and a fluency in coding.


Table 1: Past approaches for working around CS educator shortages



Teachers Need Computer Science Knowledge

Computer science professional development cannot simply train a teacher to administer a single course.  In order for teachers to effectively deliver instruction and assist their students, they must hold a deep understanding of the subject matter.  Just as biology teachers must know biology or English teachers must speak fluent English, computer science teachers must hold a deep understanding of both computer science and the coding languages that power it (Shulman, 1986).

Thus, truly training computer science instructors requires a more rigorous approach than a brief workshop or self-paced online training session that only introduces computer science concepts.  PD must give them the opportunity to practice the material, grow, and develop their understanding and skills. By the end of PD, teachers must hold a depth of computer science knowledge and coding fluency,

We have developed a comprehensive approach to accomplishing these goals, creating professional development that leaves teachers with a deep understanding of fundamental computer science concepts, strong coding skills, and self-efficacy in their ability to teach the subject matter.  Our approach uses content-focused active learning, taught by an expert via an in-person cohort model and sustained by ongoing support and mentorship, to train any teacher into a computer science instructor.


Content-Focused Active Learning

High-quality PD centers around active learning, with activities that are both practical and hands-on (, 2018).  We accomplish this by guiding teachers through the entire course curriculum they will be teaching, completing each coding exercise and project that their students will encounter.  As in the students’ curriculum, these interactive activities are designed for both engagement and mastery. In each lesson, teachers progress through a series of material that gradually builds their level of understanding in a fundamental computer science concept.  Over the course of one training, teachers will complete hundreds of coding exercises and write thousands of lines of code. By the end of PD, teachers will have both mastered the curriculum they will be teaching and developed deep understanding of the concepts behind it, in an active PD style demonstrated to significantly increase teachers’ student achievement (Greenleaf et al, 2011).

However, for teacher PD, learning the subject matter is not the whole equation.  Pedagogical knowledge – learning how to teach that material – is also crucial (Roth et al, 2011) (Taylor et al, 2017).  During the first part of pedagogy training, our master trainers demonstrate proper best practices for computer science instruction, giving teachers a helpful model (Heller et al, 2012).  Then, teachers participate in mock-teaching sessions to try out the pedagogy themselves. These give teachers the opportunity to practice and develop comfort with the teaching material and methodology before they are required to perform it in the classroom.  This process of applying pedagogy to teachers’ own specific practices and experiences is central to good pedagogy PD (Van Driel and Berry, 2012).


In-Person Cohort Model

Our professional development takes place in-person, where a master trainer leads a small cohort of teachers in learning computer science material and pedagogy.  These master trainers have the combination of subject matter expertise and teaching experience necessary to guide teachers towards their coding certification. Just as teachers of core content learn from professors with expertise in their subjects, computer science teachers should learn subject matter from computer science experts (Powell et al, 2010).

An in-person model enables the trainer to support teachers in real-time while creating a positive and rigorous classroom environment.  Where asynchronous online training can result in teachers feeling discouraged or frustrated with challenges, in-person training can give teachers the support and encouragement they need to overcome them.  Any given district will likely hold teachers with diverging levels of computer knowledge and confidence, so an in-person model with a master trainer who can differentiate instruction is critical to accommodating all teachers.  Just as differentiation benefits all students, it also improves the outcomes of professional development (Konen, 2016).

In the cohort model, a small group of teachers work through the same material together.  By allowing teachers to share ideas and collaborate, this model increases the growth of both teachers and their students (Lara-Alecio et al, 2012), especially in tech-focused PD (Desimone et al, 2002).  We provide assistance for growing each cohort into a professional learning community for its district, where teachers can develop their instructional styles, build a positive culture around CS education, and benefit from each other’s ideas and experience.


Sustained Training and Mentorship

Successful professional development must be sustained over time, giving teachers time to reflect and adapt, rather than being compressed into a single workshop (Darling-Hammond et al, 2009).  Our PD model includes a new professional development course for every new course a teacher teaches, so that they can learn computer science material at an appropriate pace and continue to develop over time.

A mentorship model is important to help teachers grow, by enabling them to engage in an ongoing cycle of feedback and self-reflection (Powell et al, 2010) (Landry et al, 2009).  Thus, after the training and into the school year, teachers who complete our PD continue to receive one-on-one support from our staff of computer science experts. Teachers check in, share feedback with their mentor, and receive personalized assistance.  We also help teachers find other opportunities for feedback and discussion by facilitating the formation of their professional learning communities.

Feedback is not only important for the teachers’ own development – it is also critical for the success of the PD program as it continues to grow.  Every aspect of the PD program described in this article, while grounded in best practices, has evolved based on input from teachers, whether in the form of performance assessments, surveys, or direct feedback.  After all, not only are teachers the audience of PD, they are also experts on instruction in their own right. Therefore, good PD grows and adapts with teachers and their experiences.



We believe that knowledgeable teachers are at the center of effective computer science instruction.  In order to train teachers to be computer science instructors, professional development must be rigorous and comprehensive enough to provide them with a depth of knowledge and coding fluency.  The collaborative and progressive active learning model we have described is showing overwhelmingly positive results in districts across the United States, and it is a top priority of our team to continue communicating with the teachers involved and finding ways to improve computer science teacher professional development.


Works Cited

Cross, Freddie. “Teacher Shortage Areas: Nationwide Listing: 1990–1991 through 2016–2017.” U.S. Department of Education. (August 2016.) Available:

Shulman, Lee S. “Those Who Understand: Knowledge Growth in Teaching.” Educational Researcher, Vol. 15, No. 2. (February, 1986.) Available:

“What is Professional Development for Teachers?” (Retrieved: December 10, 2018.) Available:

Greenleaf, C. L., Hanson, T. L., Rosen, R., Boscardin, D. K., Herman, J., Schneider, S. A., Madden, S., & Jones, B. (2011). Integrating literacy and science in biology: Teaching and learning impacts of reading apprenticeship professional development. American Educational Research Journal, 48(3), 647–717.

Roth, K. J., Garnier, H. E., Chen, C., Lemmens, M., Schwille, K., & Wickler, N. I. Z. (2011). Video-based lesson analysis: Effective science PD for teacher and student learning. Journal on Research in Science Teaching, 48(2), 117–148.

Heller, J. I., Daehler, K. R., Wong, N., Shinohara, M., & Miratrix, L. W. (2012). Differential effects of three professional development models on teacher knowledge and student achievement in elementary science. Journal of Research in Science Teaching, 49(3), 333–362.

Van Driel, Jan H. and Amanda Berry. “Teacher Development Focusing on Pedagogical Content Knowledge.” Sage Journals. (January 1, 2012.) Available:×11431010

Powell, D. R., Diamond, K. E., Burchinal, M. R., & Koehler, M. J. (2010). Effects of an early literacy professional development intervention on Head Start teachers and children. Journal of Educational Psychology, 102(2), 299–312.

Landry, S. H., Anthony, J. L., Swank, P. R., & Monseque-Bailey, P. (2009). Effectiveness of comprehensive professional development for teachers of at-risk preschoolers. Journal of Educational Psychology, 101(2), 448–465.

See All White Papers >