Teaching Kids to Program Teaches Us a Lot About Programming with Llewellyn Falco
February 16, 2012
coaching pair programming planning mindset retrospectives teams learning fun scrum interviews
The Agile Weekly Crew and Llwellyn Falco discuss teaching kids to program.
- Learning From Teaching Kids To Program
- Feedback Influences Learning
- Feedback Vs Praise
- Willing To Give It A Try
- Kids Embrace Change
- First Lego League Learnings
- Grown Ups and Kids, It’s All People Problems
- Engagment Is Everything
- Kids Pairing To Foster Collaboration
- Schools Seeing Open Workspaces As Enablers of Collaboration
- Joy In Learning
Derek Neighbors: Hello! Welcome to another episode of the scrum‑cast, I’m Derek Neighbors.
Roy vandeWater: I’m Roy vandeWater.
Llewellyn Falco: I’m Llewellyn Falco.
Learning From Teaching Kids To Program
Derek: So Llewellyn, you’ve got a site called Teaching Kids to Program 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?
Roy: 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.
Feedback Influences Learning
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?
Roy: 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.
Feedback Vs Praise
Llewellyn: 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.
Roy: 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.
Willing To Give It A Try
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?
Kids Embrace Change
Llewellyn: 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.”
Llewellyn: One of my favorite quotes from Agile is “Don’t spend 15 minutes talking about something you can do in 10.”
Roy: Derek and I both volunteered with the First Lego League last year…
Llewellyn: Ah, fantastic.
First Lego League Learnings
Roy: …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 to 14.
Roy: 9 to 14, who work together as a team to build a robot to perform a set of tasks that’s standardized across all the teams. Then they show up in a competition and compete against each other, and then they also have to build a research project around that.
Llewellyn: This whole thing was actually implemented by the guy who did the Segway, and it’s a fantastic competition. If you have kids, I highly recommend it.
Roy: One of the things that we noticed when we were working with the kids is we’d try to implement Scrum with them and at the very least start it out with having retrospectives with them every single time. We only met once a week, so we would have a retrospective every single day that they got together, so once a week.
One of the things we noticed is, first off, they were a lot more open with their feelings and exactly what was bothering them than most of the adult teams that we’ve worked with.
Roy: The other thing is that we ran into the exact same problems with kids as we ran into with adults.
Llewellyn: Yeah, to a large extent people are people.
Grown Ups and Kids, It’s All People Problems
Derek: It’s amazing seeing the engineering camp challenges be almost identical between grown [laughs] teams and teams of 9 to 14‑year‑olds because at the end of the day most team problems are people problems. People don’t change a whole lot in their core behaviors from the time they’re nine to the time they’re 99 in most cases without a concentrated effort to try to improve.
That definitely was a learning experience for us. We thought we needed a video series on, “This is you on Scrum when you were nine.”
Llewellyn: [laughs] You also pointed out a really interesting part that I’ve seen emerge as part of a pattern of teaching, where you get them doing something and then you have that retrospective. Sometimes the retrospective is just so that they can see the patterns, that you need to do something two or three times before there is a pattern to detect.
You need to get them engaged, and then you need to retrospect over it to see the pattern. Then, of course, as a teacher I think the job is to guide them to see patterns they haven’t noticed or explain patterns that they haven’t noticed once they’ve had a chance to have done it before.
Derek: Absolutely. Probably the best example of that was this last year when we decided to put all of the challenges up on the board that they could potentially complete. We asked them to go estimate them from a 1 to a 10 how difficult they thought that those were and to do them as a team. So basically do planning poker.
We didn’t explain what planning poker was. We didn’t explain anything about it other than just from a 1 to 10, how hard do you think it was? In about three minutes you had seven kids basically doing planning poker and pretty much being within one step of agreement of each other on almost every single challenge. I don’t think we’ve ever seen an adult team do that.
I think as adults, what the problem is, we have no ability to believe in something anymore, so we have to question every little thing like, “Why are we using points instead of hours?” “I don’t feel comfortable about this.” Whereas a kid, they’ve never estimated anything really before. So to them it’s like saying, “How many pennies do you think are there in a jar?”
They’ve got no problem throwing out some random number. If they’re wrong, they’re wrong. If they’re right, they’re right. Whereas in the corporate world, well, if I tell you that’s a three and then you’re going to calculate my velocity, then you’re going to give me a raise based on whether my velocity’s too high or too low, I’ve got all this baggage that makes me want to not actually give you an estimate.
Llewellyn: And not engage.
Engagment Is Everything
Llewellyn: This is the thing. You’ve got to engage first, and that’s why the first few iterations, of anytime I get a team together and we start iterating, are not indicative of how that team will perform. It’s after three or four sprints that some sort of stabilization occurs and jellied.
Derek: Yeah, absolutely. So what are some other things you’re seeing out there that have your interest right now?
Kids Pairing To Foster Collaboration
Llewellyn: So talked about feedback, but I’ve found that if I get students to collaborate or pair, I think pairing is a very intense form of collaboration. It’s definitely not the only form, but it’s one that serves us very well, that they get a much better feedback cycle going. The environment for learning, there’s less control that’s inherent when two people work together. The control is already shaken.
They’re more willing to just try stuff, and they are constantly giving feedback. One person’s seeing something, but the other person doesn’t see it. You just get this much better environment for learning, and I’m actually surprised. When you walk into a classroom, it’s a very quiet place normally, and I think that actually really hurts learning quite a lot.
I see it in companies, too, where people don’t want to talk to each other. They just want to go into their own cubicle and work. While that might be good if you already know how to do something, I think it’s really bad for learning.
Schools Seeing Open Workspaces As Enablers of Collaboration
Derek: It’s funny that you say that. I think a lot of that’s modeled from the top. We’ve been doing a ton of work recently with school districts, principals within school districts, and superintendents of schools. We’ve got one school that we’re really partnering with on a regular basis, and we’re doing a lot of coaching and training of their staff on ways to be more agile in the classroom and be more twenty‑first‑century minded.
After just a number of sessions, leading a number of sessions with their staff with their principal with them, their principal released. I’ll put it in the show notes. He wrote a diatribe that he said that after coming in our workspace and being here for a fair amount of time, that he thinks it’s almost criminal that he has an office at the school.
He says, “When I go in there and I sit and I’m doing my email and I’m being productive, the thing that I’m really doing is I’m shutting out all my students and all of my staff from being able to have access to me and for me to really be effective.” So he’s actually looking to get rid of his office and start to work out of classrooms of the students so that he’s more available to his staff and to his students on a regular basis so that he’s there.
I think that the important part from my aspect is talk about the power of leadership saying, “I think it’s important to be collaborative. I think it’s important that I’m making myself available and I’m doing that.” He even stated, “I’ve had open‑door policies ever since I’ve been an administrator both literally and physically. But people don’t come in and interrupt me because the fact that I’m in my office makes them think I’m not accessible.”
Roy: Then he talks about, too, how he feels like he’s chained to his office and conjectures to imagine what students must feel being forced to sit in the same desk, shut up, and just pay attention the entire day but not be able to contribute to their own education.
Joy In Learning
Llewellyn: Which is horrible because again, once you start engaging and you start looking at it, that’s joyful. Learning in general is a joyful activity. Just to go into this idea of feedback and collaboration. Another concept that we’re seeing a lot, which is layering, which is you don’t learn everything at once. You build. You layer learning on learning. That’s how you gain skill.
One of the places that I think is doing this better than any other area in the world right now is video games. If you look at a lot of video games, there are a lot less instructions. The tutorial is becoming the game, and you’re getting amazing feedback in these nice little layerings. Through that and interaction you’re learning pieces of the game.
There are some really nice examples out there right now. Portal springs to mind, a really good one. Also, there’s a game called Limbo. Both of them are teaching you something with a very interesting model of instruction.
Derek: Absolutely. So we’re at our time. Any final words or parting thoughts before we head off?
Llewellyn: The first is go and teach your kids to program because it’s really on you to do it. There are a lot of neat resources out there. I know you guys run great stuff out there. Chandler, if you’re online, we have more structured courseware at TeachingKidsProgramming.org. Even if you do no courseware, just sit down with your kids and program with them, it’ll open whole new doors and worlds for them.
Derek: Absolutely. Thanks for joining us, Llewellyn, and we’ll see you in a later episode.
Building Great Products Requires Presence Over Planning
The Agile Weekly crew and Jim McCarthy discuss what it means to be human. That prioritizing presence over planning helps in building great products.
September 18, 2013
eXtreme Programming (XP) Is Really Hard To Do
The Agile Weekly Crew discuss eXtreme Programming. How optimizing for efficiency can kill innovation.
August 07, 2013
Agile Outside Software with Raoul Encinas
The Agile Weekly Crew and Raoul Encinas discuss Agile outside of software, working with customers and trust on teams.
October 24, 2012
The Agile Culture Conference
The Agile Weekly Crew discuss organziational culture, the Core Protocols and culture hacking.
October 17, 2012