Some educators wonder if teaching computer science as early as kindergarten may be forcing children to be more like adults too early. I have wondered the same thing about parts of the Common Core CCSS (i.e., Is it developmentally appropriate for certain CCSS skills to be pushed down into earlier grades?). Children love computer science even in Kindergarten (while the same cannot be said for certain facets of the CCSS). If enjoyment and accomplishment are key to determining the efficacy of CS in the earlier grades, then my teaching experience with elementary school students would argue that CS as early as Kindergarten is worthwhile.
As mentioned in my previous post (see Robots for Resilience ), I assert that robotics promotes resilience. In this post, I’d like to add that effective CS instruction does as well for the same reasons. When completing CS projects, students are faced with rigorous work, but work that is doable with persistence. When they persist and conquer these tasks, they are empowered. This empowerment spills over to other parts of their lives as well and promotes agency.
In addition to promoting resilience, CS instruction is essential. New jobs created in the CS field are expected to grow at twice the rate of other jobs. We are facing a large deficit in the number of employees trained in CS. In 2020, there is expected to be a 1 million person gap between the number of CS jobs and trained people to take these jobs. This is huge. Computing knowledge is needed for a multitude of careers not just those in the technology industries. As a matter of fact, over 70% of computing occupations are outside the information technology industry. CS jobs are well paying (graduates with a computer science major can earn 40% more than the average college graduate).
To quote Hadi Partovi, founder of code.org, “Computer Science is not just vocational it is foundational”. I agree. Developmentally appropriate CS teaches indispensable 21st century skills necessary for students to be globally competitive. Computer Science develops students’ computational thinking and critical thinking skills. When students receive effective CS instruction, they are more engaged and have fun. CS instruction teaches collaboration, project management, reasoning, and presentation skills. When students understand how computing works, they are transformed from consumers of technology into creators of solutions. For further support, see this Edutopia article on Why Teach Coding.
Despite the benefits of this type of instruction and computer science (CS) in particular, it is not universally available in the early grades. With a fully packed instructional day, it is sometimes difficult to fit in “one more thing”. Innovative schools are addressing this problem by embedding CS across content areas. Also some schools are encouraging students to use CS as another medium for learning and demonstrating understanding. Although more research is needed, positive correlations have been shown between learning CS and performance in other content areas.
Furthermore, many teachers do not have adequate training on how to implement CS instruction and may not have a district sanctioned CS curriculum. Only 1 in 4 schools teach CS. Twenty states don’t count CS courses toward graduation. Never-the-less, free training and curriculum resources are popping up on the Internet (see https://code.org/ , Google’s cs first, and Microsoft’s CCGA, Apple, CodeAcademy, CSTA). Companies are also launching in-school / after-school programs, teacher training and curriculum resources (Code to the Future, Project Lead The Way, IDTech)
I am proud of the White House’s Computer Science for All (#CS4All) initiative. Things are moving in the right direction. Yet we still need to increase minority and female representation in CS. If you agree, please sign the commitment page.
What do you think?