Teaching kids game design with open source software
Open source tools help kids discover digital creativity
Youth Digital just moved into their new offices, tucked away in a nondescript office park in Chapel Hill, North Carolina. It's a big step up from their humble beginnings, when company founder and director Justin Richards hauled a laptop to his students' houses, tutoring them on web and graphic design. Their first office was barely more than a closet, and now they have an expansive space complete with conference rooms, recording studio space, and their own 3D printer.
Teaching kids about graphic design and programming without using open source software would be prohibitively expensive. As I learned during my visit to the studio's new office, cost isn't the only reason why Richards and his team use open source tools. The freedom of creating custom application packages for their students and the opportunity to improve the software that they use means that everyone learns with the same easy-to-use technology. It doesn't matter whether they're sitting in a classroom in Chapel Hill or tuning in to Youth Digital's online courses halfway around the world.
I talked with Richards about the curriculum's open source approach, his company's humble beginnings, and how they hope to help kids all over the world learn skills that will provide better, richer opportunities as they become adults.
Let's start at the beginning. What got you into technology and design?
Toy Story, pretty much. When I was a kid, Toy Story came out. When I saw that, it was so awesome. My dad was a computer programmer and I loved art and computers, and to see the potential to tell a story through 3D models was insane. I wanted to learn how to do it, and there was nowhere to learn it. All I could find were videos on YouTube about Flash animation. So I tried that, learned a little ActionScript, and did not like that. It wasn't Pixar, obviously.
So I looked at game design and couldn't find a lot of stuff. Then I went into web design and found this big book on CSS and HTML. I scoured YouTube and forums and spent hours of frustration making a website. I built it from start to finish, and that was such a great learning experience.
Later, I went to college to study cross cultural ethics. How do you work with at-risk populations without negatively impacting them in the name of good. How do you help people without inadvertently hurting them? There are lots of ways that well-meaning people can do better at doing good, especially in cross-cultural situations.
Youth Digital founder Justin Richards. Photo: Youth Digital
I did graphic and web design on the side to pay for school. After that, I found a job teaching technology to inner city kids. It was a program started by the St. Louis community that wanted to get at-risk kids interested in technology before they went to high school. I got to mix my two passions: working with those kids and teaching technology.
What about open source?
My dad helped set up computers in Romanian orphanages. Every summer, from when I was nine until I was 23, we went to Romania during the summer. We used all sorts of open source stuff then, because we would take donated computers that were a few years old. We'd install Linux and OpenOffice, take it over there. Since the kids would get kicked out of the orphanages at age 18 with no marketable skills, so the idea was to offer computer classes so the kids knew how to use computers.
What called you to become a teacher?
I never necessarily wanted to be a teacher, actually, but I love teaching web design. In St. Louis, we were given these massive, poorly written binders, and I was supposed to teach thirty 8 year-olds web design with them. So we put those away, and instead, I wrote a website really quick, and changed the curriculum so that by the end of the first day, the kids had their homepage, and by the last day of the class, they published it. Every one of our courses since then has been built around that idea: do something tangible on the first day, and on the last day, publish it. Just to give that sense of a real world project.
What sort of tools do the kids use in your courses?
We want something that will give the kids that authentic, professional skillset, but also something that doesn't cost them a thousand dollars or is too intense for them. We've gravitated toward open source tools that mirror professional standards. We use Gimp, Inkscape, Eclipse, and Blender. We use Blender because other tools are $3,500. Some offer educational discounts, but a lot of our kids don't have the correct credentials to get the free version of, say, Autodesk. And we love Blender, because not only can we customize it for those young kids, but we can also make it so that it mirrors anything else they'd use in the industry. If you learn the pen tool in Inkscape, that's the same pen tool in Illustrator or any other vector program you'd use.
Overall, we're more focused on teaching kids the fundamentals of design and development as opposed to how to use a certain type of software. Depending on where you work and who you work for, the software's going to be different, or the language will be different. That's going to change on a yearly basis. What we think won't change is the process of how you develop software or games. Our courses start with, conceptually, what are you going to build, why do you want to build it.
The open source stuff is great because we can build installers around it. If we're doing Adobe, there's all these things the kids have to do. Sign up for an account, verify this, do that. With open source tools, it's easy to integrate quickly so they can just hit the ground running.
If an open source tool isn't working for you, you can change it and make it better. Do you cover that?
I was doing just that last night with Inkscape, actually. How it handles patterns isn't quite what we want for our course, so we're adding new features. But, yeah, we do a lot of User Interface (UI) changes. Nothing that would make it hard to go from our version to the standard version of, say, Blender, but we add a lot of extensions. Our animation courses offer points for answering questions correctly, and those points can be used to download extra models. They download the points pack and inside Blender, they'll install those models with just a click. A lot of our extensions focus on giving the kids decent content libraries. We don't want to start them off with animating two cubes. Instead, if you have an awesome character with a bunch of cool background objects, then the animator can have fun and animate something beautiful right away. We love that about open source. We can make our own forks, and then we can even donate it back to the project. Sometimes they don't want it, because it's geared toward kids, but they have taken a lot.
What's the basic philosophy for your curriculum?
We break down into design and development. For app design, you start with the UI and the graphics. Then you develop the back end. Then we do beta testing and user testing, and then you launch. I tell the kids jokingly: "In a hundred years, we may have robots that program for us, but we'll still have to conceptualize, debug, design, and develop those robots. That won't change."
Youth Digital is a for-profit business. Is there a reason why you chose that route over filing as a non-profit?
Initially, I intended only to teach enough courses to help pay for my graduate program at Duke. And early on we struggled with the decision about whether to be a non-profit. I had taught these courses at a non-profit for the past two years in St. Louis. In general, my plan was to strengthen the community relationships of existing non-profits by offering our courses to their students. So before I moved to Durham, I flew down here to meet with non-profits, schools, and parents.
For whatever reason, the schools and non-profits were interested, but just never got back to me. But the parents registered their kids for every spot before I moved down here. Of course, we wouldn't be here today without those families, so we owe them a great deal of gratitude. In a lot of ways, the fact that parents signed up when the schools didn't reflects a growing trend of parents seeking out external educational opportunities when schools don't offer what their kids are passionate about. Now, we work with various established non-profits in the area and have their students attend our classes.
That's the historical reason, I guess, but it also ties into the philosophical reason as well. For us, being a for-profit forces us to make a high-quality product—or parents won't buy it—and enables us to focus on and reinvest in that product as well. We feel the for-profit model helps us deliver for our students. I wanted the very best for my students in St. Louis and would want the same for all students who take our course, regardless of socioeconomic background.
Our two biggest expenses are new curriculum development and support. Our model enables us to develop world-class courses and allows us to quickly create new courses around cutting edge technology like 3D printing. On the other hand, safe support is extremely important to parents and students. These are kids as young as 8 years old. There's nothing more frustrating learning technology than to be stuck in a technology problem. Web, video, and blog searches are time consuming and expose students to the potential ills of the internet. Our support team allows student to safely focus on learning the technology at hand.
What's on the horizon for Youth Digital?
What I am really excited about is our Enterprise program, where schools, camps, or after-school programs can offer our courses at their location. We have piloted this program and are finalizing this offering, but once we do, I think it would be a great fit for a non-profit. It would enable them to offer their students a chance to learn Java through Minecraft, design their own apps, create their own 3D animations, and more.