Behind The Tech with Kevin Scott - Alice Steinglass: Code.org expanding access to computer science
Episode Date: July 21, 2018In this episode, Microsoft CTO Kevin Scott sits down with Alice Steinglass, who leads Code.org. Code.org is a nonprofit dedicated to expanding access to computer science in schools and increasing th...e participation by women and underrepresented minorities. Every student in every school should have the opportunity to learn computer science, just like biology, chemistry or math. Find out how this amazing organization is making a difference.
Transcript
Discussion (0)
It was an 8086, and at the time,
8086 was already out of date, but I had one.
It wasn't until about senior year in high school
when I realized what I could do with it.
I had a little brother, and so I made it so that when he
tried to log into the computer,
it would just beep really loudly.
Then it would put up
this huge ASCII warning error that was like, intruder, intruder.
Intruder alert.
Intruder alert.
This intrusion has been logged.
It wasn't actually logged, but, you know, it looked scary.
You're going to see the future.
Hi, everyone.
Welcome to Behind the Tech.
I'm your host, Kevin Scott, Chief Technology Officer for Microsoft. In this podcast, we're going to get behind the future. Hi, everyone. Welcome to Behind the Tech. I'm your host, Kevin Scott, Chief Technology Officer for Microsoft.
In this podcast, we're going to get behind the tech.
We'll talk with some of the people who made our modern tech world possible and understand
what motivated them to create what they did.
So join me to maybe learn a little bit about the history of computing and get a few behind
the scenes insights into what's happening today.
Stick around.
Today, I'm joined by my colleague, Christina Warren. Christina is Senior Cloud Developer Advocate at Microsoft. Welcome, Christina.
Thank you so much. I'm happy to be here, and I'm excited to learn more about today's guest.
Yeah, so we're having Alice Steinglass on the show today. Alice is the president of Code.org, which is an organization doing stuff that's super near and dear to my heart. So they are trying to teach every child how to program. And they partner with teachers in K-12 across the country and increasingly across the globe to try to help make computer science a part of the K-12 curriculum.
And you have a lot of similarities with Alice, right?
Because you also have an organization that has a similar mission.
Yeah, I do.
So one of the things that I've been trying to do,
and like this podcast is a little bit of a reflection of that,
is to show the truly diverse set of faces
and tell the diverse set of stories that lead people into computing and what their
careers look like. Because when I look around me and like I see all of the amazing people who are
helping to build the technology that we all depend on, it's not this monolithic thing.
There are just so many different folks, genders and ethnicities and folks who came from, you know, like their parents were college
professors to, you know, folks like me who no one in their family went to college. And it was
sort of an interesting quirk that they ever found their way into computing. And one of the things
that we know both from my work at Behind the Tech and my family foundation is that, you know, the earlier that you set this spark of
interest in a child and the more of the barriers you get out of their way to pursuing that as an
interest and maybe ultimately as a career, like the happier, more successful they'll be.
Definitely. And like a lot of people, I have kind of a unorthodox path into getting into tech.
I kind of got into it because I had that sheer force of will. But I think about, you know, kids that I went to school with, and if they'd had those opportunities
that were accessible to them, like the way that Code.org is making things accessible now,
how different things might be.
Yeah, and sometimes your journey can be sensitive, so to speak. So, you know,
like one thing can completely change your path. Like with me, I was lucky enough to get into a
science and technology high school when I was lucky enough to get into a science and technology
high school when I was a senior. If I hadn't had that experience, I don't know what my career would
have looked like, whether or not I would have chosen computer science as a major when I went
to college or maybe even whether I went to college at all. So I think what that tells me is let's do
everything humanly possible to expose kids to as many of these opportunities as possible.
It's not that I think everybody should be a computer scientist,
but you should at least have the opportunity.
Thanks for chatting, Christina.
We'll reconnect later at the end of the show.
Coming up next, Alice Steinglass.
Alice is the president of Code.org.
Her teams build curriculum, tools, and software
to support introductory computer science classes
for students from kindergarten through high school.
They also partner with education and software companies across the industry to run the Hour of Code,
a global movement reaching tens of millions of students in over 180 countries.
Alice, welcome to the show.
Thank you.
So, one of the things that I would love to start with is your journey.
So, how did you get into computing?
I'm so lucky to be here, but my journey was not the journey that a lot of people had.
I didn't play with computers from the time I was little.
I didn't take them apart for fun.
I actually got into computer science because my school taught it.
And this is your high school? Yeah, my high school. And, you know, I didn't really know what I was signing
up for. I was into math. I was into other things. I said, okay, you know, I'll try this. I hear you
can, you know, make things with it. And I took a class and I loved it. I had a final project where
I built a game called Snake, which everybody, you know, is sort of similar to Tron. Everybody built it back then.
But I finished it.
It was fun.
I tested it.
I tested it.
And then my teacher ended up staying up like all night testing it and found out that the high score could go even higher.
It broke if you had more than like five digits in the high score.
And I said, how did you find that?
And he said, we were playing it all night.
And, you know, what other class do you get to make something where your teacher plays it all night?
Yeah.
And so was it the whole thing?
Was it the technical challenge of writing the code?
Was it the fact that you made something that someone was a little bit addicted to?
I think it's all of that.
I think, you know, for me, it's sort of like the best of math and art and English and all of that put together.
I always liked math.
But math, most of the problems have an answer.
There's no creativity.
It's, you know, here's a challenge.
Can you figure out how to find the tip top of this curve or something?
In computer science, it had that same sort of logical backbone, but the problems were
open-ended.
You're never done with a project, even in real world, right?
When we're building software, we're never done with it.
And so we're always making it better.
You can always improve it.
And there's this blank slate aspect where you can create something.
And I loved art.
I love creating.
And I think computer science is like creating but with logic.
And then it gets to move at the end, which is kind of cool.
Yeah, it's super cool.
So when did you get your first computer?
When did I get my first computer?
I had a computer when I was younger.
I was lucky.
My father's office was selling off cheap computers, older computers.
And so they sold them to the employees for, I think it was like $50.
He got me an old computer.
It was an 8086.
And at the time, 8086 was already out of date, but I had one. And it just sat in my room. I didn't code it. I didn't program it. I used it. I wrote papers on it. It wasn't until about senior year in for it, I had a little brother, and I made it so that when he tried to log into the computer, it would just beep really loudly. And then it would
put up this huge ASCII warning error that was like, intruder, intruder. And then, you know,
of course, it named him because there's no other possible intruder in my house other than my
brother. So it would say, Seth, you are trying to break into this computer. This intrusion has been logged.
It wasn't actually logged, but, you know, it looked scary.
Yeah, and this is the thing that really amazes and interests me about computing.
There's this notion, I think, in the minds of a lot of people that there is one stereotypical
path that you're like a nerdy teenage white boy and you get your machine when you're
13 years old and you start writing your first code and, you know, this notion that you have
to be a prodigy to get into compute. But like when I actually talk to people, everybody's story is so
different. Anders Heilsberg, who we interviewed in a previous episode, he didn't start coding
until he was in college.
You know, so some people early, some people late, and the motivations are all over the map.
Some people just love the creative aspect.
Some people love the fact that they can, like, make the machine do something.
My kids love that.
It's like, okay, I can tell the machine what to do.
I can't tell mom and dad what to do, but the machine will listen to me.
Yeah, absolutely.
I think it was a little intimidating for a while because there's like this language that goes around computers.
And there's this barrier where you feel like if you don't speak the language, then you probably can't learn computer science.
When the truth is you absolutely can learn it.
And the language is just a sort of false barrier.
I went to college.
I heard all these guys talking about things like bulletin board systems in the 90s,
and it was like a thing then, and they were all on it.
And I have never been on a BBS in my entire life.
And you'd think, okay, BBS is some technical word,
and I can't possibly code if I don't know what a BBS is.
And it turns out that a BBS is just like Reddit, but in the 90s.
Yeah.
And you absolutely don't need to use Reddit to do
computer science. I mean, I love computer science. I love the logic. I love the challenges. I love
building. But to this day, I still have not done BBSs, and it's okay.
Yeah, no, it's super okay.
Right. And it's this language thing. It's this language barrier that just,
that makes you feel like you can't, but you absolutely can.
Yeah. And so, from your senior year where you took your first computer science course, what was next?
So I went to college, and at that point, I was already into it.
And actually, that's not just me.
That's really common.
What you see is that women who take AP computer science in high school are 10 times more likely to take it in college.
And that's one of the reasons we're fighting so hard to get computer science offered in high school is because it helps dispel these notions.
It helps make you feel like you can do it.
So I went to college, and I knew I wanted to take computer science.
I majored in computer science in college.
I did the typical startup on the side.
What was your startup?
It was dynamicfeedback.com.
We partnered with a professor who was doing management consulting and worked on how do you help people take 360-degree surveys to learn how to be better in the workplace.
It was interesting.
It was fun.
Like everybody's first startup, we totally underestimated the amount of code that we need to get rid of to do what we thought we needed to do.
We worked all night.
Part of it for me was the experience of learning that a company is more than just code.
We had to figure out things like customer support and lawyers, and I had to find a space.
Yeah, really unsexy stuff.
Yeah.
You know, where are we actually going to sit?
So that was interesting.
I ended up coming out to Microsoft after that, and I worked on.
How did you decide on Microsoft?
What year was this?
This was 2001.
Okay.
And I was working on the first version of Xbox.
So super exciting.
It was super exciting.
And then I got to work on the first version of Xbox Live.
And, you know, what's weird is I'm not a hardcore gamer,
but it was still a really interesting set of problems.
And I think sometimes not being a hardcore gamer actually helped.
I was working on the high score system for Xbox,
and I kept talking to people
and everybody had a way we should do high scores.
You know, they have to work like this
because they work like this in my favorite racing game.
And they have to work like this
because they work this way in my favorite shooting game.
And coming in as sort of a neutral person,
I said, no, I'm going to look at all the games
and understand how high scores work across everything.
And I went and played 50 games and learned about how high scores worked in every game
and talked to a lot of people and then designed a system to allow any game on Xbox
to use the Xbox high score system.
So it was interesting.
Interesting work.
And did you have a course charted as you were, you know, sort of going one thing to next?
The reason I ask is I think everybody has such a different path through
their career in computing, and they're all good and interesting. I think in retrospect, I could
probably tell you a story, but the reality of it is that I think a lot of it is happenstance. A lot
of it is you don't know. You try something, and you find out you like it or you don't. The one
thing that I would recommend to young people who are starting their career is to try some different things.
I think you can get stuck in one thing pretty easily and not even have a plan that that's what you're going to do.
You just end up doing it.
And the easiest time to switch and try some new things is in your 20s when you're not an expert yet in one particular field.
And so one of the things I did do was I tried different technologies.
So I worked in Xbox.
I worked on Live.
I worked on services.
I was in charge of all of the APIs for Xbox Live across the board,
which is really interesting.
I went from that to looking at the tool chain that developers use
and working on X and A before it was X and A.
And then I went from there.
I said, you know, what's the opposite of everything I've ever done?
Right?
I've been working on more of the APIs.
I haven't touched enterprise software
and enterprise services.
And I just want to know
what the other side looks like.
So I went to Office.
I worked on a Microsoft project,
partially because it was just a very different space.
And I figured this was a good time
to learn about a different space.
And I had a lot of people
who thought it was the most insane thing they'd ever heard, right? Like, why would anybody leave
Xbox on purpose to go work on a project? But I actually found it really fascinating and interesting.
Understanding about how do companies make purchases and what does it mean to sell into
enterprise sales and how do we make workplaces more efficient and what does it mean to sell into enterprise sales? And how do we make workplaces
more efficient? And what does business software look like? I thought it was a really fascinating
space. It sounds like one of the things that has driven a lot of your journey is just curiosity.
You sort of explored a bunch of different things, startups, a ton of different things at Microsoft.
Were you the kid that was like taking all your mom's stuff apart or asking five million questions?
I mean, yes, but I think we all are.
Yeah, you think so?
Yeah, I think kids are naturally curious.
I think we all want to learn.
I think we all want to do that.
I think there are barriers that hold us back,
and some of those barriers
can feel more real than they are,
especially in tech.
It's a booming space.
There's a million jobs right now. Everybody's looking to hire. When I'm mentoring people,
I feel like talking to young people in tech, sometimes they're afraid to make the choice
to try something new or to change, but it's sort of a false barrier they've put on themselves.
One of the things that really strikes me about the industry over the past, let's just say, 10 or 15 years is I think in some ways we've gotten more complex.
The number of programming languages, the number of frameworks, the whole ecosystem is just bigger.
But in a very real sense, it's easier than it ever has been to go make something with code or with technology.
When I was in college, folks had this notion that, like, oh, my God, like, coding is so hard.
You have to go get this degree.
You have to practice.
And to get really great at anything, all that's true, but my kids can go make interesting things right now without a computer science degree because the tools that they have are so powerful.
Is that something that you're seeing, helping students get into computing?
Absolutely.
There's level of relevance, right?
You know, when I was a kid, I made a game from my calculator that was – I made two.
I made a game, and I also made a formula
solver cheat sheet kind of thing, right, that like helped you with your physics formulas. And this
wasn't going to be the thing that took over America. But it was popular among all the students
in my class, right? And I think there's the same thing today. We see kids making games. There's
some of those things are just not that complicated, right?
Yep.
So students have the potential to make things that are definitely cool.
They're not as complex as an Xbox game, but they're cool.
But you also see that there's a lot of space for things that are locally relevant.
You know, like some of these kids' apps, like there's one with their teacher's face,
and you could, like, feed the teacher ice cream, and, like, the teacher got a kick out of it.
And it's fun, and it's cute, and it's relevant in that classroom. It's relevant in that school. You know, your friends are all going to try it out. I think it gives you a taste
of something without having to be an amazing artist. Just like anything else, there are these
steps. Let's talk a little bit about what you do right now. So, you're the president of Code.org.
So, tell us a little bit about what Code.org does.
So we build curriculum. We do professional development for teachers. We do advocacy work.
But our goal is that every child should have the opportunity to take a computer science class in K-12.
I was shocked, especially from the tech industry, I was shocked to hear that most schools today
don't teach computer science. And it's not even that most kids don't take it. It's their school doesn't
teach it at all. So even if they want to take it, they can't. And this disproportionately affects
students in high-need schools. It disproportionately affects underrepresented minorities and women who
are discouraged from taking these classes.
And the result is that because they never get this introduction in K-12,
it's really hard to start after that. It's really hard to start in college, so they may never go into the field. And even if they go into another field,
they don't have that background in computer science. And so our goal is that every school
should offer this course so that every child has an opportunity to take it.
At this point, we're the most popular computer science platform curriculum in K-12 in the
country.
About 25% of students actually have an account on code.org.
So we're reaching a lot of students, but there's a long way to go.
Yeah.
And so how early should we be teaching kids computer science?
So this is totally different from how I started, but our recommendation is
actually to start in elementary school. And there's some good reasons for doing this. Let me start by
talking about how we teach about biology today, because I think it's a really good analogy for
how I think about computer science education. So every child, when they go to elementary school,
gets to learn that they have bones, they have a digestive system,
just the basics of like, how does my body work? We don't do that because they're all going to be doctors or nurses or EMTs. We do that because they're going to live with that body for the
rest of their lives, and they should know how it works. And when they go to middle school,
maybe they learn more about it. In high school, a kid can take biology or AP biology. Even after they take all of those
courses, all the way through K-12, they're still not qualified. I don't trust a high school student
who's taking AP bio to do anything to me. So there's still more work if they want to be a
professional in the field, whether it's a nurse or a technician or anything. Computer science is
the same way. Every kid is going to be surrounded by technology their whole lives. We already have phones in our pockets. Who knows where they're going to be when they grow
up? The same way we get to know that we have a digestive system, they should understand what is
the internet? What is the cloud? What is data? How does this phone work? It's not a magic box that
does magic magic. It's a computer. And what is a computer, right? These are just basics that should be part of our education system.
And so I think of it in a very analogous way.
In K-5, we get to teach the students, you know, what are these things?
What is technology?
And then when they get to middle school, maybe they take more.
If they're interested, they can take an AP computer science class in high school.
And at the end of that, they're still not a programmer.
They're going to go on and take a two-year degree.
They could take a four-year degree.
They could become a lifelong computer scientist.
But no matter what they do in life, it's useful to know how computers work.
And so the same way we teach our kids how the body works, that's sort of how we think about teaching it in elementary school.
There's another reason to start so young, and that has to do with
supporting diversity in computer science. What we see is that women tend to become less interested
in the STEM fields around middle school, early high school. In computer science, it's between
about 12 and 14 where they lose interest. And so what we want to do is reach them before that year
so that while they're still interested in learning these things, do is reach them before that year so that while they're still
interested in learning these things, we can show them what it is so that if they're interested,
they can keep going. So there's a bunch of pieces here. Part of it is encouraging them,
thinking that they'll be good at it, getting that encouragement. If they're very confident
in their ability to do it, they're four times more likely to go into computer science or take
computer science classes than if they aren't.
Girls right now, oftentimes, they don't get this opportunity in elementary school. And so,
what happens is when they're thinking about taking it in high school or middle school,
they do it just based on the zeitgeist of what people tell them that they're going to be good at.
Right.
And unfortunately, what we see is that they're often told they won't be good at
computer science. Teachers are two and a half times more likely to tell a boy that he'll be
good at computer science than a girl. And it's not because they're against it. You know, these
teachers are supportive, they care. It's just these cultural norms are embedded in our society.
Well, and kids are also pretty good pattern matchers. One of the things that I've noticed
disturbingly with my own kids, so I've got an eight-year-old and a 10-year-old right now, and very, very early when they were 3, 4 years old, they would sort of look around at the world and start making these sort of classification decisions. thing. And this is without anything in our household telling them that thing A and thing B
has a gender association with it. It's like just them sorting things out. And one of the things I
love about what you all are doing is there's this bootstrapping problem that I think you have to
solve where we just sort of need more three and four-year-olds seeing seven and eight-year-olds
being successful in a computer
science curriculum sort of helps them decide to do that when they're just a few years older
and up the entire stack.
That's absolutely true. And you see it when you go into the classroom. So, you take a bunch of
second graders. They don't have a stereotype yet that computer science is a boy thing.
Yeah.
Right? They're too young to think computer science is a boy thing.
Yep. They probably don't even know what computer science is, right? Right. They just see like, hey, we're
going to make some stuff today. Yep. And they're so excited about it. Our classes, when you look
at those elementary school classes, they're half female. The kids are all excited. They're super
into it. We have a little tool at the end that we call it our funnel meter. They can give it like a
thumbs up, thumbs down at the end of every activity. And the girls actually give it higher
funnel meter ratings than the boys do.
The girls are into this, and they're into it young.
And so when we can get them before they've got those stereotypes, it can make a huge difference in terms of giving them the momentum to keep going afterward.
I see the same thing you see with my own daughter.
But she's also excited about computer science because she doesn't see it as a boy thing.
And even if you look back in history, computer science used to be a female thing.
Yes.
It's just flipped, right?
We forget sometimes from the very beginning, the first programmer was a woman.
The first programmer was a woman, Ada Lovelace, back 100 years ago.
And then you look in the 50s, in the 40s, computers were women and computer science
was a female.
The stereotype would have been women.
And then it's men.
And we can get back to a place where it's both.
We can get back to a place where we look at it and we say, no, no, computer science, it's something that everybody does.
There's no reason it's one or the other.
But it's not just teachers.
It's also parents.
It's social.
It's friends.
Like, let's say there's an after-school program.
You can just see this. You know, mom says, oh, Like, let's say there's an after-school program. You can just see this.
You know, mom says, oh, look, you know, there's some after-school classes.
Bobby, it looks like there's a coding class after school on Thursdays.
Do you want me to sign you up?
Right?
Emily, it looks like there's a dance class on Tuesdays.
Do you want me to sign you up?
It's so easy.
They're not thinking about it.
They're just trying to find activities for their kids.
And so when we do it after school, what we see is that same skew where boys are more likely
to get signed up after school for computer science. If we do it in school, we don't see that.
And so that's why we want to start an elementary school.
Yeah, which I think is awesome. Because sometimes when you're focusing later,
it's just really, really hard. I had this friend call me up. He was like,
I'm trying to get my daughter to stay enrolled in her AP computer science class.
She was a senior in high school then.
She just didn't want to be in this class because she was the only girl in there.
That's so hard.
And this is in Silicon Valley.
Yeah.
And what wound up working was connecting her with a bunch of really successful women computer scientists, software engineers who, you know, were having a
really great time in their career. And she stayed in AP computer science class. She like went off
to university. She majored in computer science, Dean's List student, you know, is now in a
professional association as a software engineer at a tech company. And that whole thing is hard
to scale. What you would want to do is, like, do that for everyone.
But it's so hard when you're starting later, whereas starting earlier, you can maybe get to the point where just naturally you're not having a class full of boys in 12th grade in this AP Computer Science.
Absolutely. We just hired a woman for our engineering team a couple months ago
who was studying computer science in college,
was one of the only women in her class, dropped
out because she felt like she didn't belong,
but liked computer science.
She liked it. She just didn't
feel like she should be in it because there
weren't any other women in it. And
finished college, still regretted it,
still wanted to do computer science, ended
up doing night classes and side classes and learning it after work.
Eventually did a boot camp, learned computer science, moved into the career, worked as a computer scientist, and just recently joined our engineering team.
That's awesome.
But, you know, that's the hard way.
Yeah, that's the hard way.
It would have been easier if she had just been able to stay in those classes in the first place.
Yeah.
Tell us a little bit about Hour of Code.
So Hour of Code has just become a phenomenon.
It's exceeded our expectations.
If you're not in school right now, you may not have heard of it.
If you're in school, you probably have.
It's like Earth Day, but for computer science.
Yeah.
It's a national holiday.
I don't have the exact numbers on the number of which schools participate, but as far as
I can tell, everybody I talk to, their school seems to be doing it.
Well, I realized it was a bigger thing than I thought when Steph Curry was posting on LinkedIn about him doing his hour of code.
Oh, yeah.
Okay.
If you're into sports, then Steph Curry did it.
If you're into other things, you know, Barack Obama's done it.
Justin Trudeau's done it.
David Cameron that we've had about eight world leaders who've participated.
We've had musicians.
We've had actors, actresses.
But I think the most important thing is the schools and the teachers are doing it.
So tell folks what the hour code actually is.
So the idea is that I can tell you until I'm blue in the face that computer science is going to be fun, that you can do it.
There's nothing like actually trying it.
So what we do is we get students and teachers to spend one hour
trying computer science. We've built scaffolded activities that make it easy for beginners. In
one hour, they can actually build something. You can actually build like a little mini game,
something you can share and be able to say, hey, I did that. And you actually learn some computer
science. I mean, you don't learn all of computer science. It's one hour, but you learn a concept
or two. You might learn about if statements.
You might learn about loops and how they work.
So the students get to try it.
They get to try one hour.
It's a great introduction.
And we did a survey last year looking at thousands of students before and after they tried the hour of code.
And what we found was that it does increase the amount that they say, hey, I like computer science or I'm interested in computer science. But what was especially cool for me was that the group that was the most impacted by doing
this was high school girls. High school girls were probably coming into it thinking, hey,
this is not something that I'm into. They try it, and then they're into it. At this point,
we've had 500 million hours of code around the world. And it's been in 180 countries.
It's in 50 languages.
It's a huge event every December.
We do it for CS Education Week.
And basically, it's just a way to introduce students around the world to computer science.
That's incredible.
By actually building something.
Yeah, it's really incredible.
And it's not just us.
This is one of those things that we do in partnership with about 200 different companies and organizations that run it and do activities.
Microsoft has partnered with us on the Minecraft Hour of Code for the last few years, which is our most popular Hour of Code activity.
And students and teachers love it.
It's an opportunity to use these characters they're familiar with from Minecraft, but to learn computer science with them.
So what's the dream for Code.org?
If you had a magic wand to wave over the world
and you can achieve whatever success you wanted to achieve,
what does that look like?
I think it looks like every child has the opportunity to learn computer science
and that the students who are learning it look like the world,
that the diversity matches,
so that when we look at the workforce
20 years from now, you know, whether somebody is in education or marketing or retail, they're
going to be using computers.
It's going to be a part of their lives.
And everybody gets to understand things like how the internet works and how computers work.
And that when we look at the tech workforce, that the students who are prepared to join this, that they look like the population.
And I get to look around and half my team is female.
And I want to state that we're working on one part of the problem, which is the K-12 education.
That won't solve the tech workforce by itself.
There are definitely issues around hiring, retention, workforce bias, all of those other pieces which also need to be solved.
But I think that we're working on one really important part of the problem.
Yeah.
And we do need to bring more diversity into the tech workforce.
And I think education is critical.
Yeah, I think it really is.
The thing that keeps me up at night about our future is I just sort of look at every year technology has a bigger and bigger impact on the world.
And the trajectory sort of tells us that that's going to continue for the foreseeable future.
And, you know, in a whole bunch of different ways, you want as many people and as representative a set of people as possible participating in the creation of this technology.
You like want all perspectives, all backgrounds,
all ethnicity. You want it to look like the world, which I think was a beautiful way that you
said it. But you also want society at large to be well-informed because a lot of the funky stuff
that's going on today, we're going to have to make sort of an increasingly large number of decisions,
policy, for instance, like in ethics and in the
laws that we pass and the regulations that are put into place to govern the intersection of society
and technology. You want people super well-informed when we're making those decisions, and you want
them representative. It's like everybody. Absolutely. I mean, it's just critical that in this world, everybody has this opportunity.
And at Code.org, what we do is we make it as easy as possible for schools to teach this.
We offer free curriculum.
We offer free professional development for these teachers.
We help teachers who don't have a computer science background because the teachers don't.
I mean, our schools don't teach it.
They didn't learn it when they went to school. And so giving the teachers the opportunity to
learn to teach computer science. They're history teachers, English teachers, math teachers.
And learning to teach computer science, as you pointed out earlier, is different than
even knowing computer science.
Right. It is different. You know, that's funny. We actually find that it's not that computer
scientists make the best teachers of computer science.
It's teachers teach computer science the best because they're good teachers.
And what we found is that experienced teachers with no background in computer science make excellent computer science teachers because they know how to teach.
And if we give them the tools and the resources and the curriculum, they're fantastic in the classroom, and their students do really well.
So that's what we're working on doing, letting these schools teach computer science.
What are some ahas that you've seen over the past several years trying to teach computer science to kids?
Oh, there's so many.
I'll give you a personal one to start out with.
So I came into this thinking I was a good computer science teacher. And
it turned out, surprise, surprise, I wasn't. I love teaching. I think a lot of people like me
who are, you know, they enjoy it. It's fun. I taught in college. I started a program to bring
students into local schools to teach computer science. I was a TA. I was a teacher. And I
always got good reviews. I always got high scores on which TAs are the best, which teachers are the best. And so I had this misimpression that
I was good at teaching. And it's been fascinating getting to work with a bunch of pedagogy experts
on how do you actually teach? Because what it turned out was that I was entertaining in front
of a room, which is different from being a good teacher. So when we teach networking, we have a thing called ABCCBV, which is you do the activity
before the concept.
Yep.
You do the concept before the vocabulary.
It's not about a teacher standing in front of the room lecturing.
It's about letting kids discover it on their own.
And the art of teaching is stepping back.
It's doing less.
It's not being entertaining.
It's not being this. It's not being this
person who's like a super energetic, exciting person to watch. It's about crafting experiences
where the student is going to get to figure it out without you being involved. Because if they
figure it out themselves, they're going to remember it. So let's say we're teaching TCP IP.
We pair them up and we say, hey, you guys got to figure out how to send some messages back and forth.
We have this little software that lets them sort of send these little packets of messages back and forth.
But our software is going to drop some of those packets on the ground.
We're just going to lose them.
And we're also going to send some of them out of order because that's how the Internet works.
And they've got to figure out, okay, I'm sending you messages.
Some of them come in out of order and some of them get dropped.
How am I going to deal with this? I don't care how they deal with it. Some of them will send five copies of the
packet because they're just going to be like, okay, let's just keep sending them because they're going
to keep dropping them. Some of them will number them. Some of them will send back acts to say,
yep, I received or didn't receive your packet. It doesn't matter what method they come up with.
The important part was that they really understood the problem because they tried to solve it. And then after they've done that, we say, okay, that thing that
you just did, that's called a protocol. And the protocol the internet uses is called TCPIP.
Now, what did the teacher do in that whole lesson? They facilitated the communication with the
students. They got the students paired up. They helped a student who was blocked get to that next
step. But nowhere in that lesson
did the teacher stand up in front of the room and draw a picture of TCPIP. Yeah. I've had similar
sorts of problems with my kids. And it was sort of the same thing for me. My goal in life was to
be a computer science professor from age 16 to 31 when I left academia. I taught undergrads for
years. I taught grad students. And now I'm trying to teach a
couple of really young children about these computer science concepts. And so I'm sitting
down at a restaurant and teaching them about binary search. And that one was a total win.
Like they got it right away because I made it into a guessing game. I'm going to teach you a trick
for how you can get someone to like play this guessing game with you where you can find
the number that they guessed between zero and 128 in seven steps or less. They're like, this is
great. But then I wanted to teach them how to do search. And they're like these little things about
teaching search that are sort of hard. One of the things is if you just sort of take a bunch of
numbers and write them down and say, how would you sort these? One of the things that's sort of hard. One of the things is if you just sort of take a bunch of numbers and write them down and say, how would you sort these? One of the things that's sort of interesting is human
beings can sort of see all of the numbers at one time. So they're cheating in a sense when they're
imagining how they're sorting. And so I devised this thing where I could give them a bunch of
blocks where the numbers on the blocks were covered up. And so they could go examine the number on the block one at a time, which is sort of how the computer goes and does
things. I just really realized that I was all kinds of wrong about how good I was going to be
at teaching little children these computing concepts. Actually, the way you ended up doing
it is very similar to how we do it in our class. So what we do is we give the kids decks of cards.
They're only allowed to lift two at a time to compare them because that's how a computer would do it. They can't look at the cards when they flip them. They sort of
show them to the other student and the student says which one's bigger. So they get to pick two
at a time and see. And actually, one of the things that's cool about that and a lot of our lessons
is they're not on a computer. They're actually using physical cards in the classroom.
Yep. Which I think is actually great. It's great, yeah, because, you know, when you say
computer science, I think sometimes people think, oh, it's all on a computer. And really, about half
of our lessons are off the computer, and it's about interacting with other students. It's about
internalizing the concepts by working with the actual concepts and the logic outside of the
context of the computer. Thank you so much for doing this work. I couldn't be a bigger fan. And I think you guys are having
an enormous and amazing impact on the world. Thank you for taking time to be on the show today.
Oh, no, thank you. And thank you for Microsoft support.
Well, thanks for joining us for Behind the Tech.
I'm back with my colleague, Christina Warren.
You know, some of Alice's insights were pretty awesome.
What stood out for you?
So one of the interesting things I thought about your conversation with Alice, and we talked about this a little bit before, was hearing her story and hearing about the atypical journey and how she kind of got involved with technology. Yeah, I think there's an incredibly diverse set of folks in tech, just sort of based on like the
path that they took to get into the industry. I've had the great pleasure of being a computer
science teacher and being an engineer and engineering leader for a really long time now
and have just come into contact with tons and tons and tons of engineers. And each one of their stories is a little bit
different. And some are, you know, sort of stereotypical image. But like there are all
sorts of other folks like Alice who discover computer science in their senior year of high
school. There's some folks who discover it
in college. There's some folks who actually go off and have a career in some completely different
thing and decide that they want to get into computing later in their life or later in their
career. And, you know, the thing that I'm seeing now is that it's increasingly easier to make those transitions because the tools and capabilities and sort of richness of our programming environments and the way that we build software just sort of allows more and more people to get bootstrapped more and more quickly.
Part of that's a byproduct of the open source wave of software that, you know, we've been witnessing over the past three decades.
Yeah, definitely. One of the things I love about Code.org is that even if the kids who are going
through those programs, even if, say, they don't choose to study computer science in college,
they still have that foundation.
I think it's a really important thing that everyone in society understands a little bit
about computing because computing and technology is having a bigger and bigger impact on all of
our lives all of the time. And so being informed about some of that stuff and like having an idea
in your head about how things work is going to help you be a better citizen.
And I feel like that's the only way that our products get better is by having more diverse
viewpoints and different types of people coming into doing
things because you never know what someone's perspective is going to bring. I love what
Code.org is doing and bringing more and more people into the fold and letting them know, hey,
you can do this and it's fun. Yeah, tons of fun, actually. But I have a biased opinion there.
I think that whole pedagogical framework for teaching computer science to kids, it's really great. I think it's actually going to prove to be great not just for kids, but for
adults. When I was a lecturer at the University of Göttingen in Germany, I was teaching a class on
programming languages and the theory of computation. And some of that is difficult material
to teach that certainly challenged my ability as a teacher, especially because I was lecturing in English to a class full of non-native speakers.
Yeah, I was going to say, so you're doing this in Germany, teaching English, and then they're non-native speakers, although I guarantee that they understand English far better than I understand German.
That was always embarrassingly true for me.
Their English was way better than my German.
In some ways, it's a different challenge to really bring someone up from the ground to
how do you get over this beginning set of conceptual hurdles so that you can then get
into the computer science curriculum.
By the time I got them, they knew sorting algorithms, they knew, you know,
if-then-else statements and while loops and, you know, all of the basic things of, you know,
how you construct a program. I think at least until I had kids of my own, I took for granted
how difficult it is to teach the quote-unquote simpler stuff. I think the lesson for me is
appreciate my teachers even more than I already
did. We should all appreciate those teachers who are out there loading knowledge into the heads of
our future fellow citizens. Absolutely. Well, thank you so much, Christina. This has been a
great conversation, and I look forward to being back with you again in the next episode. Me too.
Thanks so much. Next time on Behind the Tech,
we'll talk with Andrew Ng,
the co-founder of the Google Brain Project,
Coursera, and most recently,
DeepLearning.ai and Landing.ai.
Andrew is one of the most influential leaders
in AI and deep learning.
Be sure to tell your friends
about our new podcast, Behind the Tech,
and to subscribe.
See you next time.