How do you spark excitement about computer programming among preteen girls?
“Make me a Hunger Games arena.”
That’s the challenge Kate Miller presented to a group of middle schoolers during last summer’s Penn Girls in Engineering, Math & Science Camp (GEMS) at the University of Pennsylvania, where Miller is a sophomore bioengineering major.
Spotlight: On-demand video
Using Kodu, a visual programming language from Microsoft Research that makes it easy for students to create games, characters, and landscapes, the girls quickly dived into the task of creating a physical environment that drew on their shared interest in popular culture.
“They were able to show it off to their friends,” Miller recalls. “It worked out perfectly—they were very excited about it. It became competitive, and it was just electric.”
Miller is a 2012 winner of the AspireIT award, funded by Microsoft Research, from the National Center for Women & Information Technology. Miller used her $5,000 grant award to create the programming course for GEMS and to buy several Surface tablets for the camp. The Xbox team donated additional tablets—facilitated by Kent Foster, who drives academic relationships for that team—so each student could have one to use.
The kind of excitement that Miller generated during the camp is exactly the goal of Hour of Code, a global initiative organized by the nonprofit Code.org to promote computer-science education, particularly among K-12 students. Timed to coincide with Computer Science Education Week, December 9-15, Hour of Code encourages an hour of instruction in computer science to demystify computer programming and to spread awareness that computer science can be the foundation of many creative, exciting careers.
Three tools from Microsoft Research—Kodu, TouchDevelop, and .NET Gadgeteer—will be an integral part of Hour of Code. Microsoft is a supporter of Code.org.
Hooked on Programming
Miller has been teaching and mentoring girls since her senior year of high school, when she created an afterschool science and technology club for middle school girls in New Albany, Ohio. It was a way to spread her passion for programming, which was sparked almost accidentally when she registered for an introductory robotics course because she wanted to be in a class with her best friend.
The programming she learned, using the LEGO Mindstorms system, was basic, but it helped build her confidence.
“I got hooked on the fact that I could make things and approach a problem one step at a time,” Miller says. “That’s really all programming is—arranging the tools that you have to solve the problem that you’re facing.”
Miller proceeded to take AP Computer Science and was the first girl in her high school to complete the course. Having enjoyed steadfast support from her programming teacher, David Herman, “who’s been a consistent, fantastic mentor to me,” she immediately thought of becoming a mentor herself.
“I have a little sister,” she says, “and I wanted her to experience the same pride in overcoming something for yourself.”
The club Miller created in her hometown is not only going strong, but also is being run in partnership with Ohio State University.
The challenge, Miller says, is that media stereotypes about science and technology professions discourage many girls from exploring those fields. And girls who do forge ahead often have few female role models to encourage and support them.
She intends to help remedy that situation by continuing to teach and mentor girls, whatever her own eventual career path.
“Reaching out and sharing the passion that changed my life so dramatically—I think that’s going to be a lifelong thing,” she says. “I really enjoy it, and I think the tools for teaching computer science and engineering get more exciting every day.”
Building and Sharing Games with Kodu
Among the tools for teaching programming to students, “Kodu is by far my favorite,” Miller says. “I was really excited about using Kodu because I kind of grew up playing on my Xbox—I grew up learning stories through video games.”
Kodu enables users to tell stories through games and share those stories with others on the Kodu Game Lab Community website and on Socl, a free online social community created by Microsoft Research’s FUSE Labs that celebrates creative expression through visually rich posts.
“For me, it’s particularly inspiring to see girls getting into Kodu,” says FUSE Labs program manager Reena Kawal. “During a DigiGirlz camp we held, the girls created a bunch of games like Cat Daddy and Cycle Psycho, which we’ve featured in a collection on Socl. It’s awesome to see what they’ve come up with.”
Kodu comes with 20 characters that have various abilities, and it includes landscape-creation tools that make it easy to create beautiful environments, with bridges, paths, and various types of terrain.
“In Kodu, users have the tools to create their own worlds and fill them with characters whose behaviors they define through a custom, visual programming language,” says Stephen Coy, one of the developers of Kodu. “Students are able to unleash their imaginations while at the same time learning basic computer-science concepts.”
Kodu for the PC is a free download for the Windows desktop or Windows 8, and Kodu for Xbox costs only about $5. The Xbox version uses the game controller for input—no keyboard required. Kodu can be taught by teachers with no previous programming experience. Lesson plans and activities are available for free on the Kodu site.
Scott Fintel of the Xbox team says Kodu helps build students’ confidence in their technical abilities, to the point where some of them surpass the teacher’s abilities and take a teaching role within the class.
“Having students thrive in this leadership role builds collaboration not only between students and their peers, but with their teachers, as well,” he says. “It’s a powerful dynamic to see, and the response from teachers has been overwhelmingly positive.”
Creating Apps with TouchDevelop
Microsoft Research’s commitment to exposing more people to the creative possibilities of technology extends to other tools, including TouchDevelop, which lets you create mobile apps and games on any smartphone, tablet, or PC.
You can write scripts simply by tapping on the screen, and you can share your scripts on the TouchDevelop website or submit them to the Windows Store or the Windows Phone Store. More than 50,000 scripts created with TouchDevelop have been published.
“Everyone who has a smartphone or tablet should be able to create apps—that is the vision behind TouchDevelop,” says Nikolai Tillmann, who founded the project. “The result is a new way to program that is more approachable than ever while being more powerful at the same time.
“We are seeing people of all ages pick it up, men and women, with and without any previous programming experience. That’s our vision of democratizing programming.”
TouchDevelop is being used in classrooms around the globe, from high schools in the United States to universities in India and Australia. The TouchDevelop website offers free resources to instructors, including curricular and video tutorials.
TouchDevelop runs on the iPad, iPhone, Android, Windows Phone, Windows, Linux, and Mac.
.NET Gadgeteer
For the ultimate in hands-on learning, Microsoft offers .NET Gadgeteer, a rapid prototyping platform for small electronic devices and gadgets. Created by engineers at Microsoft Research as an internal prototyping tool, it is now a free, open-source tool kit that can be used with an array of easy-to-attach hardware modules from third-party manufacturers.
Users with little or no electronics background easily can connect individual modules—such as ones for displaying images, playing sounds, taking pictures, or enabling user interaction—to a mainboard with a 32-bit processor to create devices that are remarkably sophisticated. Programming is done in Visual Studio using C#.
The .NET Gadgeteer site includes ideas, projects, and product information for every level of user, from hobbyist to professional engineer. A special section for educators offers resources for getting students 12 and older involved in programming, electronics, and design.
User-generated projects featured on the .NET Gadgeteer site include a tweet printer that downloads and prints a user’s Twitter feed, a flipbook maker for making stop-action animations, and a pulse-oximeter web service that records your pulse and blood oxygenation.
Hour of Code
Microsoft Research has created Kodu and TouchDevelop tutorials for Hour of Code events, which range from afterschool lessons to coding events at college fraternities and sororities, PTA-sponsored holiday parties where students create interactive holiday cards, and drop-in events at community centers with food and prizes.
Nearly 29,000 events are planned in 160 countries and will reach an estimated 4 million people.
“A computer-science education is a ticket to upward mobility, and every student deserves to have access to it,” says Peter Lee, Microsoft corporate vice president and head of Microsoft Research. “Hour of Code allows us to reach students, engage them, and show how fun programming can be. I am proud that Microsoft’s tools will play an important role in doing this.”
The Hour of Code events are brief, but as Miller has demonstrated repeatedly in her teaching and mentoring work with girls, sometimes all it takes is an hourlong activity to inspire someone to take the next step.
“Being a programmer is exciting,” she says. “It always has been, but it’s really exciting right now.”