Good (and Bad) Reasons to Teach All Students Computer Science
In this episode I unpack Lewis’ (2017) publication titled “Good (and bad) reasons to teach all students computer science,” which problematizes common rationales/myths for teaching computer science in K-12 schools.
- 
      
        
          
        
      
      Welcome back to another episode of the csk8 podcast my name is jared o'leary each episode of this podcast is either an episode with a guest or multiple guests or a solo episode where i unpack some scholarship in relation to computer science education in this week's episode i am unpacking a chapter titled good and bad reasons to teach all students computer science this chapter was written by colleen lewis and it is found in the book new directions for computing education embedding computing across disciplines which was edited by fee allen minkley and lombardi apologies if i mispronounced any names right here's the abstract for this chapter quote recently everyone seems to be arguing that all students should learn computer science and or learn to program i agree i see teaching all students computer science to be essential to counteracting our history and present state of differential access by race class and gender to computer science learning and computing related jobs however teaching computer science is not a silver bullet or penacia the content assumptions and implications of our arguments for teaching computer science matter some of the common arguments for why all students need to learn computer science are false some do more to exclude than to expand participation in computing this chapter seeks to deconstruct the many flawed reasons to teach all students computer science to help identify and amplify the good reasons in quotes from page 15. better summarizes chapter into a single sentence i would say that this chapter problematizes common rationales for teaching computer science in k-12 schools now as always in the show notes you can find a direct link to this particular publication so you can purchase the book as well as a link to the author's google scholar profile so you can read more publications by this author and you can find those show notes at jaredeliri.com or by clicking the link in the app that you're listening to this on and while you're on my website you will find hundreds if not thousands of computer science education resources as well as content related other things i'm interested in for example video games and drumming so in the introduction the author describes their passion for computer science education and computer science here's a really important quote that resonated with me from page 15. quote when i graduated from college and started working as a software engineer i sought out opportunities to teach people computer science as a way to share my passion at the time i unconsciously assumed that because i love computer science everyone should learn computer science my view has since changed there are plenty of good reasons for all students to learn computer science my passion for computer science is not one of them end quote that really resonates so i feel the same way in terms of when i went into education i did it to help people learn how to drum because that was something that literally saved my life but what i quickly realized is not everyone shared the same passion didn't matter if i showed them some really cool things that you could do with drumming or if they got really good at it some students wanted to spend the rest of their life pursuing percussion and drumming and others just wanted to do it as a short hobby and that's okay but i didn't understand that when i started i thought everyone needed to have the same amount of obsessive nature around drumming that i did as i've mentioned in other podcasts one of the reasons why i'm reading this paper is because i think it's important for educators of any content area to understand that the content area that resonates most with you that you are very passionate about will likely resonate with other kids but not all kids and that's just a fact and that's okay i had a professor who would point out to the music education students that let's say there were a couple hundred students who were participating in the music program what percentage of them actually went on to continue doing that even if they absolutely loved it in high school it doesn't mean they wanted to pursue it outside of that like for a degree same thing with computer science when i was working with k-8 students some of them it was clear they were going to pursue this for the rest of their life and then for others they just wanted to create something in class and then they were done however as a field when we speak about computer science the things that we say might end up doing more harm or spread some misinformation so as a parallel because of my background in music there was a large organization in music education many years ago that had a campaign that was something like music makes you smarter and it was likely based off of the research around oh if you listen to mozart then it's going to help you improve on your test scores which led to a lot of companies creating content like hey you can have your baby listen to mozart in the womb and they'll become a genius turns out that research was debunked basically what really happened is it was like a stimulus so you could have gotten similar effects or maybe even better effects if you had done like jumping jacks before taking a test as opposed to listening to mozart so this paper is kind of a parallel to that short example that i gave so the author is going to describe two different categories of different arguments for computer science one is on the immediate benefits of computer science and the other categories on the long-term benefits of computer science all right so in the first section on the immediate benefits of computer science the first question that is discussed is can programming teach students to think logically so on page 17 the author points out that chess seems like something that would teach somebody logical thinking and improve their abilities to think logically if they increase their abilities as a competitive chess player then it should help them think more logically right however the author cites study that says well that's actually not the case what instead happened is people who gained expert performance in chess were simply gaining a lot of domain specific knowledge around chess and while this might be important for students to develop cognitively it does not necessarily mean that the logical thinking that is applied in chess is going to transfer outside of chess outside of this specific domain so going back to the example of music makes you smarter yes music can be a whole brain activity but so can many other things and just because you're engaging in more sections of your brain while performing music it doesn't mean that that's necessarily going to transfer over into other domains so for example i have really good hand-eye coordination when it comes to drumming playing video games playing marimba etc but when i first learned how to play squash i was terrible with it squash is like racquetball by the way except more rules and honestly i think a little bit harder you'd think that with all the hand-eye coordination tasks that i've been doing with video games in particular that that might transfer over into hand-eye coordination with squash and no it doesn't completely different domain so it's the same thing with thinking logically so if you're thinking logically with programming while i might transfer over into something that is very connected in terms of a similar domain it's not necessarily going to help you think logically about planning your finances unless that aspect of financial planning is somehow very closely related and easily transferable so here's an important quote from page programming as a way of engaging students in intellectually demanding tasks is reasonable however this does not motivate replacing existing content with computer science computer science is my favorite discipline but that does not cloud my judgment to believe it is the most or only intellectually demanding discipline end quote and that's a really good quote there another thing that i've heard a lot of people talk about with the more competitive nature of music is that it can teach discipline so for example in drum core which is like competitive marching band and drumline and whatnot one of the most frequently sighted things is oh it helps you teach discipline okay well so does learning mixed martial arts so why are we not teaching mixed martial arts in class so whatever arguments that we have in terms of why we think computer science is important we really need to ask ourselves okay but is this the best way of doing that thing however to argue with myself that answer depends on who the kid is so for me the best way to teach me discipline was through music and mixed martial arts and whatnot i absolutely loved developing discipline in those domains but i was less interested in some of the other sports that i tried it could be the same thing for computer science so if we think that thinking logically is very important maybe computer science will resonate with some students but chess will resonate with others but we again need to remind ourselves that it doesn't necessarily transfer outside of that domain now to put a little bow on this here's a quote from page 17 and 18. quote i see the argument that computer science and programming teach people to think as exceptionally problematic for two reasons first it seems to apply that only computer scientists are thinking or thinking logically that seems arrogant at best and trivially false second the idea that computer scientists are thinking logically becomes racist sexist and classes when considering current demographics of computer scientists end quote now when i read that the first time i about spit out my coffee which is weird because i don't drink coffee that is such a good point on that second point in particular if the way that we discuss computer science and computational thinking is that it's going to help teach people to think logically but the people who engage in this are of white male demographics of higher socioeconomic status that could certainly come across as indicating that other demographics don't think logically so that's a really interesting point to consider so next question that the author addresses is can programming help students develop persistence and so in this section the authors basically mentions that in programming you're going to engage in debugging even if you don't want to there's going to be a lot of self-directed iterative learning going on in programming in particular and that this relates to research by carol dweck which talks about fixed versus growth mindsets which i'm realizing now i don't think i've done a podcast on and i really should but one of the interesting things that the author mentions in here is that there are some researchers who argue that actually engaging in these iterative processes while constantly receiving error messages might actually develop a fixed mindset that students are unable to improve their understanding of computer science or programming so they cite a couple of studies in there that sound really interesting now in addition to talking about the fixed versus growth mindset the author also cites duckworth who discusses grit so the grit is the idea of being able to engage in something over an extended period of time persevere through it so here's a quote that resonates with something i mentioned in a previous podcast episode and this is from page 19. quote however arguments for universal computer science education on the grounds of improving grit should be viewed with caution the grit narrative sometimes emphasizes personal responsibility and perseverance in ways that ignore and deny systems of power and privilege that promote and prevent success end quote that's a really good point yes it's good to persevere and have grit learning something can take many many hours not just the 10 000 hour rule which i have a podcast on that i'll include a show notes in it's not just once you reach 10 000 hours suddenly you're an expert at something even though that 10 000 hours is obviously a long amount of time some domains it's more some domains is less and i have a whole episode that specifically talks about that scholarship that i'll include a link to in the show notes we also need to consider the fact that there are some systems in place that privilege some people while making it more difficult for others and so to say that you just need to have some grit in the face of those systems doesn't acknowledge the fact that there are still barriers there that some people have while others do not and asking people to just grit through it doesn't really help address those barriers the last thing that the author mentions is that dweck actually acknowledges that some people will have growth mindset in some domains and then have a fixed mindset in other domains for example there have been multiple times over the course of the last couple of years while i've been slowly learning japanese where i'm like i just don't think i'm gonna get this and i realized oh wait that's definitely a fixed mindset i just need to invest more time and energy into this and the fact that i had that is interesting because when it came to music i never viewed myself as being incapable of improving as a musician even when i was absolutely terrible when i first started i always thought okay well if i invest more time i'll get better and that was true so it's interesting in some domains where i have a growth mindset and then others where i catch myself having a fixed mindset and having to remind myself it just takes time and maybe i need to change my approach to improve in whatever area i'm working on so the author concludes this section by basically saying that while there are some failures that are going to come with programming in particular it's not necessarily clear that this is going to improve like a growth mindset so the next section is on can programming help students learn science and math and here's kind of a summary of this particular section which i do highly recommend reading this is the summary at the very end on page 21 quote the fact that programming instruction can be aligned to reinforce or introduce mathematical and scientific ideas does not imply that all programming instruction will provide this benefit instead it is reasonable to assume that there are opportunities for negative transfer from programming to math and that programming instruction may displace important math and science content the intuition that programming could help students learn science and math is likely based upon the argument that programming inherently requires students to use a type of logical reasoning present in mathematics and science however this argument suffers from the same lack of evidence seen in the appeal to programming as an opportunity to learn to think logically end quote so the second sentence in particular really stood out to me as something that we should consider anytime you are going to integrate one subject into another you're going to need to spend time learning both subject areas and if that integration occurs in only one of those classes that will take away time from learning that particular subject so for example if we're going to integrate computer science into an ela class and if students have never done computer science before like they've never programmed before you're going to need to take away ela time to teach them some basics about programming yes you can do it in a way that situates it in meaningful ways that teaches both computer science and ela at the same time but you're still going to have to spend some time developing skills and understandings and practices and concepts relevant to computer science to integrate it in a meaningful way in my opinion however one way that i think that you might be able to prevent this is if it's a collaboration between a computer science educator and class and a ela educator in class where you can then learn computer science concepts in the computer science class and ela concepts in the ela class and then collaborate together to create a joint project that combines the two doing something like that would mean that you would still spend the amount of time working on computer science in the computer science class and ela in the ela class but then you're just merging the concepts and practices together into a project for both classes to try and do all of that in one class would inherently take away some time from it so for example if you're going to do one project that merged ela with computer science it might take you the same amount of time to do two projects with just the la and not worrying about integrating with cs i don't know if that makes sense to you it makes sense in my brain so i'm going to go ahead and move on to the next question in this chapter which is can programming provide students emotional value agency and motivation so in this section the author cites some scholarship that suggests that programming can help you express yourself which i've talked about a ton on this particular podcast as it's kind of the core of the curriculum that i create which is 100 free and is available at booduppd.org and there's a link directly to there on my website now here's a quote from page 22 on this particular topic quote this argument is stronger than others that require students to transfer competencies outside of the programming context however there may be other equally effective opportunities for enabling students to create and connect my love of computer science might bias me to believe that programming is the best medium for this but identifying the best medium is an empirical question and may vary per student or community end quote again relating this back to my point about teaching drumline is it really resonated with me but not necessarily in the same way with every drummer that i've worked with over the years so yes programming might be an awesome way to express yourself but it doesn't necessarily mean that that is the best way for everyone to express themselves some people might prefer to express themselves through other forms of media or mediums like art or interpretive dance or poetry or playing an instrument etc and while you might listen to those examples and go yeah but you can do all that with computer science yes you're right but it doesn't mean that everyone wants to do that through computer science i love coding music but some people prefer to play it on an acoustic instrument and that's okay i like to do that too next question in this chapter can computer science learning help students understand the world around them so some of the arguments related to this is that like hey computer science is beneficial you need to know how to have a strong password hey wouldn't it be nice if congress actually knew something about you know technology in computer science well you need to be an informed citizen however the author argues that we need to specifically point out the connections that can be made between computer science and the world outside of the classroom so if we are going to say that computer science connects with the world around us we need to be explicit about that and many of the guests on the show that have currently come out and some upcoming guests of some episodes that have been recorded specifically provide some examples of projects that they do that situate a project within their community and that is one excellent way that you can actually explicitly make those connections all right so the next section of the chapter talks about the longer term benefits that are often discussed in relation to computer science rationales so here's the first one in this particular section can teaching students computer science help fill jobs so the author points out that this is one of the most common arguments related to the purpose of k12cs and often motivates administrators community members donors etc to support computer science implementation initiatives quote however this motivation relies on the assumption that our efforts to teach computer science will in fact prepare workers i have seen no evidence that any of the plans for k-12 computer science instruction will directly make students job ready instead this motivation only becomes credible if you expect that k-12 computer science instruction will encourage and support students in pursuing computer science in college end quote from page 25 but if you listen to the episode that released last week which you share cropping as a metaphor for working in the field of computer science we really need to consider is this kind of job that we should promote for all students so the next section is on can diversity improve the tech industry now here's an important quote to consider from page 26 quote the appeal to diversity as a tool for more effective teams is sometimes misunderstood or misused to imply that individuals who are members of groups who are underrepresented in computer science will provide a specific and predictable contribution to a team for example consider the claim that having women on a team will help the team be more collaborative this can lead to differential expectations of people and a meta review suggests that contrary to the stereotype women are not more collaborative than men even if women were on average more collaborative than men there would be women who were less collaborative than most men and men who were more collaborative than most women because of significant overlaps and distributions across cognitive communicative social psychological and motor dimensions a person's gender identity is likely a poor predictor for most characteristics instead it is important to recognize that all individuals have a variety of identities and experiences and that these identities and experiences shape an individual's contribution to a team in diverse and unpredictable ways end quote from page 26 and then a little bit further down in that particular paragraph the author says that and besides increasing diversity among the software engineers doesn't necessarily have an impact on the admin or managers who tend to have more of a say over the direction of things especially if those admin or managers are typically white males as mentioned in the episode that released last week the author goes on to provide some examples of racism that was baked into software products so one example that's provided is snapchat had a feature that allowed users to have blackface or yellowface filters put onto images and so the author mentions that quote it is likely true that if people of color were in positions of power within snapchat these blatantly racist features would not have been released however we cannot use this argument to distract from the responsibility and capability of all humans to avoid blatant racism end quotes from page 26. that is very important quote if we say it's a diversity higher issue and oh we just didn't have enough people on our team who were black or asian and if we did then we wouldn't release this that ignores the fact that the people who were on the team should have raised their hands and said hey this is problematic and here's why so that's an excellent thing to consider however the author also cautions that some of the problems with software and hardware appearing to be racist whether it be facial recognition technology or like hand dryers only working on light-skinned hands instead of dark-skinned hands might not be a result of the diversity of the team but it might be a result of wanting to find the cheapest hardware and software to create the technology with the highest margins for profit so an example they gave is that original cost cutting measures for the crash test dummies meant that the crash test dummy was five foot nine and 172 pounds which was modeled after the 50th percentile height and weight for a male and it wasn't until 2011 did they actually have smaller test dummies in different sizes and while we could argue that well this is gender bias or weight bias or size height bias it was likely just because of cost cutting and aiming for the average without considering the margins which is a good point to consider some of the problems with software and hardware might just be a result of a company wanting to save money and so they went with the cheapest solution that would work for the most people so they could have the highest profit margins so here's a final quote from page 28 on this particular section quote again there are benefits to diverse teams but these benefits are not easily predicted by a single dimension of a team member's identity and our training or software engineers must include an understanding of the historical context of racism and other forms of oppression so that they can push back against cost-cutting measures that will result in unusable biased or explicitly racist software end quote so the next section asks can k-12 computer science help students feel like they belong in computer science courses in college and so the author mentioned some research about how people who were exposed to computer science and engaged in it were more likely to consider it down the road than those who were not and then provide some examples of some colleges like harvey mudd who has different levels of introductory cs courses so like for those with no sum and a lot of experience are able to go into different tracks so they're not all having to take the same thing and engage in the same content and how doing stuff like this helped actually increase their percentages of different demographics enrolled in the courses so increasing access to computer science can help develop a sense of belonging and the last section in this particular chapter asks can k-12 computer science help students compete in computer science courses in college and so this section has some interesting discussions on some prereqs and how those can serve as barriers in some colleges like if they require a specific language over others but it also mentions a section at the end that i want to read that's from page computer science departments it is likely that even more colleges will institute competitive admissions policies as a way to limit enrollments to a number of students that is feasible for the department to serve this could serve to reinforce these structural barriers for students without or with less k-12 computer science access end quote so that's really interesting in my opinion because one of the most common arguments is well there's all these jobs that are open and we don't have people who can fill them so we need to increase the barriers of entry to get those jobs in universities because too many people want them now like i don't get that i understand that universities do that i mean look at the admissions policies to get into a school music the ones that are extremely competitive might not even have a single position open like i believe my wife was the only percussionist who was a freshman that was admitted into the program during her year and that's not because of lack of applications it's just that hard to get into a school of music or at least some of them so if we start doing that with computer science programs i don't know it just doesn't seem to match the whole popular narrative of hey we need more people to do this thing if anything you think you'd get rid of these barriers and say hey anyone come one come all sign up for this thing but i don't know i don't work in university admissions so maybe i'm a naive and if you do think i'm naive there's a contact me button on my website and you can join me for an episode to talk about it alright so i do highly recommend actually reading this chapter i left out a lot despite the length of this particular episode i do include a link to it in the show notes but at the end of these episodes i like to end with some lingering thoughts that i've had or some questions while reading a particular article the thing that i want to ask is okay well this particular article came out in 2017 so what are some other rationales that are used for computer science or justifications that in more or not use as a field it is interesting to note that the idea of jobs was listed as the number one thing that is mentioned for rationales in 2017 and how that's still the case now and i don't think it's done in a way that primarizes because that rationale is problematic and yet it's pervasive i'm curious why that is if you've got a rationale or an argument for computer science that you think the field should discuss more or discuss less consider sharing that on social media and engage in some kind of conversation with colleagues about it so i think it's important for the field to chat through some of these things just as i think it was important for music educators to stop saying that music makes you smarter because it doesn't i do include some links to some other podcasts that i mentioned that are relevant to this particular episode as well as some other resources like a paper that i wrote or co-authored rather and you can find all those at jaredlery.com which has links to a bunch of computer science education resources like the content that i create for boot up pd.org which is 100 free curriculum as well as some drumming and video game content because i'm that kind of nerd stay tuned next week for another episode and until then i hope you're all staying safe and are having a wonderful week 
Article
Lewis, C. M. (2017). Good (and bad) reasons to teach all students computer science. In S. B. Fee, A. M. Holland-Minkley, & T. E. Lombardi (Eds.), New Directions for Computing Education: Embedding Computing Across Disciplines (pp. 15–34). Springer.
Abstract
“Recently everyone seems to be arguing that all students should learn computer science and/or learn to program. I agree. I see teaching all students computer science to be essential to counteracting our history and present state of differential access by race, class, and gender to computer science learning and computing-related jobs. However, teaching computer science is not a silver bullet or panacea. The content, assumptions, and implications of our arguments for teaching computer science matter. Some of the common arguments for why all students need to learn computer science are false; some do more to exclude than to expand participation in computing. This chapter seeks to deconstruct the many flawed reasons to teach all students computer science to help identify and amplify the good reasons.”
Author Keywords
Computer science, education, CS4All, equity, computational thinking, programming, interdisciplinary
My One Sentence Summary
This chapter problematizes common rationales/myths for teaching computer science in K-12 schools.
Some Of My Lingering Questions/Thoughts
- What are some other arguments for teaching computer science that we should debunk and stop using as a field? 
Resources/Links Relevant to This Episode
- Other podcasts episodes that I mentioned or are relevant to this episode - CS for What? Diverse Visions of Computer Science Education in Practice - In this episode I unpack Santo, Vogel, and Ching’s (2019) publication titled “CS for What? Diverse Visions of Computer Science Education in Practice,” which is a white paper that provides a useful framework for considering the underlying values and impact of CS programs or resources. 
 
- How to Get Started with Computer Science Education - In this episode I provide a framework for how districts and educators can get started with computer science education for free. 
 
- STEM Diversity and Inclusion Efforts for Women of Color: A Critique of the New Labor System - In this episode I unpack Scott and Elliott’s (2020) publication titled “STEM diversity and inclusion efforts for women of color: A critique of the new labor system,” which uses the metaphor of sharecropping to problematize the new labor system around STEM education and careers. 
 
- The Role of Deliberate Practice in the Acquisition of Expert Performance - In this episode I unpack Ericsson, Krampe, and Tesch-Römer’s (1993) publication titled “The role of deliberate practice in the acquisition of expert performance,” which debunks the notion of innate abilities within a domain and describes the role of deliberate practice in achieving expert performance. 
 
- The CS Visions Framework and Equity-centered Computing Education with Rafi Santo and Sara Vogel - In this interview with Rafi Santo and Sara Vogel, we discuss informal learning in CS, the CS Visions Framework, equity through social justice pedagogy, considerations for Integration, and much more. 
 
- Unpacking Systems for CSforALL with Leigh Ann DeLyser - In this interview with Leigh Ann DeLyser, we discuss the purpose of CSforALL, considerations for leading people with different visions for (or interests in) CS education, the evolution and future direction of CS education, positive and negative corporate influence on education, thinking through equity from a systems perspective, and much more. 
 
 
- A free paper I coauthored that problematizes the influence of corporations on education 
- Find other CS educators and resources by using the #CSK8 hashtag on Twitter 
 
          
        
       
                 
                 
                 
                 
                 
                 
                 
                 
                 
  
  
    
    
     
  
  
    
    
     
  
  
    
    
     
  
  
    
    
     
  
  
    
    
    