Recently, ACM past-president Vint Cerf testified to the U.S. Senate on research needs, and he addressed the need for more CS education.
As a recent president of the Association for Computing Machinery (ACM) and a member of the Google staff, I have been a strong proponent of the proposition that computer science should be a required part of the K-12 curriculum. Every student should have some exposure to the concept of programming, not only because it promotes logical thinking but also because it is important for everyone to understand and appreciate the potential weaknesses in all software-controlled systems. Computer science should be treated on a par with biology, chemistry, physics and mathematics in K-12 and undergraduate curricula, not simply as an elective that bears no STEM credit.
Vint Cerf, testimony to U.S. Senate Committee on Commerce, Science and Transportation,17 July 2014
How do we achieve the goal that Vint identifies, to require CS in primary and secondary school curriculum in the United States? Let's agree that we need schools and teachers to achieve this goal. MOOCs have not yet shown success with early subjects, and completion rates for MOOCs are lowest for students with little prior background. We really don’t know how to use on-line learning to successfully engage the majority of secondary school students in CS education, let alone the greater challenges of reaching all students in high school and in primary school.
The challenges of getting more schools and more CS teachers are highlighted in a recent working paper by the Exploring CS group at UCLA, The Revolving Door – CS for All and the Challenge of Teacher Retention.
This means that fully 45 of the 81 teachers who have participated in the ECS program have experienced a teaching "disruption" which has ended their participation in the ECS teacher community for a year or longer.
What's worse is that losing a teacher often means losing the whole school — no replacement CS teacher can be found quickly enough to avoid losing a year or more. What's the problem? Why are so few teachers being retained as high school CS teachers in LA? Simply requiring or mandating CS in schools doesn't solve this problem of getting enough teachers.
To be clear, it’s not a problem of more professional development. We have far more capacity for CS teacher professional development than we have teachers interested in learning CS. We have to make teaching CS a valued and inviting career.
The ECS working paper cites Linda Darling-Hammond who explains that the real challenge of having enough teachers is getting support for those teachers.
"The main problem is an exodus of new teachers from the profession, with more than 30% leaving within five years, and higher rates of turnover in lower-income schools. An additional problem is the flight of teachers from less-affluent schools to more-affluent schools. This is strongly tied to working conditions — including administrative support and strong colleagues as well as tangible teaching conditions and salaries. Research also finds that teachers leave the profession much faster if they have less preparation before they enter and less mentoring support when they arrive."
In Lijun Ni’s research on CS teacher identity, we heard similar stories from Math teachers who didn’t want to teach computer science — it was the lack of community and support.
"I’m a better Math teacher, just because I’ve had so much support. Whenever I have problems, I can talk with the people that I work with, most of who have taught for many years in Math.…Every day, I’m eating lunch with Math teachers. With Computer Science, I’ve got nobody to talk to."
If we want to teach kids CS, we first have to teach adults CS. We need more teachers who know computer science. We need more administrators and principals who value CS and build support for it within their schools, including mentoring support for new teachers. Yes, we also need legislators to define education policy to value CS so that teaching a science class doesn't take priority over teaching a CS class.
I propose a specific, concrete step to improve computer science education and bring us closer to Vint Cerf's goal: Require computer science as part of the general education requirements for all undergraduate majors in all Universities and Colleges. Undergraduate students would take courses in social sciences, humanities, science, mathematics, and computer science. If computer science is so important that all school children need it, then it's obviously even more important for all students who are choosing career paths that require higher education. Implementing this requirement is far easier than implementing a requirement in K-12, since most Colleges and Universities already have a CS department with teachers who know how to teach CS.
The positive impact of this step is that it makes long-term change. All new teachers will already have had a course in computer science, making professional development in how to teach computer science much easier. Administrators, principals, and parents with undergraduate degrees will have had a CS course that helps them to understand the value and importance of computer science for children.
The ECS working paper ends with an important admonition. The desire to improve computing education in schools is going to lead to short-term, quick fixes. An example quick fix is asking IT professionals to teach CS classes so that something gets offered in schools. That kind of quick fix doesn't do anything to grow support for teaching CS in schools so that teachers are recruited, mentored, supported, and retained. That kind of quick fix doesn't lead to change in how we teach CS, so that we broaden participation in computing and grow a more diverse CS workforce.
We need to plan for teaching computer science for the long-term. Think in terms of decades. We have to create a system for growing CS in schools. To do that, we need to grow teachers and schools, which means that we first need to think about teaching the adults about CS.
Join the Discussion (0)
Become a Member or Sign In to Post a Comment