I Love Walled Gardens, by Rory Marinich
rinich.com
rinich.com
The iPad is a 4 star restaurant, my linux box is my kitchen. I like 4 star resturants and they are not evil (unless they have a 90% monopoly on the market [and the food is crappy (Microsoft circa 2001)] [Apple might do this to in which case they are evil for being a monopoly not for being closed]). They are closed. I can't go into the kitchen and make food. But I can be inspired by the food I enjoy there.
The idea of teaching children to learn to program using iPad apps is some what intriging, however, I would compare it to http://dreamdinners.com/main.php?static=index its not the same as buying a cook book and being in your own kitchen. Or going to culinary school.
So yes we will see people using the iPad to learn to program , possibly, but I think there will always be those who prefer to learn on an open platforms.
ps. I think you might like this graph :) http://chris.smeder.com/essays/3_stevejobs.htm
For good or for bad, for the past 25 years or so, programmers have effectively been subsidized in that the tools to design and create programs are effectively the same as the tools to run programs.
So every system, simply by installing a compiler, is ready to write computer programs.
Early computers didn't even have that step. They had assemblers and basic in the ROM. It was assumed that you were going to be writing programs; how else were you going to get computers to do what you want?
The iPad/iPhone is the latest and greatest step in that huge gap. A little uneasy, for some of us, perhaps, who grew up with QBASIC on-device-coding and can't imagine any other way.
But that is sort of a straw-man issue. You have to buy a real computer, so what? There's a closely-related, but way-more-troubling problem.
App review.
App review is painful. I've had two apps axed by Apple not for bugs or for security issues, but because, quite simply, Apple didn't like them (technically I had 3 such rejections; one was "reversed" on "appeal").
Think this doesn't affect you? It does. Google Voice found out the hard way. It was easier for them to rewrite their app in HTML5 then to talk Apple into letting it on the app store. Same goes for Google Navigation, that will never see the light of day.
For every app that you hear about, there are hundreds (I suspect more like thousands) of developers who had an app rejected and quietly went away.
That's the danger in these new devices. Not that you need a computer to develop for them. Not that the apps are sandboxed and you can't animate your icons or you require some ridiculous API nobody should ever need.
The problem is that Apple can--and, in fact, does--reject well-behaved applications that it simply doesn't like. Not just the buggy ones. Not just the malicious ones.
That's a thought that should chill every developer to the bone.
Fair point. But is it better than not being able to change the font at all?
That's the Apple alternative. To have an idea in your head and not be able to implement.
Not because it's too hard. Because somebody simply doesn't want you to.
We're watching this play out right now with Letters (http://arstechnica.com/apple/news/2010/01/rage-against-the-m...) because apparently Apple Mail.app isn't good enough for power-emailers.
Nobody expects Letters to become the new default OSX Mail client. Rather, it will probably be a successful niche app for power users.
An app like Letters would never see the light of day on the iPhone because it "duplicates system functionality." Mail is good enough, so the logic goes.
Why should we have to have the horrible experience... I don't think it's asking to have our cake and eat it, to be able to play with the toys we've bought?
Should all developers just stick to linux and windows ? - Your walled garden will be a much duller place for it.
I had been dragging my feet about writing down my own thoughts, felt it both necessary and unappealing. But thanks to Rory, I have another option. I'll do what hackers (or in my case, aspiring hackers) do when they find what somebody else has which both a) accomplishes what they would've/intended to accomplish and b) accomplishes it in a superior manner: forget about mine and just use theirs.
I'mma link to this here post all over the fuckin' place.