A parenting guide to CS learning

Amy J. Ko
Bits and Behavior
Published in
8 min readMar 17, 2018
Credit: unknown.

The more work I do in K-12 learning of computer science, the more I encounter parents with one of the following three questions:

  • I want to encourage my child to learn CS. What do I do next?
  • I think my child is interested in CS. What do I do next?
  • I think my teen wants to major in CS in college. What should they do next?

As a parent, I understand these questions intimately. My teenage daughter has a lot of interests outside my area of expertise, and yet somehow, I’m supposed to guide her, find resources for her, and encourage her. Being a parent only goes so far in this case: it takes some actual expertise to provide meaningful guidance. And so parents seek out experts, looking for answers. Most don’t find them.

Of course, this is partly because knowing who to go to for answers is hard. Not everyone has an expert to ask. Most people don’t have computer science teachers in their public middle or high schools, and if they do, those teachers may not know much beyond what they teach. Most parents don’t know any software engineers to ask for ideas for how to engage their children in informal learning—and many engineers will give bad advice, like giving an 8th grader a Python book, hoping they’ll fall in love with command line arithmetic.

Most middle and high school advisors don’t know anything about computing either, and many will offer really bad advice. I remember asking my high school guidance counselor in 1996 about where to go to college for Computer Science. They recommended Whitman College in Walla Walla, Washington, which didn’t even have a CS department then! (They do now). And the counselor didn’t tell me anything about the University of Washington, UC Berkeley, or the dozen other fantastic places to pursue CS on west coast, let alone the dozens of other excellent schools.

And so, in the absence of having an expert about the learning of computing to ask questions, here’s some advice that I often give parents in these three situations. While much of the specific advice I give is opinion, I’m ground my advice on decades of scientific evidence about interest development, and my own research on CS interest development.

“I want encourage my child to learn CS”

If you’re asking this, you’re probably parent to a middle-school aged child, probably 9–14. This is a critical time in children’s lives when they begin to develop awareness of the social world around them, and their role in it. Part of this is developing interests. And part of your job is to help them develop those interests.

(First, can I address how odd it is that we try to exert any authority in shaping our children’s interests at all? As any experienced parent will tell you, we really can’t control these things. So first, I’d suggest you to think about it less about exposing your child to a possibility, not directing them along a particular path. At least in the United States, where we value individualism, they’re going to choose their own way regardless of what you want.)

Let’s suppose you’ve settled for exposure to CS. Interest development isn’t as simple as a child just encountering a topic. I ranted about coding toys in a previous post, for example, arguing that toys alone aren’t enough to create genuine interest. Children need a social experiences around toys and other learning technologies to develop interest. And if you don’t have the content or teaching expertise to provide that experience, it’s going to be hard to provide that experience on your own.

Genuine interest comes from many different positive experiences with something that the child perceives as related, and connected across multiple dimensions and contexts. For example, your child might have a great experience at a summer coding camp, then a great experience in a class at school, and then a great experience at an after school club. After a couple years of these experiences, the triggered interest these experiences produced might develop into interest that’s still external, but maintained, and developed.

Positive social experiences are a necessary part of this development. As long as your child’s interest is external, your child won’t want to pursue these experiences because of the content alone, but because they’ll have a friend attending the same class or camp, or have the prospect of making a friend. Start the conversations around the social experiences these might offer, and they’ll remain more motivated to engage in them.

Note that whether your student enjoys these experiences is really quite far out of your control. A friendship might fall apart, a teacher might be terrible, or because of poorly designed educational technologies, an coding experience might be a week of failure, eroding your child’s belief in their ability to learn computing. You can mitigate some of these negative experiences by learning as much as you can about the teachers, how they teach, and how they mitigate negative experiences. Ask them directly about how they support students who are struggling with either the content or their social experiences in a class.

Finding well-designed learning experiences can be hard, because excellent CS teaching is still rare. Cities like Seattle have dozens of opportunists in and out of school, and even then, only some are great. Find a local expert that knows about these opportunities and find out what’s good. Or search on Code.org’s excellent repository of in and out of school CS learning experiences around the United States.

“I think my child is interested in CS”

If your child has had a series of positive social experiences around computing, they might just internalize that interest as part of their identity. For example, by the time I was a freshman in high school, I’d had lots of positive social experiences around making games and animation on my calculator, and I thought of myself as someone who liked to create things with code.

What do you do next to help your teen? Help them find the resources they need to develop that identity.

Some of the resources might be further learning. For example, this might be formal education at their school to learn advanced skills, such as an Exploring Computer Science, AP Computer Science, or AP Computer Science Principles course. It might be access to online courses that help them learn more skills. They might need help finding these opportunities and paying for them, or they might just need encouragement to seek them out. You or your teen can check their school for opportunities and help plan their elective courses. Be a proactive facilitator in their skill development and identity development.

If your schools don’t offer computer science classes, find out why. Check the pledges on the CS for All website. Is your district or state listed? Maybe it’s coming soon. If it’s not, write your school, district, or state legislature and ask why there’s no CS in your schools. Or, write Microsoft’s TEALS, and see if they can arrange for volunteers to help teach a CS class in your school. There’s a nationwide effort right now to expand access to CS learning, and you can be part of that expansion.

Another critical resource at this stage is mentorship. At this point, your teen probably has more expertise on computing then you do, and they’ll start to notice that you can’t really guide them on what’s next. Find them a mentor that knows more than them, that is also kind, patient, and encouraging. This might be:

  • An older sibling
  • A friend
  • A family friend
  • A teacher with some computing expertise
  • A coworker

Carefully assess how much your teen wants some mentorship, and getting your teen’s consent before you go searching. They might already have someone who’s mentoring them. Encourage it. If they want your help finding someone, play matchmaker and evaluate how much you trust potential mentors to support them.

Of course, you can’t really do any of this if you don’t have an open line of communication with your teen. If they don’t see you as a resource, you may have to work on your relationship first before you can play a higher level role in their interest development.

“I think my teen wants to major in CS”

If you’ve gotten to this point, your young adult probably has a well-developed internal interest in computing and some vision for what that might mean for their future. This often coincides with planning for college, and so this vision is often expressed as majoring in CS. They probably don’t know what that means, but it’s a good start.

The first thing to help them realize is that the world of computing is no longer just computer science. Many disciplines now involve computing, beyond computer science:

  • Information science (otherwise known as iSchools)
  • Cognitive science
  • Computer engineering
  • Electrical engineering
  • Interaction design
  • Applied statistics
  • Applied math
  • Bioinformatics

And many more. And more likely than not, your teen is probably interested in applying computing to something, and so those disciplines that use computing, but don’t study it explicitly, may be an even better option than computer science.

The next thing for them to know is that CS is in high demand right now. Everyone wants to major in it. That means a few things:

  • Some schools have a fixed number of majors they will teach. If they have a cap, there will be a lot of competition for those seats. Some schools place the competition at the time of applying to college, which may require your teen to have well-expressed goals that demonstrate interest in computing. Others place the competition after they have been admitted to college (this is what my university, the University of Washington, does). This gives youth time to explore majors, but may mean they don’t get to study what they want after two years if competition is too fierce.
  • Other universities allow students to declare any major they want, with no cap. But that means that their classes will be huge, and not taught as well as colleges with caps.

Encourage your teen to think about how much individual attention they want from their teachers and how much competition they want to face to follow their interests. There is no ideal with this much demand, just lesser evils.

Finally, it’s important for your teen to know that college-level computing learning cultures can be very different from high school learning cultures. Some are inclusive, encouraging, and empowering. Harvey Mudd’s CS program, was one of the first to explicitly and publicly tackle issues of inclusion, especially for women. Other departments are toxic, isolating, and dispiriting. Most CS departments are motivated to be inclusive, but change is slow. Find out what the latest opinions about the culture of a school are by asking students who are there now. If a school connects you with their students, and their students share positive experiences, that’s a good sign!

After all of this, your child might change their mind, and develop other interests. That’s okay! They don’t need to become experts at computing to be use it in other professions or in their everyday lives.

Moreover, your child doesn’t need to be a software engineer to make a living wage in America. This shortage of great engineers is a short blip in labor market history, and you shouldn’t try to plan your child’s future around it. Instead, be proactive in showing them many possible interests, encouraging them to pursue many of them. Reinforce their successes, help them learn from their failures. Guide them toward the futures they’ll eventually choose for themselves, and once you can’t anymore, find someone who can. They’ll be fine.

--

--

Amy J. Ko
Bits and Behavior

Professor, University of Washington iSchool (she/her). Code, learning, design, justice. Trans, queer, parent, and lover of learning.