This course is the first lesson from the Teaching Kids Programming courseware library. It has been designed especially for the Pluralsight audience. You can use Visual Studio to teach your own kids to program in C#. In this lesson kids will learn about objects, methods, variables & for loops in a fun and creative way.
Introduction to Teaching Kids Programming Lynn Langit: Hi. This is Lynn Langit for Pluralsight with -- Llewellyn Falco: Llewellyn Falco. Lynn Langit: And we're really happy to bring you a special class. This is our Teaching Kids Programming in C#. So before we start, we're going to talk a little bit about our organization. Llewellyn and I are the cofounders of an organization called Teaching Kids Programming. And we have a website, teachingkidsprogramming. org. We are a U. S. nonprofit. We are designated project of the Mona Foundation, which is a global education nonprofit. Llewellyn Falco: And our goal is to create free and open source courseware to help kids learn to program. Lynn Langit: Our website includes our courseware, along with teacher training resources, videos, and other written information. Based on the analytics on our site and our own travel, our courseware is used in 15 states and 10 countries. And we have personally taught all over the world. Llewellyn Falco: And what you're about to see is a version that we created specifically for Pleuralsight and the Pleuralsight audience. First, let's go through some of the mechanics. This course is designed not for a teacher in a course room, but for parents who are programmers working with their kids on a one-to-one or one-to-two relationship. Lynn Langit: And we're giving you an example of one lesson or recipe in this course. We have several more in several different languages. But you'll see throughout the course that there are five different sections. Llewellyn Falco: And the age group that we're looking for is 10 and up. But really, the barrier that you're looking for is typing. So if your kids feel comfortable with a keyboard, bring them on, teach them to program. Lynn Langit: And because this course is in C# and we expect that the parents who are teaching are professional programmers, we design it using Visual Studio. Llewellyn Falco: We want to talk a little bit about our motivations for designing courseware like this. And the first, of course, is that while kids tend to be very technically literate, they are growing up as consumers of technology. And we think it's very, very important that they are also the creators of technology. Lynn Langit: In addition to that, we see around the world, but particularly United States, a decline in interest of students in actually studying computer science. If you look at the statistics out there, kids studying comp sci has, unfortunately, been declining. Llewellyn Falco: That in an everly increasingly technical world, and combine that with the fact that most high schools and colleges even have a lack of good courseware for programming. Lynn Langit: And of course, the other thing is we'd love our kids to grow up and have great job opportunities because they're fluent in programming. Llewellyn Falco: And for you, personally, it's always great when your kids understand the jobs that you do. Lynn Langit: So we wanted to tell you a little bit about the way we teach before we start you off with our lessons. We call the method of Teaching Children Programming the Intentional Method. To explain the Intentional Method, we're just going to give you a couple of highlights. You're going to see in the upcoming lessons that our way of teaching is highly interactive. We ask lots of questions. It's experiential. The kids will be typing code and compiling programs. And then we'll layer on more learning. Llewellyn Falco: Also, we're a big believer that the kids should understand what it is that they're doing. So we will start with the English a lot, and then go forward into code. So they go with meaning. Following that track, we want what they do to be discoverable. So we're going to teach a lot to tooling and language so that kids can explore. Lynn Langit: You'll see us talk about translating one line of English into one line of code, and then running just to make sure that the translation has been done correctly. It's almost like a test-driven development, but we don't have a test, per se, but they're getting very rapid feedback. Llewellyn Falco: And it's funny that you mention test-driven development. We actually incorporate quite a lot of agile practices and extreme programming practices, including pairing, which is why both of us are conducting this class. And usually, when we teach our classes, we also pair the students. So if you're lucky enough to have two children, we suggest you put them both at the keyboard and have them work with each other. But make sure to rotate frequently. Also, we're going to do a lot of leveling. So while we're start with the intention of the English, you might not understand fully everything you're doing. Don't worry. We're going to come back to these over and over as you layer on more and more understanding. Lynn Langit: And as you progress through the recipe, you will get to the point -- you and your kids will get to the point of mastery. One of the things that we have throughout our lessons -- and you're just going to be looking at the first lesson set here. In the various languages, we have up to 14 lessons, each with 5 parts. And we aim for mastery-based learning. So complete understanding of everything that we present. So hopefully, we've got you interested and excited, and you're ready to get started.