Steve Jobs Weighs In On iPhone Programming Language Mandate
Dotnaught writes "Greg Slepak, founder of software company Tao Effect, wrote Apple CEO Steve Jobs to complain about Apple's mandate that iPhone applications be originally written in C/C++/Objective-C. Job's response was to endorse a post by John Gruber on the Daring Fireball blog. Jobs called it 'very insightful,' suggesting Gruber's prediction that third-party iPhone development tools are out might be right. Jobs sent a second reply that also doesn't bode well for third-party iPhone development tools: 'We've been there before, and intermediate layers between the platform and the developer ultimately produces sub-standard apps and hinders the progress of the platform.'"
I read you post three times but I could see no facts, examples, anecdotes, anything. Just words.
Flash supports multitouch and has access to accelerometer data, GPS info and so on, so what "new features" don't fit well with the medium?
Semicomplex games not good? There are so many games in flash, some of them excellent, that isn't even funny. Quake has been ported to Flash, as well as Prince of Persia, just to name two classics, I could give many more examples.
HD Fullscreen video works great in Flash 10.1 RC
Compile to C is banned. The policy is not a technical requirement, it's a contract. You can't get access to the Apple App Store without agreeing not to use intermediate layers. If your code is created in something other than Objective C, C or C++, you're in violation of that agreement, even if at some point all of it is represented in C code. Steve Jobs is a benevolent dictator and he has just extended his reach into your toolkit. (Captcha: soviet, how fitting)
I'm guessing you are American, the IPhone is a tiny player in the rest of the world - a world that is dominated by Nokia, SE, LG, and Samsung for the most part, though there are many other manufacturers. In Asia the Chinese knock offs are extremely popular.
Now that said, if you were to venture away from the self delusional 'free phone mentality' and just bought something outright, you would find even in America, a vast array of hardware to choose from. Hardware without all the draconian operator restrictions programmed in.
From http://theflashblog.com/?p=1641
Its all fun and games until someone loses an eye... then its just fun.
Forcing me to use a specific programming language is insane. Imagine Microsoft demanding all windows apps to be written only in C# and compiled only with Visual Studio. It would be an outrage. But hey, it's Steve Jobs, the Big Brother himself, and he knows what's best for us, right?
Is this asinine? You are aware Microsoft is demanding all Windows Phone 7 apps be written in C#/Silverlight, right? I may not agree with their move, but to say it puts them alone on a pillar of evil seems to show your own bias more than any factual opinion.
You are confusing platform with development tools. Apple is banning cross-platform development tools, even if they produce valid code for the platform. Microsoft is doing no such thing. If you have a development tool able of producing both Flash, Silverlight and iPhoneOS versions of your app. Microsoft will accept it, Apple will not.
They don't have to be a monopoly to break the law.
You do have to be a monopoly in order for leveraging market share against competitors to be illegal.
What we're seeing here is Apple leveraging their App Store market in a way that reduces competition from Adobe and Google in the smart phone market. This is perfectly legal right up to the point that Apple acquires a monopoly market share in smart phones. They're nowhere near that point, so leveraging their tiny (10%?) share of the smart phone market to attempt to box out Google and Adobe is perfectly legal. This is exactly how competitors compete all the time. It is desirable that competitors differentiate themselves in these sorts of ways so that the market can make choices. (N.B. differentiation is desirable - I'm not saying that I think it's desirable that Apple do what they did - I don't.)
The choice here is this: will the market prefer a clearly more restrictive but also more selective platform, or will the market prefer a less restrictive but also less selective platform. This sort of decision can and should be made in the marketplace, not in a court of law. If anyone wants to influence this market decision, they have only to choose Android (or some other smart phone platform, Palm, Blackberry, etc.) rather than the iPhone.
I can write apps for android on ANY platform.
And what's more, the way Adobe wants to do it is "in Flash". They could just use Apple's decoder, but the whole point is to keep all web video playing in Flash so that developers need to keep buying new versions of Flash.
What's more, if you read Adobe's on statements on the issue, you eventually realize that a lot of their performance problems come down to this: Apple has two APIs, Carbon and Cocoa. Carbon is basically a depreciated legacy API that exists in OSX to make it easier to allow developers to port OS9 applications to OSX, but Adobe didn't want to rewrite their applications so they kept using the depreciated API. Apple wasn't adding new features to Carbon and so it never got hardware acceleration support for video decoding, which meant that Adobe's applications didn't have access to hardware acceleration support.
Adobe is trying to blame Apple, but their real complaint against Apple is, "In the 10 years that OSX has been out, we never bothered to rewrite their plugin to stop using the depreciate OS9 APIs.
I don't see any technical reason for them to care what language you originally use to produce it.
There is a nice simple example right from Mac OS X itself: the application menu.
There are essentially two ways for applications to construct the menu: either by adding own items to whatever Cocoa creates automatically (that's official blessed way) or create one from scratch. If one goes with the official blessed way, then regardless of version of Mac OS X, application's menu would look integral to the rest of the OS. If one picks the latter option (many Carbon applications did it that way) then menu would look out of place for any Mac OS X version except the one application was created originally.
The nice thing about Cocoa framework is that it take over a lot of OS integration tasks. But the story doesn't end there. The way Cocoa takes over the tasks allows Apple to introduce the changes into it in a next Mac OS X versions and have all properly written applications still work, behave and look properly - in accordance with rest of the new OS.
Such practices are essentially taboo in Windows or Java. But Apple with Cocoa (and ObjC - it is the enabler of the magic) does them quite often.
All hope abandon ye who enter here.