 And I'm up from Philadelphia today to talk with you guys. So I'm a software developer at Artisan Mobile, and Artisan is an all-in-one platform for native app, analytics, A.B. testing, personalization, and marketing automation. But today I'm not here to talk to you about Artisan. I'm here to talk to you about my experience. We're just going to go to the handout. How's this? Much better. Thank you. Today I'm here to talk to you about my experience working with kids and teaching kids to code. I want to give you some tips, some resources, speaking from my experience, but my real purpose is to hopefully convince some of you to spend your time working with kids and teaching them how to think like programmers. The group that I volunteer for is called Tech Girls. Tech Girls is a 501c3 nonprofit, also based in Philadelphia, and our aim is to reduce and hopefully one day eliminate the gender gap in tech. We do this with workshops. We have an entrepreneurial summer camp. The idea is to give girls hands-on experience with different kinds of technology and to enable them to interact with women who have carved out successful careers in tech. Research shows that up until high school, girls and boys have similar interests in STEM, so we're targeting girls at this critical age in hopes of convincing them to stick with those geeky interests and start to change the equation in our field and beyond. And we've had some success. We recently completed an impact survey in which 92% of the girls said that their experience was valuable, but even more importantly to me, 70% of the girls said that they were more interested in tech careers as a result of their experience. So this is a great cause, and working with geeky kids is awesome, let's be honest. And maybe you know some girls and boys that you'd like to work with to teach them how to program or do some circuit hacking, but where do you begin? And so this is where I wanted to give you some advice from my experience working with kids and running effective workshops. So I've done quite a bit of work, and I've found that the Raspberry Pi is actually a great platform to use. It's dead simple to work with. It's very cheap. You can get started for about $30 a unit. It's also a fully functioning computer. It boots Linux. But my favorite thing about it is that it's so simple to hook up to the IOPins on the Raspberry Pi. Once you do that, I mean you're doing more than just writing code. I mean you can actually start hacking the physical world. So up here, the class that I taught back in September, which is my most recent tech girls class, we actually used the Scratch programming language. But I wanted to put some Ruby code up here just to show you how simple it is to talk to the IOPins on the Raspberry Pi from Ruby. So we had the kids write some code like this. And granted, these are kids who have never done any programming before. So it starts out really simple. And basically have a loop and you're turning a pin on and off and on and off. But if you hook up a single LED to that, now you've got a light that's blinking. And then we'd have them swap that out with a counter chip. And now you can drive a sequence of 10 LEDs, which is kind of what you see on the right over there. So a technique that I've learned working with kids and helping kids to learn new skills is scaffolding activities like this. So your activities are relatively small and they build on top of one another. It's a bit more work to craft this experience. But I find that, especially with kids who are starting out with no experience at all, it makes it much more inviting to dive in rather than showing them in the deep end but crafting these experiences so they build on top of one another. And I also think that it makes it possible to get more done in less time. So blinking an LED may not seem like much. But if you can turn on an LED, then you can spin a servo. And if you can spin a servo, then you're just steps away from building a robot or an automated Nerf gun. So a couple more tips from my experience. Up here I have some of the student guides from the workshop that I created. And what I wanted to say was, you want to be, it's really easy to go overboard with how much you want to teach during a workshop or anything. And anyway, you can't pour knowledge into the student's head. You want to explain what you're doing. You want to demonstrate how things are going to work. But you want to spend most of your time in the coaching role. You want to spend most of the time with the kids being hands-on. The kids can help each other out. And the kids should be showing off the work that they're doing. And speaking of time, there's never enough time in a workshop to get everything done that you want to get done. This is a lot like software development projects. And so that's another reason why we build the small activities that scaffold on top of one another so that any point can be a good stopping point for your workshop. And the rest of the activities can be used next time or as bonus activities. And speaking of stopping points, I wanted to remind you to take breaks. Working with kids and building out these workshops, the break time, just like here at a conference, is sometimes when you have the best conversations, the best questions and the best ideas. I wanted to talk a little bit about getting organized. For one, if you're ever doing a workshop and working with kids and electronic components, it is buy lots of those little plastic baggies and get yourself organized ahead of time. Because you do not want to be running around trying to find the 10K resistors and getting them to the right kids, especially when you have a dozen of them. So getting organized practically is one thing. But also, how do you organize the space? I mean, so you've got a dozen kids and you've got a dozen projects to do. And I think of this the same way that I think about organizing a software development team. So you need space to come together as a group. You need space to work independently. And I also am a big fan of pair programming. And I think two kids to a workstation actually works really well. They help each other out. They don't get stuck as often. And they come up with twice the ideas. Although I have found that just like with grown-up developers, it can be hard to convince kids to pair. But speaking of pairing, I want to say these are my final tips. Just find a great partner. This is Andrew Gannum. He's also a Philadelphia. And was my co-teacher and helped develop this course together. So we have complementary skills. We're both programmers, but there's a lot to do pedagogically, technically, logistically. And it helps to find a great partner if you're interested in teaching a course together. There's no reason to do it alone. And also to think about hands-on, the more complex that your activities are, the more adults that you're going to need. We actually had a four-to-one kid-to-programmer ratio at the event that we did last September, which is pretty high. It probably is about the most that you will need. So I want to wrap up by saying that if you've thought about working with kids, I highly recommend checking out the tech shops in a box. This is a resource being made available from Tech Girls. These are complete, end-to-end lesson plans. They talk about what to do to get prepared. They talked about how to spend your time during the workshop. They have a great community around them, and they're not just for girls either. But there are a ton of other resources out there. There's Code.org, Code Academy, Khan Academy. Though a lot of the work goes into coming up with a plan and making preparations. But once you get to the workshop, time flies. Seeing what these kids can build and how fast they learn is so rewarding. Watching them grow up, stick with STEM, and one-day teach workshops of their own is even better. Our field is expanding, and we're going to need these kids. The Department of Labor estimates that there will be 1.2 million new tech jobs by 2022. But the schools aren't keeping up. Only 5% of high schools are teaching AP computer science. Only 12% of the tech girls that we had surveyed were doing anything related to technology at school or even in their after-school programs. So it's up to us. It's up to us to teach, to coach, and to inspire the next generation. I hope you'll join me. Thank you.