Engineering Education Podcast

« Previous · Next »

Teaching Computer Science Remotely to Kids

Latest Episode

Previous Episodes

Episode cover art

Intro to Mechanical Engineering

Season 3 · Episode 8
Episode cover art

Science Storytelling

Season 3 · Episode 7

You Might Also Like...


Vivian Shen and Ruby Lee want to teach kids how to program one-on-one over the internet. Vivian and Ruby are Cofounders of Juni Learning, their new educational startup that provides programming lessons to kids like how others provide private piano lessons. Although they both studied computer science at Stanford, they got to computer science at an older age than the kids they are now serving. They talk about why they started Juni Learning and the benefits and challenges of teaching CS live online.

Our closing music is “Yes And” by Steve Combs, used under a Creative Commons Attribution License.

Subscribe and leave episode reviews wherever you get your podcasts. Support Pios Labs with regular donations on Patreon, by purchasing digital teaching materials at the Pios Labs curriculum store, or by buying a copy of the reference book Engineer's Guide to Improv and Art Games by Pius Wong. You'll also be supporting educational tools and projects like Chordinates! or The Calculator Gator. Thanks to our donors and listeners for making the show possible. The K12 Engineering Education Podcast is a production of Pios Labs.


Pius Wong  0:00 

How can you teach kids computer science over the internet? Let's hear about that today on the K12 Engineering Education Podcast.


Pius Wong  0:13 

There's a push today to bring computer science education to more and more students. One new venture out of California called Juni Learning is trying to do this by teaching programming to kids online, mostly one-on-one with a remote instructor. Vivian Shen and Ruby Lee are the two co founders of junie learning. I'm Pius Wong, and I had a chance to talk to both Vivian and Ruby about their mission. These two computer scientists, who turned into entrepreneurs, explained why and how they do what they do. Listen to the conversation next.


Vivian Shen  0:51 

So I'm Vivian. I'm one of the founders of Juni Learning. I graduated from Stanford with a degree in computer science and for the past couple of years have been working on various startups at a management consulting firm, and, you know, kind of stumbled into doing this alongside my co-founder Ruby.


Ruby Lee  1:10 

Yeah. Hey, guys. So my name is Ruby Lee. I'm the other founder of Juni Learning. So Vivian and I met as undergrads at Stanford. I have a Masters in computer science from there. After school, I entered the workforce, and my first job was at Google. I spent a couple years there, and then I switched to being more focused on the investing side, and I invested in startups at a fund called Kleiner Perkins for a while. And then Vivian and I came together to start Juni last July.


Pius Wong  1:40 

Wow. So you're pretty young. So, Vivian Chen and Ruby Lee, thanks for joining. You mentioned that you started Juni Learning. What is Juni Learning?


Vivian Shen  1:49 

That's a great question. So Juni Learning provides live online coding classes for kids with a private instructor. So how it works is that kids work with us either once or twice a week. They meet with their instructor online in a sort of live coding environment. And we work on everything from Python, Scratch, through to competition programming, AP Computer Science, everything in between. And we've been working on it since July of 2017. And it's been a ton of fun and so rewarding for both of us.


Pius Wong  2:23 

Yeah, it sounds really cool. You gave me the honor of letting me look at one of your online sessions the other day, and I saw you interacting -- I saw you, Ruby, interacting with one of your students. Is it typically you guys teaching?


Vivian Shen  2:35 

That's a great question. So when we started off, Ruby and I were teaching all of the students, so it was definitely a crash course for us, a ton of fun. And since then, we've sort of dialed back on our own teaching. We actually work with a ton of really amazing instructors, who sort of range from current college students and grad students through to recent grads or working professionals who are excited to give back and work with students in the space.


Pius Wong  3:02 

So this is the real deal. Like, you might have started in the summertime, but you're hiring employees. You're creating curriculum, I saw. Are you doing this full-time, and what really inspired you to get into this whole education arena?


Vivian Shen  3:19 

Yeah, so both of us work on it full-time. I think for both of us, based on our own experiences learning computer science, we knew that something like Juni needed to exist. So for a little bit of background, I'm from Palo Alto, which is traditionally a very tech-savvy community. But when I was growing up, there was only one computer science class offered at my public high school. And it was pretty inaccessible because it was basically the AP class. I'd never really done programming before. It was mostly male. And so there wasn't really an opportunity for me to learn in high school. When I got to college, I happened to sit in on an intro class and decided to take it. But it was really difficult to ramp up, you know, in the same way as kids who had been coding since they were like nine or ten. So, you know, bringing that education to kids, regardless of where they are is really important for us. Ruby has a really similar story where her high school didn't offer the class at the school. So she ended up taking it in a virtual classroom somewhere else. So she took AP Computer Science when she was in high school, but it was through an online offering. And so we were thinking, you know, why doesn't this exists for kids around the world? A place where they can get really great high quality instruction in a small class size, and also leverage, you know, new technologies that have come out to enable better learning.


Ruby Lee  4:49 

Yeah, so for me it was funny because the first time I'd ever been exposed to programming, I was playing this online game. People might remember. It was called Neopets.com, and help you build a website for your virtual pet. And so, like, I wanted to make my website super cool and have all the animations. And so I learned HTML and CSS. And that was largely through, you know, W3schools and those types of resources online. And then growing up, like Vivian said, I took AP CS in high school, but that was about the extent of it, and luckily, you know, sort of stumbled across it in college and decided I really liked programming. But growing up, you know, my parents had me in piano classes, and you know, always with this private instructor. And so, when we sort of put our heads together, we're like, we love programming. Why wasn't -- Why weren't we exposed to it more, earlier on? Who knows what we'd be doing now? And why can't we sort of give access -- give kids access to a learning environment like piano lessons, but just for programming? And it's actually really natural to do it in this video conference shared coding environment that we have, because, first of all, when your coding, you're obviously already on the computer. And so it's actually really easy when the instructor is just in your earbuds and on a corner of your screen. And with our setup, the instructor shares the screen with the student. And so they can sort of switch control of who's typing, or the instructor can annotate the screen to point things out really seamlessly. And then kids these days are so used to using FaceTime already. And so, you know, when we piloted the program, that interaction came pretty naturally for them. So that was good.


Pius Wong  6:32 

Okay, so Ruby, you already started talking about the logistics of it all. You kind of described what the kids are doing, what you're doing. Vivian and Ruby, can you walk me through, like, the process, if a parent or child or teacher wants to use your service, and they want to, you know, learn beginners coding? What exactly does that look like? Do they just log on to their computer? What happens?


Ruby Lee  6:58 

Yeah, absolutely. So the first time a student wants to try out one of our classes, they can absolutely take one of our classes, and it's completely free. So they sign up through our website, they pick a time, and an instructor will show up at that time. And they log into the class and they can basically see the instructor. And it's just like if you're Skyping or FaceTiming with somebody. So usually for our younger students, they would start either learning Scratch, which is a drag-and-drop programming language, or Python, which is a language that you have to type out. And then if the student wants to take more classes, that's great. We sign them up. We match them with an instructor who we think will be a great fit for them based on their age, their experience level, the times they're available during the week. And then they sort of sign on every week at the same time, meet with the same instructor. And we do have a web application that the students use to track their homework to see their progress to review the concepts they've covered in the last week. And the instructors write notes that the parents get to see after every class. So that's what the experience is like for someone who's using Juni on a regular basis.


Pius Wong  8:03 

So you give homework, too.


Ruby Lee  8:05 

Yeah, you do get homework. Especially for the kids that are in our more advanced classes, we find that it's important that they keep practicing during the week. And so the instructors will usually assign them a homework assignment between, you know, 30 minutes to maybe up to two hours, if the kid is really motivated. It just depends. Some of our younger students are super motivated, too, and they also spend a lot of time outside of class working on their own projects. But then, you know, it's also fine with us if a kid at age eight, let's say, just wants to come on their sessions once a week. The goal at that point is really to get them interested in computer science, to motivate their curiosity, and to develop what we call sort of programming literacy. You know, our goal isn't for every single student of ours to become an engineer in the future, even though that would be awesome. It's really so that they get the programming fundamentals so no matter what career they have in future, you know, we really strongly believe that programming is going to be a piece of it, or in some way it's going to enhance their ability to excel in whatever profession they choose. So we're really trying to build that computer science literacy piece.


Pius Wong  9:11 

You want all kids to take this. This is not for like a certain type of kid, let's say. Is that right?


Ruby Lee  9:17 

Yeah, that's 100% right. I mean, one of our big goals is actually to get more girls into computer science. And both of us are women, obviously. And there isn't a 50-50 representation of men and women in the industry right now. And I think a lot of that starts from a young age. One of the things that we have specifically done is make each of our courses themed. And so we have courses that are focused on game development. We also have courses that are focused on visual design and graphics. And so we're hoping that these different topics sort of will appeal to both boys and girls and get them interested in programming.


Pius Wong  9:58 

On a related note, I guess Vivian and Ruby, maybe Vivian first -- Why weren't you exposed to CS earlier? And then do you think that if you were exposed earlier, it really would have changed what you are doing now?


Vivian Shen  10:12 

Yeah, definitely. I think at my school there were kind of like these tracks that you took, right? And you only have seven periods during class. And there's all these things that you already need to do. You need to take math, English, etc. And on the science track, it was, you know, the pretty traditional bio, chem, physics, and then you could basically choose one of the three again for your fourth year. And so there was really no slot for computer science. It was considered in the same bucket as like art or music, symphony, that kind of thing. And so I ended up choosing art because, you know, that's what I had been pushed to do when I was younger. I took art classes. Like Ruby was saying before, piano, art, all of the traditional kind of kids' things that you do. And computer science had just never been introduced as a new track that I could follow. And so never really got into it, especially by the time I was a senior in high school, which is pretty much the only time you could take it. I was doing so much other stuff that it kind of got deprioritized, and only really found out more about it at Stanford. Nowadays, you know, Stanford is so well known for computer science. But when I first started out, as well, this was in -- a couple years back now. Startups were only starting to get really popular. CS was only starting to become a really popular major at Stanford at the time, so never got into it until college.


Pius Wong  11:47 

And Ruby -- I think. Vivian, you were saying that, Ruby, you took a CS class online, I guess, before college. Is that right?


Ruby Lee  11:55 

Yeah, I took AP Computer Science online in high school. But when I got to college, I decided to major in bioengineering. I got really interested in like the genomics piece of bioengineering and specifically wanted to do more work in bioinformatics. And that's actually what led me to take some CS classes. I was doing research with a professor in the genomics department. And, you know, what we were doing was really analyzing a lot of genetic data. And I just wanted to, you know, sort of have more tools to be able to do that. So I started taking more CS classes, realized that I really liked the problem-solving and the mathematical and the logic piece behind it. And luckily, Stanford had a program called the coterm program where you can pursue a Masters degree as you're finishing your Bachelors degree. So I applied for that, and I did that in computer science. And, you know, I'm obviously really happy that I took that path. And if I had started earlier, I don't know what would have happened, but, you know, potentially my undergrad major would have been Computer Science or something like that. I do think there's something to be said for having a cross-disciplinary track to getting to computer science, because that can really motivate people's interest in learning programming. And I think that's one of the reasons that our courses -- We do try to make them cross-disciplinary and introduce elements of, you know, hey, this is where this element of art comes into play when you're designing a website, for example. Or we have a lot of projects that interact with different components of music, right? So we'll have students program a piano and figure out, like, Okay, how do half-steps work? How do whole steps work in music? And there's just a lot of cross-disciplinary things that we do, because we think of students can really make those connections and see where programming is used in other fields, that will motivate their desire to want to keep going at it even more.


Vivian Shen  13:52 

Yeah, and actually, to that point, I actually minored in creative writing at Stanford and wrote one of my papers on Shakespeare by writing like a Python script to analyze the frequency of words in certain plays. So both of us are really excited that computer science is basically a tool that kids can use in any of their passions. But you know, increasingly as more data is available, and you need to analyze it, learning computer science is incredibly important. So that is a huge piece of what we do.


Pius Wong  14:28 

Cool. You know, let's talk about some of those strategies that you use, then, to engage your kids. I think that, now that you've been doing this for a little while, you might have a bunch of tips for teachers, who very often are tasked with teaching kids computer science concepts, even though they, themselves, may not even have studied computer science, whereas you guys -- You've studied computer science, and now you're teaching kids. So I'm wondering -- You said cross-disciplinary connections, that helps motivate these kids. What other broad principles do you try to apply when engaging your kids?


Ruby Lee  15:04 

Yeah, absolutely. Well, I will say firsthand that we are extremely fortunate to be working with these kids in either a one-on-one or a small-group environment. So it's usually either one, two, or three kids that we're working with at a time. And that just allows us to give so much more attention, so much more personalization to every student than we would in a normal classroom. So that being said, some of the general teaching principles or philosophies that we like to use -- One, we like to let students experiment. So the way the classes are structured is like, each class, usually there's one specific topic that we're covering for the day. Maybe it's loops. Maybe it's conditionals. For our more advanced students, maybe it's recursion or a certain sorting algorithm. And then we have a project or two that the student works on independently, to really motivate that concept. And so for example, going back to the the piano example, if the topic for that day is loops, they might be building a piano that can play a song that repeats certain notes using loops. And so we have the students read the instructions for the project, but then the instructors are generally like, okay, like, Where do you want to start? What do you think we need to use for this project? And we let the student experiment, get things wrong. And if it doesn't do what we think it's going to do, then we ask them, okay, well, why do you think that happened? How do we fix this? How do we debug? And then we're able to introduce sort of the processes that a real software engineer goes through. And, you know, we introduced -- Okay, well, if it went wrong, then maybe we should try printing something out or saying something on the screen to help us understand what happened. And so we're able to sort of get the student to explore and experiment on their own and then sort of become more independent programmers through that. I would say that's one big thing that we do.


Pius Wong  17:04 

Now let's take just a minute break from the conversation to listen in on a teaching session with one of the students at Juni Learning. Ruby was guiding her student to use block programming to draw triangles on the screen using functions. You might hear them typing.


Ruby Lee  17:21 

What do you have to change about your code?


Child  17:27 

We have to put number one in all of these.


Ruby Lee  17:30 

Yes, good. So let's see what happens now. Oh my gosh, it's so small.


Child  17:41 

I can't even... super tiny. How about seven?


Ruby Lee  17:50 

Yeah. Let's try seven.


Child  17:53 



Ruby Lee  17:54 

Oh, now I see a triangle, at least.


Child  17:57 

Yeah, how about, like, 64?


Ruby Lee  17:59 

All right. Try 64


Child  18:02 



Ruby Lee  18:05 

Not bad. How would you draw, like, six triangles?


Child  18:10 

Would you repeat it?


Ruby Lee  18:14 

Yeah, use a loop, right? You're going to do that?


Child  18:17 

Loop, loop, and loop.


Pius Wong  18:28 

I was thinking as you were talking, Ruby, it reminded me of the session that you let me see. And when you talked about trying to walk your kids through that debugging method, I assume that's something that you saw in industry, as well. Like, you had this Socratic way of bringing your student through -- We'll call him Roger, for the sake of this podcast. Like, when Roger did something that maybe made his program not work properly, you would just ask him a series of questions. And you were there on him, you know, one-on-one, just always asking him these questions. Is that supposed to mimic anything that you've seen other computer programmers do? Or is that kind of just like a teacher thing that you do?


Ruby Lee  19:12 

That's a great observation. I like that you have a formal term for it. I'm going to call it the Socratic method from now on. Well, you know, I don't know if it's a formal teaching method or anything. But I think that it's really important to do that with students, instead of always telling them the answer, because, you know, the students -- They're great, they're really good at following instructions. And if you tell them to do something, they'll do it. And if you ask them, does this make sense? They'll say yes. But that doesn't always mean that they totally understand it. So the art is really in sort of leading them to the answer by making them figure it out. And of course, you have to guide them along the way, right? But again, being in this one-on-one environment means you really get to understand, what do they get, and what did they not get. And so you also get to give them more exercises on the things that their weak in. And yeah, so to your point, like a big thing that we encourage our teachers to do is, not to sit down with a student and be like, All right, here's the project, so this is what you have to do first, this is what you have to do second. We really like students to develop the skill of breaking down problems and explaining back to you, All right, this is what I think the strategy should be. So like, for example, I teach a bunch of our different courses, but our most advanced students, they are in a training program for the USA Computing Olympiad. So this is a competition that high schoolers do typically, but we have younger students in the program, as well. And these problems are complex. They're much different than your average FizzBuzz or something like that. It requires, you know, several paragraphs of reading, breaking down the problem, thinking about your approach, planning out the functions you're going to write, all those sort of things. And so the class is not so much focused anymore on concepts, you know, because by that point, they should understand what a dictionary is, what recursion is, all those things. But it's much more high level. It's actually like, Alright, so you read the problem. So what do you think the approach is going to be for this problem? And then we actually spend a good amount of class just before not even programming, but like talking through how they're going to solve the problem, what their code is roughly going to look like. And that really does mirror industry a lot. Because when you're building big systems at a company like Google or Facebook, a ton of time actually goes into writing these documents that are planning out like the architecture of these systems and how they're going to interact with each other. And so we're actually having the kids practice doing that. They don't realize it, but it's just on a smaller, you know, per-problem basis.


Pius Wong  21:40 

And Vivian, were there any other principles that you think you employ when you try to really engage these kids or get them interested in CS?


Vivian Shen  21:50 

Yeah, I think Ruby covered most of them. If anything, I think one thing to highlight, too, is, we do a very project-based curriculum. So you know, in all of our classes, we pretty much don't do any kind of like presentation or lecture-style work. We maybe at the beginning of class introduce, like, the topic for the day. But then we'll jump right into doing a bunch of problems -- Sort of like failing fast and figuring out where we should pinpoint certain things and where kids should focus and how they structure the problem, all that stuff that Ruby was touching on. And, you know, we are very lucky that we can be live with them and watch them as they're doing the projects. But it's also really great because at the end of the class, you know, kids have a portfolio of projects that they've built. They share them with their parents, with their friends. And they're always really excited by that. So that's something that we also try to do.


Pius Wong  22:45 

Very cool. It sounds like you get the community involved a little bit, their family and everyone like that.


Vivian Shen  22:50 

Oh, yeah, just a side note, we actually have part of our software built out so that kids can upload their projects and share the links directly with their friends and family. If they want. It's like, protected and everything, but if they're interested in it, they can do that.


Pius Wong  23:06 

Awesome. And so this makes me think of a whole nother set of questions that I wanted to ask you. So you're teaching kids online. Like, talking about protected data and all that stuff, I imagine that, you know, protecting your students' privacy and all that stuff -- That's just one out of a whole list of challenges that you have when running a business like Juni Learning or trying to teach kids online. What are some of these challenges that you think you face when you're teaching CS this way?


Vivian Shen  23:39 

Yeah, that's a good question. To be honest, there are fewer challenges in the ways that we thought there would be. So like, Ruby was saying before, I think a lot of parents are a little more wary of an online learning environment just because that's not always how they learned when they were younger. They are used to, like, larger classesrooms and a physical instructor there. But the kids take to it incredibly well. They have just loved getting the one-on-one attention. They're totally used to video conferencing in a way that I think some of their parents aren't. So that's been really great. I think one thing that we've been really sensitive about is, you know, how we share information with the parent, whether we, you know, disclose names or anything like that. So we keep all information really secure. We've built out our own system to kind of manage students and their work, as well. And you know, we've actually had students take in-person classes and then come take our online classes, and they've chosen to work with us. And that happens really often actually.


Pius Wong  24:45 

Why is that?


Vivian Shen  24:46 

Yeah, so computer science actually has lent itself really well to the online environment. You know, naturally, you're already in this -- You're already on a computer when you're coding, and so fundamentally just bringing in a person onto your screen is really seamless. And we've actually run some in-person hackathons, as well, where we have to shuffle around the computers and, like, switch keyboards and all this crazy stuff. And on the computer, it's kind of like, you log in, and you go. And the teachers there, the students there, they're all sharing the same environment. We see live when they're coding. We can directly sort of point out, circle places where they need to focus, help them edit code slightly, if needed. And so the online shared environment has been amazing for that, actually.


Pius Wong  25:33 

That's really neat. So it sounds like a hackathon for kids?


Vivian Shen  25:35 

Yeah, that was an in-person event that we did with a local school. And it was a ton of fun as well, but definitely not able to give the personalized attention in the way that we can online.


Pius Wong  25:49 

Yeah, so going back to the online classes, you had said that -- Vivian, you said that the children are pretty much used to video conferencing more than adults, and so I probably am one of those adults who's, like, skeptical of that. How can you build a rapport with a student when you're away from them? Like, what are some tips?


Vivian Shen  26:10 

Yeah, that's a great question. I think just seeing the other person on the line, hearing their voice, has done -- does a lot. And then, you know, we generally -- We have a pretty rigorous interview process, onboarding process for our instructors, as well. We sort of -- We look for multiple qualities that you would look for in any kind of a teacher, basically, somebody who can connect with the student, really try to find people who are not just great software engineers but also great teachers. And so that's one of the ways that we kind of, sort of try to match people with the best instructor that they can get. And we also, when we do the trial with the student, try to get a sense of, like, what kind of person they would work better with, and what kind of an instructor they need, essentially. Like, for instance, just between me and Ruby, we work with different kinds of students better. So I work better with our younger students. She does more of the classes with our more advanced students. So we try to do things like that and match kids with the best instructor. But in terms of, like, actual, you know, connecting with somebody over video chat, it's been pretty seamless. We generally try to introduce ourselves, talk a little bit about what computer science is, what kind of projects the teacher has built and done in their past and just start coding right away.


Ruby Lee  27:33 

Yeah, you'd be surprised with just a once-a-week cadence. The kids really do get to know you. Like, I have kids who log in every week, and they're like, Oh, I want to show you -- I want to show you this thing I just got, or -- I have one kid which every time we log in, he'll have a new drawing for me. He'll have drawn something on his tablet, and that'll be the first thing that I see when I log in the class.


Vivian Shen  27:54 

Yeah. Same.


Ruby Lee  27:55 

They're excited about it. It's funny because, you know, we're closer in age to them than most of their parents are. And so we're kind of like these, I don't know, I guess you could describe it as like, role models or mentors or like, big siblings or whatever you want to call it, and who can actually share some of their interests. Like, a lot of the kids these days are like, really into Stranger Things or certain video games that the teachers play, as well.


Pius Wong  28:27 

No, that's awesome. And I guess it does make sense that if they're getting one-on-one attention, like, that, in and of itself is probably better than any CS class they might take in school.


Vivian Shen  28:36 



Pius Wong  28:37 

You know, that makes me think of another question. So the topics that you teach, like the curriculum or the learning standards, in Python or in Scratch, whichever. Are they different from classes you might take in school?


Ruby Lee  28:50 

No, I don't think they'd actually be that different. I think if anything, some of our classes would go more in-depth than some of the classes in school have a lot of opportunity to do. I think the cool thing about computer science, just like mathematics, for example -- The fundamentals are really shared across programming languages. So whether you're programming in a drag-and-drop language like Scratch or something more advanced like Java, you sort of need the same building blocks, right? And so a lot of our classes start with the same building blocks, but then they're themed in different ways, right? So for example, in our Python data master class, the kids might spend the last half of class learning about data science. So how to use Python to scrape web pages, and use APIs, and make cool data visualizations, and the master project for that class is actually picking a large data set of your choice and a topic that you're interested in and analyzing it with Python and generating a report about that. So one of my kids did a report about airline safety. And he found a data set about the number of incidents that each airline carrier has had over the past, like, 20 years. He created a bunch of interesting graphs about that. Airlines have gotten safer, is what we learned. So yeah, so the classes that are more advanced, they basically do the fundamentals and then move on to something more specialized.


Pius Wong  30:16 

Yeah, in the session that you let me watch, I don't know how old your student was -- He seemed young to me, but, like, you were already teaching him functions and all these other concepts that, like -- That's, that's pretty advanced, in my view.


Ruby Lee  30:28 

Yeah, exactly. I mean, I think the really cool thing about Scratch as a programming language is that you can get to concepts like functions, exactly like you said. And it's actually really important that kids of that age -- I think he's in third grade -- that they start in an environment that's like really easy for them to use. Because Scratch is much easier than a language they have to type out like Python, because you have blocks, and you basically are putting the blocks in the right order, and sometimes you're doing a little bit of typing, versus the next language that he would learn, Python. There are so many more nuances in the syntax, that that just adds an additional layer of things to pay attention to. And so by the time he gets to functions in Python, the concept will be a little more solid for him, right? So then he'll have, like, sort of the mental space to focus on: Okay, I have to get the spelling right, the indentation right, punctuation right, all that.


Pius Wong  31:23 

How do you spread something like what you're doing to more kids? I mean, one-on-one is really hard. If you want to get more kids learning CS, is there like a business model or some kind of educational model you can use to get yourselves into more homes or into more schools? In fact, that's a question. Do you do this in schools? Do you just do it with individuals? How does that work?


Vivian Shen  31:47 

Yeah, so definitely a great question. We have not worked directly in schools. We've kind of done some one-off events. And so far, you know, schools have reached out to us. They've been really excited about what we're doing, and we really want to work with them as well. Where we've really excelled so far is kind of this small-group environment, like Ruby was saying, capped at three students. And just to be in a school, that model is tough. So we've mostly gone directly to families in their homes. And we have multiple ways that we're thinking of making this available to as many students as we can make it available to. You know, right now, we're kind of working with these kids who already know the value of computer science, they're already kind of excited by it. They want really high-quality instruction. But as we grow, we've been building out more tools to make our curriculum available online, exercises, etc. And then, as we've also been able to onboard more instructors, sort of match group classes together, that kind of thing. We've definitely seen more scalability and accessibility for folks.


Pius Wong  33:02 

You had said that it works best with like, max three kids. So in schools, if they're trying to teach, you know, a roomful of more than three kids most likely, is there anything they can do to kind of get those advantages that you found teaching kids CS?


Ruby Lee  33:21 

Yeah, so one program that we love is called Hour of Code. I'm sure a lot of teachers have heard about it already. But the great thing about Hour of Code is that they provide teachers with projects that have already been created. And they're also themed, and they have I think they have a relationship with Disney. So a lot of the projects are like Star Wars-related or Frozen-related. And actually, a lot of our kids come to us after having been exposed to programming through Hour of Code in school. So I think that's a great resource, because it gives teachers the projects that they already have built out, and so the students can sort of jump in and work on those on their own computers. I think one thing that we have found well found works well from our experience doing hackathons at our schools -- and that's usually with a group of about 15 students, I would say -- is breaking it up into sort of mini-lecture time, and individual work time. And so the format that we follow for those is, we might do like 10 or 15 minutes of, Hey, you know, this is how you create a loop in Python, and then do a bunch of examples. And then we also utilize, like, we call it pair-programming in the classroom. So there's one student who will be driving, like, the program that's being displayed up to everybody in the classroom. And what I'll have them do is have that one student be in charge of coding, have him or her write the code that they think is correct. But then if anybody sees a mistake, they raise their hand, right? So then everybody is sort of involved in the process of building out that script. And then we give another project for the kids to work on on their own, they go back to their computers, and they apply what they've just learned.


Pius Wong  35:07 

That's really awesome. Do you have any other resources that you might recommend that people besides Hour of Code?


Vivian Shen  35:14 

Yeah, so a lot of kids come to us through code.org, Hour of Code, Code Academy, Khan Academy, a lot of these sort of self-serve online learning platforms, which are great to just get folks interested in coding. I think once they start wanting something that's a little more high-touch or starting to get a little more advanced, then a program like ours, or a class at their school is probably the better way to go.


Pius Wong  35:41 

How do people find out more about Juni Learning? How to use your program or just what you're up to?


Vivian Shen  35:48 

Yeah, great question. They can always visit our website at junilearning.com. They can also email us directly at hello@learnwithjuni.com.


Pius Wong  35:58 

Awesome. And where are you going in the future? Any plans?


Vivian Shen  36:03 

Yeah, we have a ton of plans. We already have folks who are older than our current age range asking to take classes with us. I have some 40 year-olds and plus. We are really excited to also branch out into different subject areas one day. I think there's a lot of different subjects that could be enabled by computer science that we could teach. And also just expanding into more geographies, time zones, that kind of thing. And, you know, one day also providing scholarships, making this more accessible for kids everywhere.


Pius Wong  36:42 

That's awesome. Thank you. Maybe one day you'll get some engineering teachers who want to learn Python with you,


Vivian Shen  36:47 

Of course. Yeah, actually a quick plug here. We're always trying to work with more engineering teachers, as well. One of our hopes is that actually folks who work in K-12 schools will come teach with us, as well. So if anybody's interested, they can also reach out.


Pius Wong  37:04 

Perfect. So, once more, we're talking to be cofounders of Juni Learning, Vivian Shen and Ruby Lee. Thank you both so much for talking with me, and I hope to hear more of what you're up to soon.


Vivian Shen  37:17 

Thank you.


Pius Wong  37:22 

For links to Juni Learning or to other topics mentioned in this conversation, just check out the show notes for this episode. You can also find these notes and transcripts at our podcast websites, k12engineering.net. If you liked this episode, please let me know. Email me, write a review of the podcast on iTunes, and share the show. All of that is a huge inspiration for me to keep up the podcast. Find the show on Twitter @K12Engineering, or tweet me directly @PiusWong. You can learn more at the podcast website, k12engineering.net.


Pius Wong  37:58 

Our Closing Music is from the song "Yes and" by Steve Combs, used under a reative Commons Attribution License. The K12 Engineering Education Podcast is a production of my independent studio Pios Labs. That's Pios with an O. If you want to donate to this free show to help me continue it, you can do it online at patreon.com/pioslabs, and you can also just buy me a coffee if you happen to be in Austin, Texas. Links on how to donate and to do all that other stuff are on the podcast website and in the show notes. Thank you to all the current donors on Patreon, and thank you for listening. Hope you'll join me next time.