More iPhone PL lockdown... Goodbye Scratch!

If the general idea wasn't enough to make you mad, or if you wrote it off as being purely an Apple/Adobe spat, this ought to cut a bit closer to LtU's heart...

Apple removes Scratch from iPad/iPhone/iTouch.

My wife has taught a couple of classes using Scratch with young kids, and to see the pride they feel at their creations is a marvelous thing. I think restricting their ability to share that feeling is really reprehensible. And the damage done to the programmers of tomorrow? Hard to say...

(Apologies for this being on the front page twice now, but I think this really deserves a post of its own...)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

From the article: "Want to

From the article: "Want to be truly computing literate, where you write as well as read? There’s no app for that."

Quoting Alan Kay:

Most schools define computer literacy as being able to operate Microsoft Office and maybe do a little web design. They're missing the point. That's like saying, "If you know which end of a book to hold up, and you know how to turn to Chapter Three, then you're literate."

Literature is first and foremost about having ideas important enough to discuss and write down in some form. So you have to ask, "What is the literature that is best written down on a computer?" One answer is to make a dynamic simulation of some idea that you think is important, a simulation that you can play with and that you can learn from.

8 by 5

Alan Kay apparently thinks high of the iPad form factor.

"When the Mac first came out, Newsweek asked me what I [thought] of it. I said: Well, it's the first personal computer worth criticizing. So at the end of the presentation, Steve came up to me and said: Is the iPhone worth criticizing? And I said: Make the screen five inches by eight inches, and you'll rule the world." - Alan Kay

Its a pity that with the language clause, AK's education use scenarios are all dead on the iPad.

The kids are alright

(Let me make it clear - I don't think there's anything nice to be said about Apple and this move, aside from "it's their business prerogative") Could Scratch simply sidestep the issue and provide a JavaScript+HTML5 solution? That would be fairly exciting, and entirely ok in the iPad.

I really think that the "damage done to the programmers of tomorrow" is hyperbole, sorry. The iPad has Safari and a JavaScript interpreter. JavaScript is a much nicer language to be exposed to than C, C++ / ObjC. There's plenty of interesting hacking and learning to do in that space. It's obviously not as nice as an industrial-strength compiler for the iPad, but "will someone think of the children?" is not a good argument. Simple example, I just tested this JavaScript logo interpreter on my iPhone and it works pretty well (small screen aside).

If anything, today's overall environment is much more hacker-friendly than in the past. One can put together (literally, from the printed circuit boards and chips) a great first computing device for about $100, with completely open schematics, and a large community. It just happens to be called Arduino, not Apple II. If your language targets C, you're already pretty much there.

That's fine if your laptop

That's fine if your laptop app can lose O(10^2) from interpretation overhead and architectural simplifications of low-power devices. E.g., can handle this.

O(10^2)=O(1)

use of big-O notation for constants makes me cringe every time I see it...

I could have expanded this

I could have more correctly written this in terms of machine model complexity, but more people are familiar with O, even when abused, than asymptotic communication models ;-)

Actually I'm kind of

Actually I'm kind of interested to see how it would be written in asymptotic communication models. (Of course you could have just said "two orders of magnitude of performance.") The Big-O abuse was confusing enough that I didn't understand what it meant until the follow-up complaint.

-Max

No surprise

No surprise really...I was more surprised when I heard that Scratch was available in the App Store. What I'd like to see is the Lively Kernel (http://www.lively-kernel.org/) updated with UI changes to make working with it on a touch screen practical.

No surprise

The scratch developers are at MIT Media Lab, an Apple love zone. Scratch works much better on MacOSX than it does on any other platform and I think that's the way they like it.

There's a flaw for that.

It's open source isn't it?

As far as I know, the rules only apply to things on the iTunes store. Surely you can install scratch by building and installing it from a Mac with a development kit.

Possibly

But in the case of a programming environment for kids, I would think that's putting the cart rather far before the horse.

iPhone Developer Program

Except that to install any software of your making on your own phone you must have a Mac with development tools, and be a registered iPhone developer (a $99 enrollment). Even then you can only install the software on up to previously 100 registered devices.

The iTunes store is the only acceptable medium for distribution of iPhone software, for profit or otherwise, and it's going to stay that way.

Other twists

Two other twists:

  1. This has nothing to do with the new language lockdown. The Scratch player is a platform for downloading and running code; that was already forbidden. What's bizarre is that it ever got approved in the first place.
  2. Scratch has its own equivalent of the App Store, the code sharing forum; you can upload programs from your Scratch program for other people to run and remix. In this forum, they apply a language lockdown of their own: although Scratch is open source, you are not allowed to upload programs from a modified version.

That's not a language lockdown, it's a runtime lockdown

Unless I am misunderstanding you, the Scratch forum restriction is unlike the Apple Store lockdown. They don't care where you got the code or what language it was "originally written in," they just want to make sure that uploaded programs run on other people's interpreters.

-Max

I'm not saying it's the wrong decision

They don't care where you got the code or what language it was "originally written in," they just want to make sure that uploaded programs run on other people's interpreters.

Now that I think of it, I guess you're right: Scratch saves projects to the local disk, so it's theoretically possible to create a project with some other program, open it in Scratch, and upload it.

All in all, I can't really object to the policy. It's probably the best choice they can make given their constraints: they don't want kids to find programs that confuse Scratch, and they can't afford a staff to examine the uploaded programs by hand. I just found it amusing in context.

unfair to kids

It's probably the best choice they can make given their constraints: they don't want kids to find programs that confuse Scratch [....]

Because if they did the kids might learn something?

Possible change

Perhaps Apple is trying to be more lenient in some cases, if you get their written consent: see here, from Squeak running on ipad.