Yesterday, I got involved in a great Twitter discussion with Brian Aspinall, Jonathan So, and Enzo Ciardelli about coding in the classroom. Yes, I’ve used coding many times with my Grade 1 students. Yes, many of my Grade 1’s are using various coding apps at home (particularly Scratch Jr., LightBot, and Kodable) to create and/or problem solve. Yes, I’ve tried to connect coding to curriculum expectations, particularly those in Math. Yes, we’ve even coded without the use of apps, and with objects in the classroom, to help students understand one-to-one correspondence, directional language, and skip counting. Yes, my students are excited about coding possibilities, and in many ways, so am I, but I also have many questions and concerns.
- Many of the math concepts that connect the most with coding go beyond the Grade 1 curriculum expectations (e.g., exploring the quadrants on a grid and negative numbers). I know that there’s nothing wrong in extending learning beyond the given requirements, but how much time should be devoted to concepts that do not align with the grade-specific curriculum expectations?
- Coding definitely gets students thinking and problem solving, but is this thinking and problem solving connected to the content areas or to the coding? I can’t help but think more about a book that I just finished reading called, Succeeding With Inquiry In Science And Math Classrooms. In the book, the author, Jeff C. Marshall, talks about a possible activity to do in a middle-school classroom: making mouse trap cars. He mentions the importance of spending the time talking about the Science and Math learning, and not the creation of the cars. When I reflect on our classroom coding experiences, my concern is that we’re not talking enough about the math concepts, and we’re talking way too much about the program. How could we change this? While I try to ask questions geared towards the curriculum expectations, and while our full-class discussions align with the Math learning, I still wonder if this is enough.
- Students need time to play, but how much play time is too much? Are the benefits worth the time invested? I know that there is “curriculum learning” that will happen as the students play with coding. Math and Language expectations will be met, even if only incidentally. But as the students continue to play with programs, the expectations addressed aren’t changing that much. This could end up being a lot of time addressing the same expectations, and knowing the needs of my students, I worry if this is the best way to spend our time.
- Students can create the most with programs such as Hopscotch and Scratch, but these are also the most challenging ones to use. How do you decide which programs to use with your students? Do you let students struggle through challenging programs to hopefully learn how to do more, or do you choose different programs, but then have less creation options? I’m a big believer in creating a culture of high expectations for students, but I worry about what might be too high, and how to balance enough failure with enough success.
- I wonder about those students that struggle with coding. Maybe some students don’t understand the language of coding. Maybe some students can’t read the words. Maybe some students need to manipulate the physical model instead of working with the items on a screen. How do we decide when to provide choices and when to make it a requirement?
- I’ve heard the line before that, “All students need to learn how to code,” but when do they need to learn? Prior to this year, I taught Grades 5 and 6 for the past couple of years. Looking at the geometry expectations alone, I could see how coding could be used well in these junior grades. But then again, if coding is almost like a language of its own, should we be waiting until these junior grades to help our students become literate in it? What could the long-term impact be if we started earlier?
It’s these last questions that have me continuing to waiver in my beliefs. I want what’s best for kids, and if knowing how to code at an earlier age might benefit them in the long run, then maybe it’s best to begin in primary. I can’t help but think back to my last blog post on 3-D printers: maybe the time to begin is in Full-Day Kindergarten. The program document expectations are more open-ended, so more time could be invested playing with coding. A teacher or DECE could facilitate small group learning in this area. Coding activities could also align with topics of interest and current inquiries. And if students are exposed to coding at an earlier age, their knowledge of programs would be stronger (even in Grade 1), and maybe more discussion time could be invested in the “academic learning” and not the “coding learning.”
This coding discussion is a challenging one. I facilitate our Junior/Intermediate Coding Club. I continue to play with many coding apps and computer programs on my own. My dad was a computer programmer. I follow and learn from many amazing educators in my Twitter PLN that use coding in their classrooms and code their own programs. I know coding has value, but how should it be used? When should it be used? Is it always a good option? How do you decide? Please help me “crack the code!”
“Many of the math concepts that connect the most with coding go beyond the Grade 1 curriculum expectations (e.g., exploring the quadrants on a grid and negative numbers). I know that there’s nothing wrong in extending learning beyond the given requirements, but how much time should be devoted to concepts that do not align with the grade-specific curriculum expectations? ”
–> If students are capable, keep going! I would never limit them to any curriculum document if they are capable of more. Most of my grade 8 class can pass grade 9 EQAO now. This is a question of human progression. What year is on our math document again?
“Coding definitely gets students thinking and problem solving, but is this thinking and problem solving connected to the content areas or to the coding?”
–> Problem solving is problem solving and applicable anywhere IMO. One’s ability to solve any problem stems from confidence and determination. I’m a big advocate for the Learning Skills at the core of learning – not grades.
I had a strong feeling yesterday that curriculum was a major barrier to devoting time to coding – as it should be. But while it is important and a major part of our job, it takes a very long time to update. No one’s fault. The nature of the beast. If you make a decision that is the best interest of a student, it can never be wrong.
To quote a new kindergarten parent at our school – “The curriculum won’t matter to my 5 year old at 18 when high school is finished. I just want her to learn and enjoy learning.”
That speaks volumes to me.
I’d rather my grade 8s knew where to find math formulas and solve problems when needed, more so than memorizing math formulas.
Thanks for sharing!
Thanks for the comment, Brian! You make some great points here. This is my thinking:
1) While I don’t see a problem with extending learning if students are ready, I don’t think that my students are. We’re still learning how to consistently recognize numerals and count to 100. I have shown some negative numbers in context (e.g., I showed them the numerals when we were looking at a thermometer to discuss temperature), but even this was a challenge for most of my students.
2) Yes, I can see the value in thinking and problem solving, but I’d feel better if these skills were reinforced with more of an emphasis on curriculum expectations. I understand your point about the curriculum documents, and my focus here is not on the grades. But even if the expectations are outdated, we’re still responsible for assessing and evaluating them. While I can see the point made by the Kindergarten parent at your school, I also know many parents that feel very differently when it comes to curriculum. I also have a large number of students with many significant needs. Yes, coding works for some of them, but the Language involved in coding is currently beyond many other students. I also wonder about the time devoted to “talking code” versus “talking curriculum,” how I can use coding to address academic expectations, and how to decide if coding is the best option. Also, does it need to be the option for everybody?
I can see tie-ins to Math. I can see tie-ins to Language. I want the thinking, collaboration, and problem solving that coding allows to happen, but I still sometimes wonder about when and how to use it in Grade 1.
Hi Aviva, I think it’s difficult to answer your questions because I have not taught primary (ever). So I can’t pretend to know about coding at that level. What I can say is that it has many benefits in my grade 6 class. It promotes the skills needed that Brian discussed in his reply. Coding is not the end goal. Promoting problem solving, inquiry and grit are the goals. Does that necessarily have to be accomplished through coding at that age? Difficult to say. Maybe we’ll learn more when there is more direction. But I would never fault anyone for thinking coding can be introduced at a later grade (grade 4?). What can not be delayed are those problem solving skills.
Thanks for the comment, Enzo! Having taught Grade 6 before, I can totally see how to use coding with this age group, and I think that the students’ other strengths (in terms of number sense and literacy skills) would help them make the connections between the program and the academics more. I totally agree with you over the other skills developed through coding (i.e., problem solving, inquiry, grit — I’d even add collaboration), and I think that these are key at all grade levels. I just wonder how these skills can be developed while still addressing curriculum expectations. Coding could be an option, but does it work for all grades and all students? If not, what else could work?
I did not have a whole lot to add to the original discussion as I can see both sides of the argument. I did want to reply to your last comment though. You said, ” coding could be an option, but does it work for all grades and all students? If not, what else could work?” When said this way, I would say nothing. I don’t think there is anything that works for all students, regardless of grade. You know your students better than anyone who would comment. I think as long as you are recognizing that it doesn’t work for your students honestly and not using your own fears or discomfort as the reason (you seem comfortable with technology and challenge so I will assume this is true :)) then you are making the best choice at this moment for your students. Is there a way that coding can be used to push those students who do ubderstand a concept a little further? It could be used as a center or with a volunteer to allow students to extend their learning in an engaging way while ensuring that those who are not ready at this moment are not overwhelmed
Thanks for the comment, Heather! When I asked that question, I didn’t necessarily mean for “all grades and students.” I agree with you that rarely does one thing work for everyone. I meant more is there something else that we could do to develop similar skills (as coding), but may be a better fit for those students that struggle with coding and/or may connect to more curriculum expectations (depending on the grade and topic, coding sometimes seems to work well for this, and sometimes not)? I think that coding has a lot of potential in the classroom, and I’m still considering ways to use it. I love the thinking and collaboration skills that it helps develop in students. For younger students especially, having this small group support may be helpful (at least as they initially get started). That being said, I think that one of the great things about coding is that it helps develop problem solving skills in students. If an adult is there to support the kids, I wouldn’t want the adult to problem solve for them, as I think that there’s value in this struggle. For many students, the “coding struggle” I think is a good one, but is there a point at which students might struggle too much? If so, what might be other options? Coding is a way for students to show their learning. It’s not the only way. For me, the challenge right now is knowing when and how to use it, and how to decide when another option might be better.
Aviva great post as always. I am sorry that I haven’t had a chance to respond till now. Anyways better late then never. Here we go:
Many of the math concepts that connect the most with coding go beyond the Grade 1 curriculum expectations (e.g., exploring the quadrants on a grid and negative numbers).
I would agree but it doesn’t mean that we cannot immerse the students in the richness that these activities has to offer. I could argue that many text forms are beyond grade 1 understanding but does that mean we don’t read them and engage students in that experience? No of course it doesn’t. I think what we have to remember that at the root of coding is foundational skills that our students will need in the future.
Coding definitely gets students thinking and problem solving, but is this thinking and problem solving connected to the content areas or to the coding?
I guess this nicely segways here. Coding is a tool to use. It is the teacher that makes it amazing and connected to the curriculum. I look at Minecraft. At the basic level it is a game but it is so much more then that; however, as a teacher if I do not put the right practises in place it is a determent to my students learning. Just like an iPad or Inquiry learning. Good teaching is Good teaching. We as teachers must assess how to use particular tools effectively for our classroom. We also have to think about how we are implementing them in the classroom that allows engagement and critical thinking.
Students need time to play, but how much play time is too much? Are the benefits worth the time invested?
Did you plan these questions this way. Skills are an essential aspect of anything that we teach. There has to be a sufficient amount of play before real engagement and learning can happen. Students have to be able to have a schema to apply their learning. Now this comes at different rates. Which is why I am never opposed to group collaboration. These skills can also be taught while working on problems and provided through small mini discussions that pop out of the learning happening in the classroom.
Students can create the most with programs such as Hopscotch and Scratch, but these are also the most challenging ones to use.
Yes correct but that can be said about working through problem solving versus worksheets. Students learn the most through problem solving but also struggle the most because it doesn’t always give them the answers. It is okay to be in a disequalibrium. I think the problem is that teachers don’t like being in that state. We feel helpless because we don’t have all the answers or able to troubleshoot when the time arises. Sure it doesn’t make our jobs easier but you need to allow students to struggle in order to give them the best learning.
I wonder about those students that struggle with coding.
I’ve heard the line before that, “All students need to learn how to code,” but when do they need to learn?
I say as early as possible. Even in kindergarten I think they can be using small skills to transfer basic coding to the kids. Learning about rotations, slides, translations through coding terminology. Can never be to young to learn a skill that will stick with them forever.
I think all in all the important skills that the students learn from coding is to be adaptable, problem solvers and critical thinkers. The funny part is the codes we are learning today probably won’t be the codes they learn in the future. However, what will stick is the ability to learn new information and apply it in a creative and purposeful way.
I hope I did this post justice thanks for the post.
Thanks for the comment, Jonathan! I’m so glad that you posted your thoughts here. You make important points about …
– having high expectations for students (and sometimes exposing them to skills and concepts beyond their grade level).
– letting students play, struggle, problem solve, and truly experience that process of learning.
– being okay, as teachers, with not having all of the answers and struggling along with the students.
And these are all general beliefs that I agree with, but sometimes I wonder, when is a struggle too much of a struggle? How long do we let students struggle, and how much frustration do we let them experience, before we question if the program is right for them? These are my biggest issues currently. I’m not sure. I haven’t given up on coding, but I’m not convinced that it works well for everyone (at least not at this current age). I think that there are some coding games that maybe all students can experience success with — to a degree — but without the long-term opportunity to create, are these games the best options? When should they be used?
I always appreciate the great discussion with you! Thanks again, Jonathan!
Oh I agree coding is not meant for everyone. In fact not everyone of my kids where successful or I would often step in and give pieces of codes so they could move on with the discussion.
However, I would say this would again be the same for any teachable moment. Just like you would do with a math problem that is out of the reach of a student the same with coding. In this situation you would differentiate the task so the students could still participate in the discussions.
With my coding exercise on perimeter not all my students completed the code or exercise; however, all kids participated in the discussion because they saw workable solutions.
Disequalibrium is needed for learning but it is up to the teacher to know where and when to step in. I still would put them through the exercise just change the way they do it.
Great points, Jonathan! I found myself doing this more and more. But I think that my problem became that the online version of Scratch and the app, Hopscotch, are way beyond any of my students at this point. Students did all experience some success with the app, Scratch Jr., but there are less possibilities for this app, so the ability to differentiate it is more limited. And maybe that’s why I wonder if coding is right for everyone. At this point, all students have had some experience with it, and most can tell you if coding is a choice that works for him/her, but now comes the question of, “what next?” I’m not quite sure of the answer to this, and I’m thinking it through based on many factors including student needs, curriculum expectations, coding choices, and devices available to make them work. These conversations help me continue to make me think about what could be possible and how to make this so — thank you!
I think the main difference is that I don’t see coding as the applications. Sure they play a big part in it. Where I see coding is in the discussions and problem solving components. So where am I going with this. Basically, while the app may work with some maybe for others is physically moving about and describing what is happening, maybe for others it is just drawing out commands, or maybe for others it is learning the skills and then watching someone else’s outcome. This is where I see grade 1’s and 2’s in coding. I also see coding as a class. Maybe talking to you as you place and manipulate the program. This will allow them to be immersed in the thought process while learning how to do it. Then as they get older they start to learn more. That being said I think you can do a lot with scratch jr and light bot that fits the curriculum of grade one. I just saw someone code a story with scratch jr. pretty awesome.
Thanks for the continued conversation, Jonathan! I can see your point here. I think that I’m struggling more with the students that seem to be stuck on all of these components. As I talk to them, I wonder how much they’re getting out of this, and if there are better options. For most students, there are components of coding that are benefitting them. And yes, for some of my students, using Scratch Jr. for Language is amazing. They are able to code stories: add in text and dialogue, while making their characters move. They love this possibilities, and it’s one that they sometimes choose. That being said, we are running into some iPad/app glitches that are making multi-page stories problematic (freezing). I saw a Scratch Jr. update, so I hope this helps with that.
I don’t want to dismiss coding possibilities. And I do see potential — for many students. I also think that the struggle is good for many more, and the students are learning from this struggle. But I am seeing some limitations from the app (in terms of the math learning/sharing that we can do), and my students aren’t quite ready for the next step (i.e., Scratch on the computers) … so that’s where I wonder what to do next. Maybe it’s about continuing to try and see what happens. I’m not giving up. I’m just trying to work through the many questions that are floating in my head. These types of discussions definitely help with some answers.
I see your point and understand what you are saying (at least I think I do).
Let me see if I can use this analogy, its math (sorry my schema). I give a word problem to my students about addition. Most of my students can handle it but some can’t and some really struggle with it because they don’t have the skills. What do I do?
I know I would first let those who can keep at it, extend where needed (thats the easy one) but then for those that struggle first change the numbers but keep the activity the same. However, those that really can’t enter in, what do I do? I have to really think hard about this. Most of the time I play math games to build those skills. or do a totally different activity. This activity is probably counting cubes, maybe a subitizing activity or finding numbers on a page.
I think this is what you are trying to say with coding. You have kids who get it, some who struggle and many who get lost. For those that get lost I think that they still need more work with basic coding skills. This though may not need to be with the software but maybe more physical like Lisa’s DPA activity one. This can also relate to flip, slides and turns. This can also be an activity in small groups and have a discussion around these small skills.
Of course I would also then have them go back into the program to see what they can do. And as always with time learning will happen. The more exposure to it the more schema and the more they will understand.
I hope this makes sense and is what you were trying to say. If not maybe in the morning.
Thanks Jonathan! This is exactly what I’m saying, this is exactly my problem, and this is really exactly where I’m at. But now comes my next problem: if they really need more play time with the coding, how is this helping address the curriculum expectations? If a little additional playtime will result in long-term benefits, then maybe it’s worth it. But if not, maybe we need to look at another approach. In math, this is the time that we look to something different: like the games or the different activity to address the individual needs. Maybe in the case of coding, these students are the ones that will have their “coding” experience as being more real world: as we work through some of those directional DPA types of activities (I have created some for my Grade 1’s). And maybe, as their other skills develop, we can re-explore coding.
My concern really isn’t about the whole class. It’s not really about that many students. But it’s about enough students that I can’t help but wonder if maybe I need to think about another approach. This blog discussion is bringing me closer to an answer. Thanks!
I think the worry over curriculum is a big one that many feel, which is a hinder for many initiatives to happen and take hold. My problem is that I have heard this many times with Math and with inquiry.
My response is that I always cover curriculum. For me it is about the learning and the skills students will need eventually in life. This comes down to learning coding principles. and to be honest in the end you are still meeting curriculum. There is oral language, writing that can be done, media literacy, math concepts. I have always been under the impression that it is my job to find rich contexts for students to learn in and to find the curriculum links.
I never worry about meeting not finding curriculum because there always is expectations. There is also the process and soft skills that we should be spending time on as well. Now I am not saying devote all your time to coding, in fact I think I have done it three times this year but it should be a part of their learning. It shouldn’t be something we are afraid of because we can’t seem to find all of the expectations or links.
Thanks for the conversation
Thanks for the comment, Jonathan! I totally understand what you’re saying here. I know that there are always links, and that’s why, in the short-run, I’m okay with spending the time on developing some of these skills if I think that it will lead to more in the long-run. But if for some students it won’t, I wonder if it would be better to devote the time to something different. And for students that are really struggling (be it academically, socially, or a combination of the above), maybe their program needs to vary slightly to meet their different needs. It’s ultimately about the kids … right?
Yes, curriculum matters to me. I don’t see it as a checklist though. I know that some of the learning that happens in the classroom goes beyond the curriculum. I think that big ideas and overall expectations matter most of all. But I do think it matters that I understand what I want out of a program, and if that program isn’t meeting the student needs, that I think about different options. It may just be different options for one or two students, but if these other choices are what these few students need, then that seems good to me.
Thank you for the fantastic discussion!
Aviva, I couldn’t agree with you more and I love your passion and devotion to those forgot kids. Of course the curriculum matters but I think we honestly have to remember that it can also be old and antiquated.
What I am saying is that it sometimes (well most of the time) doesn’t really address the needs of learning.
Now what it does do is provide us excellent opportunities to know what students should be doing but not the how and what they are doing to get to it. Just had a fabulous discussion on this (which I am unfortunately sworn by legal degree to not share). However, basically, we need to think more about the curriculum as guidelines that paint pictures for us but not all of the picture. Its like a Monet far away it looks amazing but when you look closely it really doesn’t paint a good picture of what a teacher needs to teach.
Now I do agree that not every student can or will learn coding. I think exposure is important but for those kids maybe they are doing something different. Maybe they are just observing. Maybe they are doing something completely different then the rest and that is okay. I think we have to give ourselves licence to move beyond thinking that every kid at every single moment of the day is to do the same task.
Just some more things to think about.
Thanks for the great discussion, Jonathan! I think that your last point is incredibly important. It’s okay to have students doing different things, and in fact, this is my reality for most of the day. It’s what choice, voice, and differentiated instruction is all about (and that’s regardless of coding).
As for the curriculum, I agree that it is outdated in many cases, but we are responsible for assessing and evaluating students using the expectations. I don’t think we want to create a checklist of expectations. I think that big ideas and overall expectations are key, and sometimes, we need to teach the tool in order for students to use it to demonstrate their knowledge on a topic. That’s okay too.
I think that this blog post was largely inspired by those few students that are struggling, and my wonders about what to do. Our conversation certainly helped. Thanks again!