35 comments

[ 4.1 ms ] story [ 74.2 ms ] thread
So now there might be hope again for Python as well.
I think it'd be interesting to see someone write a letter to Apple to see how far they'll bend.

For example:

"An educational app to teach programming in python. The app consists of a code editor and source-level debugger, an online tutorial book, and example code for the user to edit and modify. Source code is stored in a read-only sandbox; any user-edited material must be saved to DropBox or an iDisk. Some built-in language functionality is disabled, to comply with App store policy (notably fork()/exec(), filesystem access outside the sandbox, most POSIX IPC, etc). Interpreter will only execute while app is open (no backgrounding)."

In other words, something like "Learning Python" as an ebook, with http://www.skulpt.org/ (Skulpt) wired up to it, possibly with some IDE-style bells and whistles.

Well, I just sent almost exactly that email (reworded, of course, not actually copied-pasted). We'll see what they say.
If they say "yes", and you go and write the app, I'll buy it.

(I'm not any kind of developer, this decade, but I'd like to keep my hand in by learning something new.)

You still aren't permitted to write your whole app in a real language, though, of course.
I'm not sure from what standpoint, exactly, Objective C isn't a "real" language.
Manual memory management, no MOP, etc.
Boy, game developers hate real languages.
Especially the ones with 30 years of accumulated C libraries.
Objective C is a strict superset of C, and garbage collection is optional (I'm not even sure that GC is enabled on iOS).
(comment deleted)
It's not enabled.

It'll take another 1-2 generations of ARM CPUs and another 1-2 generations of RAM cramming to get to the point where GC is feasible.

GC is not available on iOS.
iirc, ObjC now has garbage collection. Unless, I'm going crazy.
Objective-C 2.0 does have garbage collection. It can be enabled for an application in the IDE. However iOS apps do not support use of garbage collection.
Ah. Thanks for the clarification.
What kind of reassurance do developers get that this policy will not change yet again in the future?
You want predictability and a company that won't react to destroy your business model because it's a little inconvenient? Develop for Android.

Other than that, the only thing you can do is make yourself so very useful to Apple that they'll grant you an exemption if they decide to turn on a dime again.

What kind of reassurance have developers ever had that Apple won't pull the rug out from underneath them? It's a dangerous market, and has been from day one, because you do business at Apple's pleasure. When you build on a platform that is wholly and completely controlled like the iPhone/iPad platform is, the danger that the gatekeeper may change the rules or kick you out is an integral part of doing business on that platform.
So basically proving this was always about killing Flash.
"Notwithstanding the foregoing, with Apple’s prior written consent, an Application may use embedded interpreted code in a limited way if such use is solely for providing minor features or functionality that are consistent with the intended and advertised purpose of the Application."

Apple's prior written consent? Limited way? Solely for providing minor features of functionality?

IPhone developers, I laugh at you derisively. All of the five guys that actually made some money while sharecropping for Apple need not respond.

Well, what's a better platform, then?

I develop for the iPhone because in some ways, it's a "sure" way to make money. Not necessarily a lot of money, but still. Other than Android, which has its own problems, what other platforms exist that give as wide an audience willing to spend money on your apps?

It's all cheery and nice to say "Apple sucks, hahah iPhone developers", but what's are other options for those of us who cannot work at a normal job and do not have the resources, time, or dedication to invest our lives in a startup?

(Serious question, by the way, not just bashing your comment here.)

I think the subtext there is that he was saying that Android is the direction developers should lean towards. The mobile applications market is very squarely coming down to Apple versus Android. There are other big players in the mobile devices space, but not really in the mobile applications space, or at least not to the degree that Apple and Android are. Apple is where the money is today, but there are lots of folks that feel that those winds are changing - that Apple is starting to really start to make developers discontent enough to abandon their platform, while Android is finally starting to catch up to the point that it can compete as a first-class citizen.
They still have alot to catch up with. Start with allowing developers from more countries to put up paid apps on Market.
Something silly like 90+% of the money is STILL being spent on Apple Appstore purchases.

Google isn't doing their store well enough. They're only letting 13 countries buy and 9 countries sell. This is a huge problem.

The next 10 years are likely about who leaves fewer hideous mistakes in their implementation, and BOTH types of phones have them currently in their ecosystems

I'd say Apple is the much better bet for 3 years still.

I'm not sure about that; as long as Apple's policies are so capricious, few who aren't big enough to cut a private deal are going to invest immense resources in an iOS only project. Therefore there are going to be huge classes of applications that will have few if any first class, iOS only implementations.

Heck, you can't even do iPad development for your own business unless you've got over 500 employees and something I've not heard in detail WRT D&B.

You can still do internal dev, but it's a hell of a lot less convenient. You buy multiple 99 dollar dev licenses and do adhoc builds, and have to provide new provisioning profiles every 3 months.

Not perfect, but still possible.

Android, per se, doesn't exist. 3 Android platforms do, 1.5, 1.6 and 2.x. The issue with android even in the companies that have working stores and payment systems, is horrible horrible fragmentation. Hopefully they do something to fix this, but it honestly feels like the Android team at google is all engineers and no businesspeople negotiating a solution to this HUGE problem for that "platform" which is really 3 platforms.

It is like if windows had 30% on windows 3.1, 30% on windows 98 and 35% on windows XP SP2 and the other 5 percent on all sorts of things currently. There is that big of a gulf between the different OS versions when trying to program for it (which I do).

I want android to succeed. It's just not here yet.

I guess my point here is that the things that I cited will very possibly give Android time to succeed. It might not generally succeed, e.g. Apple may be able to carve out a long term and large niche of the market, but it seems to me that they're near totally excluding themselves from many important ones.

E.g. a lot of people talk about the using the iPad in health care. That strikes me as a non-starter unless Apple is able to change that market ... which they just might be able to do by directly working with a few 3rd parties. But not as the market stands today.

There's a very good chance you're right in your near term 3 year prediction ... but I could see things swinging faster, although not much faster. 2 years at minimum.

I think things will go one way or the other with this: The Apple "You can't innovate on the small scale" bias caused by their dev license policies might actually help fight medical record fragmentation. I can see a couple "trusted clients" talking to a few "standard EMR formats" on standard compliant servers finally taking hold if the device captivates doctors.

Additionally, the iPad works just fine with web software that doesn't use onmouseover. Lots of hospitals have much of their software on internal websites.

Then again, medical software always has been ultrafragmented, and perhaps it will stay that way, in which case android will likely be the implementation platform (or jailbroken iPads)

(comment deleted)
Where does it say "Lisp" in that article?
The article headline mentions Lua. The submitter could have confused it with Lisp. Or maybe the submitter changed it thinking a Lisp headline would draw more attention. In any case, the rule change could potentially include Lisp even if it wasn't specifically mentioned. Personally, I dislike it when submitters change headlines, but I don't feel like anything is misrepresented in this case.
The article also describes Lua as a library, so it may just have been simple ignorance. People occasionally ask me what Lisp is when they see the book on my desk while passing by.
Just came back from the DMV and had a man lean over to read the title of my book more carefully; it had "Adversarial Information Retrieval" on the cover, collected conference papers. You could tell from the look on his face that he understood what each individual word meant, but not their combination (I was itching to enlighten, only if he asked.)

Worse than Lisp is casual mathematics. People just can't grok that mathematics can be "read" by the lay non-mathematician. They know 'mathematician' and 'physicist', and they also know that engineers use calculus, but the rest of mathematics looks exotic and hard to them. Even when the math is used for the sake of brevity, a more concise and more malleable representation of mental models (objects.)

The next time someone asks me to multiply large integers in my head just because I read stuff with greek letters, I will substitute variables for their values and solve the general case, starting with a primitive ZF construction of the natural numbers ;-)

Can anyone comment on whether this affects MonoTouch?