Creative Coding
eBook - ePub

Creative Coding

Lessons and Strategies to Integrate Computer Science Across the 6-8 Curriculum

Josh Caldwell

  1. English
  2. ePUB (disponibile sull'app)
  3. Disponibile su iOS e Android
eBook - ePub

Creative Coding

Lessons and Strategies to Integrate Computer Science Across the 6-8 Curriculum

Josh Caldwell

Dettagli del libro
Anteprima del libro
Indice dei contenuti
Citazioni

Informazioni sul libro

For math, science, English language arts and social studies teachers, this book provides the guidance and tools to start integrating coding into classes to complement and strengthen existing instruction. Access to high-quality computer science instruction has grown by leaps and bounds in recent years. Thanks to this movement, more students start middle school with some foundational knowledge of computer science and coding. This new set of creative skills empowers students to express themselves in powerful ways, but students still need opportunities and support to develop and hone those skills. Creative Coding provides the resources teachers need to help their students do just that.This book also includes:

  • Lessons and projects to help students apply computational thinking and coding skills in core academic classes.
  • Examples from classroom teachers in different content areas to support student learning.


This book helps classroom teachers in several core content areas develop activities and projects to encourage computational thinking and coding skills, and to build bridges between those skills and practice. Audience: 6-8 educators

Domande frequenti

Come faccio ad annullare l'abbonamento?
È semplicissimo: basta accedere alla sezione Account nelle Impostazioni e cliccare su "Annulla abbonamento". Dopo la cancellazione, l'abbonamento rimarrà attivo per il periodo rimanente già pagato. Per maggiori informazioni, clicca qui
È possibile scaricare libri? Se sì, come?
Al momento è possibile scaricare tramite l'app tutti i nostri libri ePub mobile-friendly. Anche la maggior parte dei nostri PDF è scaricabile e stiamo lavorando per rendere disponibile quanto prima il download di tutti gli altri file. Per maggiori informazioni, clicca qui
Che differenza c'è tra i piani?
Entrambi i piani ti danno accesso illimitato alla libreria e a tutte le funzionalità di Perlego. Le uniche differenze sono il prezzo e il periodo di abbonamento: con il piano annuale risparmierai circa il 30% rispetto a 12 rate con quello mensile.
Cos'è Perlego?
Perlego è un servizio di abbonamento a testi accademici, che ti permette di accedere a un'intera libreria online a un prezzo inferiore rispetto a quello che pagheresti per acquistare un singolo libro al mese. Con oltre 1 milione di testi suddivisi in più di 1.000 categorie, troverai sicuramente ciò che fa per te! Per maggiori informazioni, clicca qui.
Perlego supporta la sintesi vocale?
Cerca l'icona Sintesi vocale nel prossimo libro che leggerai per verificare se è possibile riprodurre l'audio. Questo strumento permette di leggere il testo a voce alta, evidenziandolo man mano che la lettura procede. Puoi aumentare o diminuire la velocità della sintesi vocale, oppure sospendere la riproduzione. Per maggiori informazioni, clicca qui.
Creative Coding è disponibile online in formato PDF/ePub?
Sì, puoi accedere a Creative Coding di Josh Caldwell in formato PDF e/o ePub, così come ad altri libri molto apprezzati nelle sezioni relative a Éducation e Normes en matière d'éducation. Scopri oltre 1 milione di libri disponibili nel nostro catalogo.

PART
1

Tools and Strategies

This section looks at how computer science fits into regular instruction, and how to support and bring CS into daily lessons. The philosophy introduced in this section will help you transform your classroom and your instructional practice, while providing the context for activities in Part II. The chapters in this section explore:
• 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

While building a computer science program at my own school, I constantly faced the question, why? Why should we make room for something else in an already packed schedule? Why can’t kids just take AP computer science in high school? Why would kids even be interested in CS in the first place? I won’t pretend that it’s easy to implement changes in your school, and one of the benefits of infusing CS into existing classes is that you sidestep much of the bureaucracy that gets in the way of adding a whole new class, let alone an entirely new content area. That said, there are a lot of compelling arguments for bringing CS to the middle grades. Colleen Lewis, assistant professor of computer science at Harvey Mudd College, (2017) argues against some of the most common reasons for teaching computer science (e.g., proposing that computer science teaches logical-thinking skills) and instead proposes advocating for computer science education based on three main tenets:
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)
As an administrator or policy maker, these arguments are both powerful and fairly unassailable. From the perspective of an on-the-ground teacher, however, they lack the practicality required for the administration’s support. In that light, and with the goal of integrating computer science into existing courses in mind, I’ve compiled my top five arguments for computer science integration in middle school.

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.
Teaching computer science to our students is more than a great idea; it’s a fundamental responsibility that our schools can no longer ignore. If we don’t give students access to this knowledge, we’re effectively preventing them from becoming active and empowered citizens of both our digital and physical societies, as the two become ever more entwined.

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.
People who work in computer science related fields are rarely experts, and programmers are always learning, always trying to keep up with their rapidly changing field. As a new-to-CS teacher, you too will always be learning and keeping up with the changes. While a teacher with more content knowledge may start in a different place, the truth is that all computer science teachers are constantly learning and redeveloping their skill sets. Welcome to the team!
If you are still unconvinced, stick with me. In the next chapter, I’ll offer some specific strategies to help, and you can always check the Appendix for external resources to develop and hone your skills. The most important thing to remember is that you don’t need to be, nor should you be, the source of all knowledge in your class.

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).
Middle school is an essential moment in the development of self-image because students transition to a school environment where their interests play a larger role in the development of a social cohort. This makes the middle-school years a crucial time to ensure that technical ability is a part of that self-image. Embedding computer science into required core academic courses is a great step in ensuring that all of our students get the opportunity to try this stuff out early, but availability alone is not enough. To truly address the issues in the field of technology, we need to do more than merely ensure all students have equal opportunities; we need to give them equitable opportunities.

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 ...

Indice dei contenuti