Teaching Kids to Program Teaches Us a Lot About Programming with Llewellyn Falco
The Agile Weekly Crew and Llwellyn Falco discuss teaching kids to program.
Derek Neighbors, Roy van de Water and Llewellyn Falco discuss teaching kids to program:
Encouraging continuous learning
Feedback vs praise
Just jump in and do it
First Lego League
People are people
Understanding and detecting patterns
Iterating, engaging and stabilization
Collaboration for tighter feedback
Leadership makes a difference
Learning is joyful
Layered learning / Video Games
Mindset by Carol Dweck
First Lego League
Teaching Kids to Program
Lost in Space
Derek Neighbors: Hello! Welcome to another episode of the scrum‑cast, I’m Derek Neighbors.
Ray Van Norter: I’m Ray Van Norter.
Luann Falco: I’m Luann Falco.
Derek: So Luann, you’ve got a site called teachingkidsprogramming.org and I know you guys are doing a ton of work with different teaching styles to get kids adapted and wrapped up into programming, obviously programming is a moderately complex task.
So for a young mind I’m sure that you have got to take a couple of different approaches.
I’m just wondering if you guys have learned anything that you could maybe take into the coaching or to the agile world or to the adult world about learning styles that you have seen and how you might apply those to teams that we are working with today?
Ray: Absolutely. In fact, I find that both. We take a lot from Agile into when we teach. I teach both kids and adults, and in both cases I’m taking techniques from Agile there. Then I find that in the same way as every time you do a retrospective, that you realize, hey, there’s something else you can do, it transfers back and it creates a neat cycle.
But the first thing that we’ve seen is just this importance of feedback. In the same way as it’s really important to get your code [laughs] in front of a customer, it’s important to make sure that you are getting constant feedback. Not just as to what the kid is doing, but the kid is getting constant feedback or the student is getting constant feedback.
Derek: Absolutely. I noticed that in one of the models that I’ve seen it really talks about how you give feedback can be monumental to fostering additional learning. So one of the theories currently out there is, if you ask somebody to do something and you give them feedback, and the feedback is like, “No, that’s wrong” or “Yes, that’s right,” that you actually discourage them from wanting to learn.
Where if you reward them for the effort placed in, regardless of whether the answer was right or wrong, you say, “That’s a really great job. You did a really good job of trying to solve that problem, but it’s wrong. This is how you solve it,” that you actually encourage continual learning. I know you are really interested in some of the mindset kind of concepts, and I think the author of that book talks a little bit about that as well.
Are you seeing patterns about how you give feedback or how feedback is applied dictates how much a participant will dive in or not, dive in in the future?
Ray: It sounds a little bit the everybody‑gets‑a‑trophy.
Derek: I don’t think it’s really everybody‑gets‑a‑trophy. It’s not saying it’s not OK to tell somebody that they’re wrong or that they’re right. It’s that when you say that all that matters is the answer, that’s where the problem is. If you say the process of getting to the answer, I’m going to reward you for the effort of trying whether you tried or failed, that encourages people to go ahead and expend the effort the next time.
If you have a right answer and I say, “Yup, that’s absolutely right” and I don’t reward you for the effort you put in to get the answer, you’ll actually still be discouraged from wanting to put the effort in in the future to get the answer.
Luann: There are actually two things that are at play here that a lot of times get lumped together. One is feedback, and the other is praise. I think sometimes we consider them to be the same thing. Even if you did horrible, there’s a difference between saying, “Hey, you really suck at this, and you’re never going to be any good at it. You’re just bad” versus “You did bad at this, and you need to work harder at it. You’ll be better, but you have to try harder.”
One part is the feedback. “Did you do good or bad?” The everyone‑gets‑a‑trophy idea that says everyone is good regardless of what they did, and that’s not useful. In fact, that actually is removing a layer of feedback that’s important to the kids but the idea of then also how you praise.
Separating just the answer and the praise is a very important thing because it really is, and time and time again, the amount you work, the amount you practice. These things are really what determines where you end up.
Ray: I think it’s important to keep the two separated as well because in the past we’ve talked about the crap‑filled Oreo, right? Where it’s like the copout on how to give bad feedback is you give them a compliment like, “Hey, you’re doing a really good job.” Then you throw in something about the performance or something bad and be like, “But I notice you’ve been struggling in interacting with others.”
Then you follow it up with another compliment like, “But you’re doing a really good job, so keep it up.” Then the person walks away from the interaction not knowing whether they were rebuked or complimented or really where they stand.
Derek: One thing that I know is really in working with kids I think more often than not for most kids, not all kids, they still have a pretty strong belief that they can learn new things or tackle new things. They seem to not quite give up as much. I know that in working with adults, a lot of times if you encounter an adult that doesn’t know how to program, they say, “Well, I’m just not good with electronics. I could never do that.”
Whereas a kid, you put it in front of them. So are you able to take anything you’re learning with working with the kids and that can‑do attitude of…So are you able to take anything you’re learning with working with the kids in that can‑do attitude of, “I’m willing to give it a try. Even if I’ve never really played with a computer before, I’ll try this programming thing” and take that back to teams who maybe say, “Well, we’ve tried that” or “We can’t do that” or “It’s not possible to do that”?
How do you get them to start to change maybe their mindset a little bit to be a little bit more like a child in being able to try new things?
Luann: That’s actually really important. It’s weird to think about, but as a kid your life is so topsy‑turvy. Everything is changing. Your interests are changing. The people you’re around are changing. Each year you have a new grade, and your grades get bigger. You’re in smaller classes when you’re in kindergarten, but when you’re in high school the school is just massive.
In your world, you’re constantly in this state of flux. But what’s surprising is when you get to like 35 or so, all of a sudden you can do the same thing day in and day out and the same people. Your world becomes very much more controlled and smaller. You’re just not in the same kind of, “Hey, let’s go try something.”
To take just a very extreme example of that, think about in college when you head out to college in your dorm, you literally share a room with just some random stranger. That seems like an OK thing to do. But now the idea that, “Hey, I’m just going to randomly…” having a roommate, that’s a push. But a roommate usually means two rooms in the same house as opposed to the same room.
We have gotten ourselves into a much more controlled place, and that really cuts down on the experimentation. Kids are naturally in a better spot for that. What that means is you can just quicker do the thing that you need to do, which is crucial, which is get them doing something because for any kind of learning to occur, first you need some sort of experience.
Derek: I was going to say I think that’s something that definitely you can take back to teams. I think teams will debate things to death a lot of times when they don’t know. Even if it’s implementing a feature that maybe they’re not sure of the best technical way, they’ll want to beat that to death. “Let’s talk about it.”
Whereas if sometimes you’re going to say, “Let’s jump in and do it,” put out a spike, put out a tracer bullet, do something to just actually get into the doing side of things, how quickly they can come back to that childlike state. Whereas if you let them stay in that corporate state, it’s really easy to come up with a million reasons why “We can’t do that” or “We can’t try that” or “This isn’t viable” or “I don’t feel comfortable with that.”
Where if you just push them off the ledge, they go, “Hey, that was fun. I want to do the ride again.”
Luann: One of my favorite quotes from Agile is “Don’t spend 15 minutes talking about something you can do in 10.”
Man: Derek and I both volunteered with the First Lego League last year…
Luann: Ah, fantastic.
Man: …helping out. I guess if you don’t know what First Lego League is, it’s a program where you have teams of…I think it’s 8 to 14‑year‑olds. Is that right?
Derek: Yeah, 9