A Wall-Crawling Roomba That Teaches Kids to Code

codewithroot.com

Harvard roboticists have created a robot that will gradually introduce children to programming skills by blending them with art.

Almost 50 years ago, four scientists developed a programming language for children, known as LOGO. And around 25 years ago, I was using that language to drive a small triangular cursor—the “turtle”—around an Apple IIGS. As the turtle trundled along, it left a trail of ink behind it, carving out rectangles, stars and other shapes the monochrome screen. It taught programming in the guise of art. It was fun.

Now, a team of engineers led by Radhika Nagpal from Harvard University are trying to create a tangible 21st-century version of the turtle—a robot called Root, which they’ve designed to teach people of all ages how to code. A small hexagonal disc with magnetic wheels, Root can climb over whiteboards and draw shapes as it goes, much like the turtle. But it’s also armed with sensors for light, color and textures, allowing it to navigate a race track or maze drawn on the board, or play music when it zooms over different shapes, or chase the trail left by another Root.

And Nagpal’s team have designed it so it can be controlled by several programming languages, from colorful icons aimed at younger kids to full Python and Java aimed at adults. Unlike other coding robots, which are targeted to specific age groups, Root’s creators hope its continuum of languages will help people to gradually build their programming skills throughout their early lives.

Nagpal is no stranger to clever robots. She’s the inventor of the Kilobots—a collective of cheap simple robots that can cooperatively assemble into complex shapes, like a primitive version of Voltron. Her team also built TERMES —another cooperative swarm that can build 3-D structures out of stackable blocks. They’re working on robots that build with glue, robo-bees that can fly as a swarm, and more.

A few years ago, while thinking about possible projects for summer students, Nagpal thought about building a robot that could climb whiteboards with magnetic wheels. It would be an automated eraser, a vertical Roomba.

“I would be the coolest professor ever if, while I’m writing on one board, there was a robot erasing the other board for me,” she says. Her student Raphael Cherney built the thing in a few months, and it worked beautifully.  

But when Justin Werfel, who worked on TERMES, saw the new robot, he saw more than an eraser.

“He said: This is the LOGO turtle and it’s’ going to draw for me,” Nagpal says. “And I had an epiphany. We realized that we had a single robot that could inspire people to do very different things at very different ages.”

Root’s programming app comes with several tiers of complexity. It starts with purely graphical languages aimed at the youngest users, where kids use simple wordless icons to control the robot. These gradually give way to full text-based languages like Python, aimed at adult users. And each of the tiers builds off the previous ones.

“You can take programs that the small kids write, open a file and see it in Python,” Nagpal says. “Or teacher can show a kid how the program they wrote actually looks.”

“Many kits are limited to either very simple entry-level programming, or more complex but less accessible programming environments,” says Maja Mataric from the University of Southern California. “Root seems to strike the balance by providing various levels of challenge, thereby being able to grow with the learner, and not be quickly outgrown.”

Marina Bers from Tufts University, who has spent her career designing programming languages and robotic kits for young children, is doubtful Root will be as universal as its creators hope.

“There is no such a thing as a robot that can meet the developmental and learning needs of every age in childhood,” she says. “Four-year-olds are very different than 12 years old. I would encourage them to target a specific age group.” (Her own robot, KIBO, is aimed at kids aged 4 to 7.)

But Nagpal is more optimistic, having seen children interact with the prototype robots at schools and science museums.

“Little kids are very good at grasping programming concepts—better than us and better than their teachers,” she says. “They get very real feedback. They write something and the robot moves; it’s obvious when something has gone wrong.”

The use of a whiteboard takes the act of programming into the world of art, and allows the children to get creative with their coding. “You can set a challenge for a friend’s robot by drawing on their board,” Nagpal says.

A few months ago, Nagpal, Cherney and their colleagues founded a startupraised just under $400,000 through Kickstarter and attracted a dozen schools interested in testing out their first wave of Roots. The robot currently costs around $200 and the team are hoping to bring it down even further. Their hope is that a school can buy, say, a pack of ten and then re-use them in many classrooms, for kids of different ages.

Nagpal sees Root—whose name comes from robots, minus the BS—as a way of addressing America’s coding gap. Even though there are more computing jobs than ever, and even though 90 percent of parents want their children to learn computer science, only 1 in 10 elementary schools offer such lessons.

“At Harvard, I teach really smart kids who’ve already made it through lots to get here,” Nagpal says. “But I look at the public schools around me, and there are many kids who aren’t even getting a chance to find out they love this stuff. They won’t find out till college and that’s almost too late. It’s just wrong, and not just from an equality point of view; you’re also losing talent for no good reason.”