Skip to Content

Steve Jobs responds on iPhone SDK's new Section 3.3.1

The release of the iPhone 4.0 SDK to developers included, in the accompanying agreement, Apple's new mandate that apps must be written in C/C++/Objective-C. This seems to block the use of alternative development environments for iPhone apps, such as the upcoming Flash CS5.

As criticism of this condition has mounted, we now have Steve Jobs responding to an e-mail from Tao Effect's Greg Slepak on the topic, sparking a discussion between the two on the change.

Jobs pointed out John Gruber's recent analysis of the change, calling it "insightful and not negative" as compared to the knee-jerk reaction in the first few hours after the SDK agreement surfaced. The revised viewpoint suggests that the real reasons behind the move are to maintain innovation and quality as more and more apps are written for Apple's touch platforms; meanwhile, we've also heard a somewhat plausible technical explanation-slash-rationalization for the move.

After Slepak read the piece, he responded in turn: "I still think it undermines Apple. You didn't need this clause to get to where you are now with the iPhone's market share, adding it just makes people lose respect for you and run for the hills.... From a developer's point of view, you're limiting creativity itself. Gruber is wrong, there are plenty of [applications] written using cross-platform frameworks that are amazing, that he himself has praised. Mozilla's Firefox just being one of them."

Jobs wrote back, "We've been there before, and intermediate layers between the platform and the developer ultimately produces [sic] sub-standard apps and hinders the progress of the platform." Slepak replied again to clarify his position, and there's no further word from Steve -- yet.

This from Jobs, and the echoing statement that's in Gruber's article, both largely ignore the fact that plenty (most?) of the 85 million users buying and running applications on the Touch OS (whether on iPhone, iPod touch, or iPad) don't care how those apps are created as long as the app experience is compelling -- they wouldn't know an IDE from an SDK, or be able to tell Xcode from Flash on a bet.

As fellow TUAW staffer Mike Rose points out, in the case of Unity, "that platform is enabling game development that would simply not be taking place otherwise on the iPhone." Right now it's not clear whether Unity is on the good or the bad side of Apple's new rules, but if the philosophical argument against third-party tools holds water, there are lots of apps already on the store that may be in trouble.

Assuming that users 'wouldn't like' apps made with those third-party tools, and that Apple is therefore justified in protecting the platform from crappy apps, strikes us as more than a bit paternalistic -- especially after the onslaught of fart apps and the recent Bikinigate, it's hard to accept "Apple knows best!" with a completely straight face.

[Via MacRumors]

Categories

iPhone SDK

The release of the iPhone 4.0 SDK to developers included, in the accompanying agreement, Apple's new mandate that apps must be written in...
 

Add a Comment

*0 / 3000 Character Maximum

66 Comments

Filter by:
Kambrose

Adobe is just trying to cash in on Apple's success with the iPhone. I certainly don't blame Apple for not allowing them to release a program that would ultimately create terrible apps that run slow as molasses...

Unity, on the other hand is a totally different story. What indie 3D game developer is going to build their own game engine from scratch in Obj-C?? I've played around with Unity for iPhone and it is a high quality tool. If Apple essentially kills Unity iPhone(and Torque from Garage Games) the 3D market on the iPhone will be completely dominated by huge game companies like Ubisoft and SEGA. You can forget about indie 3D games for good. This is serious bad news for the iPhone and it's users. It would stiffle creativity because indie game developers would be forced to abandon the iPhone as a cost and time-effective platform. Apple should be careful about this...

April 16 2010 at 2:55 AM Report abuse rate up rate down Reply
FreeRange

Its quite simple, the user wouldn't even know that it was created in Flash, however, when the iPhone failed to perform as expected (slowed down, or excessive battery drain because of Flash) the first company they would blame is Apple. The overwhelming majority of users not only love the current iPhone, but also rate it far higher than any other in satisfaction and usability. And it doesn't support flash. That says it all. Apple is all about a superior user experience, not that some techtard can run or develop in flash because "they" should have choice. Can you order a Porsche with a Volkswagen Beetle engine. Of course not.

April 13 2010 at 12:54 AM Report abuse rate up rate down Reply
E.J.

Jobs is a strategic thinker and mover with a proven track record of being where things are going to be, not where they are now, and not where they seem to be going.

What all the TechnoPunditry and mid-size developers have failed to see with their myopic narrow band viewpoint, is that Steve has determined that the size and momentum of the iPhone OS has made their opinion and participation, completely irrelevant.

April 12 2010 at 10:00 AM Report abuse rate up rate down Reply
othernet

Greg's argument that Apple is limiting creativity is moot at this point. We have some really creative apps out there already. And as for what may be possible, well, consider this - even more fart apps with CS5? No thank you.

I would prefer Apple controlling what goes in the iPhone and what does what than Adobe. Logical, no?

April 11 2010 at 11:03 PM Report abuse rate up rate down Reply
Brian K

This is banning frameworks. It's like banning JQuery and Prototype, or requiring web developers to code 100% separate code for every browser. Nevermind that the overall effect of JQuery may mean my page doesn't take advantage of everything IE6 has to offer - because of tools like that, the internet has more compatible, and better apps, not worse ones.

I'd be surprised if anyone supporting this could write a 3D game engine in objective-C. A few 'sub-standard' apps in Unity have topped the game charts. Zombieville USA, anyone? Beats the crap out of the stupid native puzzle apps. But they are native! They must be so much more performant! Morons.

Yeah, native code is better, for sure. Also, the FORTRAN guys insist FORTRAN is faster to run than C++.

If every game needs to rewrite the scenegraph, physics engine, sound engine, rendering engine - you'll only ever see games from big studios, if even that. What a profound waste of time.
Given the same $, you can make a better, more performant game using Unity than XCode. Period. Not all frameworks are created equal.

More importantly, it compiles to the same thing anyway. Just like you could rewrite JQuery in javascript, we could sit down and write the whole thing in Objective-C, and get the same result. Actually, it would probably be buggier, since there aren't whole companies devoted to removing bugs.

Finally, just because you use frameworks doesn't mean you can't fiddle with the Objective-C as well.

Good luck with development.

April 11 2010 at 7:32 PM Report abuse rate up rate down Reply
chris reed

Presumably if such apps are sub-standard why has apple been approving them for the past 12 months (at least)?

If such apps are prohibited then presumably they must be located in the app store and removed, which will be a monumental job to re-analyse all the binaries to detect such apps and delete them.

Utterly impractical, clearly not thought through - I thought apple had more common sense.

April 11 2010 at 6:44 PM Report abuse rate up rate down Reply
Jaz

Apple indeed is right about this issue, is their platform and have the right to do everything in their power to make it better and better.
Maybe Adobe should try to develop something that can work perfect with iPhone OS, they have the money and man power ( at least for now) to do it. If Jobs is adapting HTML5, which many say it still has a long road, why can't Adobe make something better instead of trying to force Apple to accept Flash just the way it is? Adobe should fix flash to work with iPhone OS not the other way around.

April 11 2010 at 6:28 PM Report abuse rate up rate down Reply
Walt French

It would be easy for Apple to set up a bargain cracked/chipped/bruised section of the App store. Apps could be tagged with one of:

* “Failed Apple's program design standards”
* “May offend some users”
* “Use of this app may violate your carrier contract and
invoke charges under their ‘early termination’ clause.”

Users would have to separately acknowledge that they want troublesome or damaged apps.

This would put a velvet glove on Apple's iron fist.

April 11 2010 at 2:35 PM Report abuse rate up rate down Reply
1 reply to Walt French's comment
soren.norrgard

Cool idea! Seems like it could fit in with the once-rumored appearance of an x-rated category in the App-store - all built on requiring extra confirmation or parental controls, and of course brand-name developers should not be able to stand the stigma of being in that category.

On the other hand, they could contradict themselves a bit - especially if obnoxious developers (and who isn't) decide to innovate themselves out of the main category: of course Apple wants the action in the App store to be in the section where rules are followed.

April 11 2010 at 4:10 PM Report abuse rate up rate down Reply
James Katt

I agree with Apple.

Quality of apps is best served by programming using C, C++, Objective-C and X-Code.

Cross-platform middleware creates programs at the lowest common denominator - not taking advantage of what features makes the iPhone unique. Since the iPhone has a different form of multitasking than other platforms, for example, cross-platform middleware won't take advantage of this differentiation. When programmers program to the lowest common denominator then the progress of the platform is hindered.

Good programmers easily pick up new computer languages and tools. It is part of the job description. It took the programmers of Super Monkey Ball, for example, only a week to pick up Objective-C and X-Code.

Section 3.3.1 essentially then weeds out the bad programmers and the programmers who are NOT truly interested in programming to the strengths of the iPhone platform.

Consider Section 3.3.1 a test of a programmer's IQ and a test of loyalty.

Those that don't qualify can move on to other platforms - and there are many other platforms.

April 11 2010 at 12:38 PM Report abuse rate up rate down Reply
zwaldowski

" or be able to tell Xcode from Flash on a bet. "

I find it curious that you mention this, Megan. This sounds very similar to the old Carbon vs. Cocoa argument. For a long time, folks like those from the Firefox crowd argued, "Oh, well, we don't need to move to Cocoa; users won't notice." But, the truth is, they will through acclimation. Just as users became increasingly aware of the fact that Firefox used 10-year-old frameworks as other browsers like Chrome, Safari, and even Camino rose up, users would be able to tell the difference between a Flash-based and a UIKit-based iPhone app if Flash apps were to prevent multitasking, murder their battery, and lack system integration (push, volume control, savestates). Or, more to the point, you say users wouldn't be able to tell between the two visually. Ask a regular iPhone user their opinion of two apps side by side, one totally designed around and for the platform (say, one that's won an Apple UI award like the billion Twitter clients) and one that lacks the UI polish that they've come to expect on the iPhone (including, but not limited to, native font rendering, CoreAnimation, seamless jumping to OS apps like Safari and Mail, etc). Even the stupidest Joe iPhone User will be able to tell.

April 11 2010 at 11:22 AM Report abuse rate up rate down Reply
Buy an ad here

Hot Apps on TUAW

Tweets

© 2012 AOL Inc. All Rights Reserved.