Apple Rejects Kid-Friendly Programming App

About 40 years ago, tech legend Alan Kay invented the idea of a lightweight tablet computer that children could use to learn programming.

Apple’s iPad delivers on the tablet part of that vision — but the company has blocked a kid-friendly programming language based on Kay’s work from getting onto the iPad.

Apple removed an app called Scratch from its iPhone and iPad App Store last week. The Scratch app displayed stories, games and animations made by children using MIT’s Scratch platform, which was built on top of Kay’s programming language Squeak, according to MIT.

John McIntosh, a software developer unaffiliated with MIT, made the Scratch app for iPhone on his own and announced its removal in a blog post last week.

Though the Scratch app wasn’t made by Kay (pictured at right), he wasn’t pleased about the news when contacted by Wired.com.

“Both children and the internet are bigger than Apple, and things that are good for children of the world need to be able to run everywhere,” Kay e-mailed Wired.com.

Kay, a former Xerox PARC computer scientist, is credited for conceiving the idea of a portable computer in 1968, when computers still weighed over 100 pounds and ate punch cards. He called his concept the Dynabook.

In his conception, it would be a very thin, highly dynamic device that weighed no more than 2 pounds, which would be an ideal tool for children to learn programming and science. Kay’s Dynabook was never made, but characteristics of his concept can be seen in the mobile computers we tote around today.

Steve Jobs took a tour of Xerox PARC in 1979, and some might even say that his visit is still unfolding with the release of the iPad tablet, which resembles Kay’s description of the Dynabook (illustrated at right).

Jobs this month personally mailed an iPad to Kay, who praised Apple’s tablet as “fantastically good” for drawing, painting and typing. But Kay declined to give his full evaluation of the iPad to Wired.com until his question of whether Scratch or Etoys — another educational programming language Kay developed for kids — would be usable on the device.

With the removal of Scratch from the App Store, for now the answer to Kay’s question would appear to be “No.”

McIntosh said he had sent e-mails to Jobs and Apple staff and received replies from them asking questions about Scratch. He awaits Apple’s decision on whether the app will reappear in the App Store.

“If you follow the chain of where Scratch came from, yes it is a Dynabook app, sadly not an iPad app,” McIntosh wrote in Apple’s developer forums.

McIntosh said that Apple removed the app because it allegedly violated a rule in the iPhone developer agreement — clause 3.3.2, which states iPhone apps may not contain code interpreters other than Apple’s. The clause reads:

An Application may not itself install or launch other executable code by any means, including without limitation through the use of a plug-in architecture, calling other frameworks, other APIs or otherwise. No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple’s Documented APIs and built-in interpreter(s).

Daring Fireball blogger John Gruber, who first reported the removal of Scratch, explained that Apple’s intention with the “no interpreters” rule is to block meta-platforms such as Adobe Flash.

“Imagine a hypothetical arbitrary ‘Flash Player’ app from Adobe, that allowed you to download SWF files — such an app would stand as an alternative to the App Store,” he wrote. “What’s frustrating about Apple blocking Scratch is that Scratch doesn’t seem like the sort of thing that one could use to build software that’s even vaguely of the caliber of native iPhone apps. It’s really rudimentary stuff, focused on ease-of-programming. But what’s Apple to do? Change the rule to ‘no high-quality interpreters’?”

Apple earlier this month instituted a new rule that also effectively blocks meta-platforms: clause 3.3.1, which stipulates that iPhone apps may only be made using Apple-approved programming languages. Many have speculated that the main target of the new rule was Adobe, whose CS5 software, released last week, includes a feature to easily convert Flash-coded software into native iPhone apps.

Some critics expressed concern that beyond attacking Adobe, Apple’s policies would result in collateral damage potentially stifling innovation in the App Store. Scratch appears to be a victim despite its tie to Jobs’ old friend.

Apple did not respond to Wired.com’s request for comment.

“I think it’s terrible,” said Andrés Monroy-Hernández, a Ph.D. candidate at the MIT Media Lab and lead developer of the Scratch online community. “Even if the Scratch app was approved, I still think [clause 3.3.2] sends a really bad message for young creators in general. We have a forum where kids post comments, and they were really upset about this.'”

“Even if Apple approves it now, it sends the wrong message that you have to be backed by MIT, or be famous for a Pulitzer-winning cartoon, to be accepted as part of this digital democracy, and I feel that’s really, really bad,” he said. “More than accepting the app, I hope Apple will change their policies into something more open.”