PART
1
Tools and Strategies
• How coding and computer science can be incorporated into core content areas
• What computational thinking means
• How to teach coding and computational thinking across the curriculum
CHAPTER
1
Teaching Computer Science in Core Content Areas
1. Computing is ubiquitous. Universal, high-quality K–12 computer science instruction could provide all students the opportunities they need and deserve to understand the world around them. Early access to this lens on the world is essential for students to build a complete understanding of their world as they learn math, science, language arts, social studies, or any other subject.
2. Cultural and structural barriers block students from pursuing computer science at the college level. Universal, high-quality K–12 computer science instruction could serve as a protective factor for students. Introducing students to computer science before they have developed a sense of self ensures that computer science may be a part of that sense of self.
3. Computer science jobs are high paying and high status. Universal, high-quality K–12 computer science instruction could increase access to the growing number of high-paying, high-status jobs in computer science and related fields. This universal access is an essential step in dismantling the existing systemic barriers in the industry that prevent equitable participation, particularly by women and people of color. (Lewis, 2017)
1. It’s a Foundational Skill
President Obama declared that coding is no longer an optional skill; it’s a basic skill. We teach students about the digestive and circulatory systems not because we expect all students to become doctors, but because we expect engaged citizens to have a fundamental understanding of the world. I would argue that how the internet or a smartphone works is at least as essential as the basic biology that we teach all students. How do we expect students to engage thoughtfully in discussions around internet regulation, information privacy, or the role of artificial intelligence without a baseline understanding of computer science?
2. It’s an Empowering Tool for Self-Expression
Setting aside the essential role that technology plays in society, there’s a perfectly reasonable argument for teaching computer science: it’s fun! More than that, programming is a powerful medium for personal expression unlike anything that has come before it. For students who find solace and expression in art, music, performance, writing, or any other expressive outlet you can imagine, coding can boost their expressive potential.
3. It’s an Integral Part of the Standards
The Next Generation Science Standards (NGSS) explicitly calls out both computational thinking and computer modeling as essential elements of a K–12 science education, though few packaged science curricula incorporate the computer science and programming necessary to support these standards (National Research Council, 2013). If we value science education, computer science is an essential component. While the Common Core math standards don’t feature the same explicit language, they do share deep commonalities with the K–12 Computer Science Framework, particularly the eight math practices (National Governors Association Center for Best Practices, & Council of Chief State School Officers, 2018). Taking advantage of these overlapping practices will give students the opportunity to see mat h as more authentic and applicable as they use it to compose programs that they care about. Additionally, the ISTE Standards for Students, which are designed to guide instruction using technology across all content areas, explicitly call out computational thinking while containing deep connections to other areas of computer science (2016).
4. It’s Core to Digital Citizenship
I have yet to find a school administrator who doesn’t appreciate the need for our students to develop digital citizenship skills, but how many truly appreciate what that means? A fundamental understanding of the internet’s systems and the data they collect is essential for students to understand their responsibilities as citizens. We teach civics because we expect students to be active citizens in our society. Civic engagement requires an understanding of the foundational structures upon which our society is built, as well as the systems of governance that keep it running. How can we expect students to become digital citizens if they have no understanding of the foundational structures of the internet or its systems of governance? How many of our students have any understanding of who controls access to their digital society? Who makes the rules? How can we, as citizens, be active participants in this digital society?
5. It’s a Civil Rights Issue
I would say that a basic understanding of computer science is essential to being an active member of society in the future, but that future is already here. Whether it’s net neutrality, cryptocurrencies, credit card security breaches, the safety of self-driving cars, the security implications of home automation, or any number of other issues, it’s becoming clearer every day that society is facing problems that most of us are ill-equipped to understand, which makes making informed decisions impossible. Those members of the next generation who don’t learn about computer science will be left at the mercy of those who do. Students without a basic computer science education will be excluded from jobs (a civil rights issue of its own), and the ability to understand the technological components of society will define the “haves” and the “have-nots” of the future.
Can I Teach Computer Science without a CS Background?
You’re probably teaching your specific subject area because you have been deemed “highly qualified” to teach it. Maybe your undergraduate degree was in English, or you came to Science teaching after a career as a biologist. More likely than not, you are some manner of subject matter expert in addition to being a master of the art of teaching. So, what qualifies you to teach computer science? You may not have the expertise to which you’re accustomed, but you can leverage your status as a novice to model for your students what lifelong learning and growth looks like. It’s not always easy to learn alongside your students, but it’s the perfect opportunity to practice what we preach.
The All in Computer Science for All
It’s no secret that the representation of women and people of color has been dismal in the technology industry. According to a Gallup poll conducted by Google in 2016, students of color are significantly less likely to have access to dedicated computer science courses at school, or to even have access to a computer at home. Girls are not only less likely to learn computer science, but they’re less likely to even be aware of the CS learning opportunities available to them. The systemic issues that prevent underrepresented populations from entering the field, and subsequently drive many of them out once they make it through the door, must be addressed much earlier. We’ll never reach a place in which everyone has equal access to the world of technology unless we break down barriers and stereotypes much earlier (Google Inc. & Gallup Inc., 2016).
Equity versus Equality
While I take issue with the popular graphic portraying the difference between equity and equality (Shouldn’t we be tearing down the fence?), I do appreciate its ability to clarify the difference between the two (see Figure 1.1). Providing equity means that students receive what they need for success. Many of our students come through the door needing more—whether it’s ...