Some people took issue with our posting of this letter to Apple’s private developer forums because access is restricted to paid developers. In order to better expose our thoughts we attach the copy we sent to Steve Jobs at Apple on April 14th 2010.  

He did respond, that conversation is private, discussions with him continued into October when a final decision was made not to allow back in the store.

Out of this we remain hopeful that Apple sometime in the future will comment on how they can address the issues raised in our letter below.

We take some satisfaction that on June 7th the result of this letter was that Apple changed the Programmer License agreement to allow Interpreted Languages into the store and downloading of code with written permission. Sadly this clause was altered again in September to deny the download part.

Still it allows developers who wanted to use other languages than C or objective-c the freedom to use them on an iOS device and run an interpreter and use a virtual machine.


Wednesday April 14th, 2010.

Rejecting an app with foundations in the Dynabook vision.

This morning Apple rejected our Application "Scratch" since it violates clause 3.3.2, the staff member was pleasant about it, we had a good talk, still we had to press the remove from sale button.

Scratch was a viewer to nearly 1 million projects build by hundreds of thousands of content creators (average age 13) on  MIT is the creator of Scratch, we just built a viewer so people could view them on the iPhone. Scratch's vision is "imagine * program * share", so we wanted to be the "Share" instigators.

So let me give you a bit a background then ask a question about how can we create interactive electronic books without running afoul of 3.3.2?

As everyone knows the embodiment of the iPad vision and idea comes from Alan Kay's vision of the Dynabook

Later work by Alan as the creator of Smalltalk resulted in the UI choices we know today, perhaps you can say Steve Jobs visit to Xerox Parc in the early 80's is still unfolding. But what people might not realize is that Apple's Smalltalk license reborn as Squeak moved into the open source community and was relicenced again last decade for use on the XO or OLPC and is supported by the SqueakLand folks & sugar folks

Part of that journey was that Dr John Maloney who was a co-creator of Morphic at Sun then with Alan Kay in Squeak, later moved to MIT and under Dr Mitchel Resnick built Scratch, a tool to let young people be creative, with nearly a million projects uploaded, yes a fair amount of success.

A few years back I took part in multi-year project called Sophie which was under the direction of Bob Stein to build, well The Future of the Book. Sadly it was a few years ahead of its time, otherwise I would be working on the iPad version today.

Or would I?

See if you consider the that sure looks like an ebook, so how do you create an ebook if you can't download it and interpret the command in the ebook as created by the author? Or consider the timeline scripting we did in Sophie

This is a puzzle to us, and I think closes a door on the ability to create unique content for the iPad.

Above I've included a number of links to people who've made computer history and laid the foundation for what the iPad is, yet as the WIkipedia article states "Alan Kay still thinks the Dynabook hasn't been invented yet, because key software and educational curriculum are missing."  So if you follow the chain of where Scratch came from, yes it IS a Dynabook app, sadly not an iPad app.

Having to worry about languages, and algorithm choices when building an app just makes that chore more difficult, I'd rather not see such restrictions in our contracts, ensuring app stability, look/feel, behaviour, and application usefulness & classification is I think sufficient control to ensure a person's software experience on the iPhone/iPad is fruitful.

Someday I'd like to push the submit button on a Scratch editor, eToys editor  or Sophie for the iPad, but how do I get there? Is Javascript the only solution?

By John M McIntosh