or Connect
AppleInsider › Forums › Mobile › iPhone › Steve Jobs defends Apple's changes to iPhone developer agreement
New Posts  All Forums:Forum Nav:

Steve Jobs defends Apple's changes to iPhone developer agreement

post #1 of 219
Thread Starter 
Apple co-founder Steve Jobs allegedly responded via e-mail to a developer who expressed his unhappiness with changes to the developer program license agreement for the iPhone 4.0 software development kit.

Greg Slepak, CEO of TaoEffect, said he sent an e-mail to Jobs after learning the iPhone 4 SDK banned the porting of Flash, Java and Mono applications. Specifically, the new agreement prohibits the development of apps using "an intermediary translation or compatibility layer tool."

Slepak told Jobs he believed the reaction to the change across the entire internet was negative, including from Daring Fireball's John Gruber, who Slepak called Jobs' "biggest fan." Jobs reportedly responded by sending a link to Gruber's commentary on why Apple changed section 3.1.1 of its developer agreement. "We think John Gruber's post is very insightful and not negative," the Apple CEO allegedly said.

Slepak wrote back and said he believes Apple's changes are "limiting creativity itself," and said he believes there are a number of applications written with cross-platform frameworks that are "amazing," such as Mozilla Firefox. Jobs, Slepak said, responded to his second note in about three minutes.

"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," he wrote.

Last October, Adobe announced that developers would be able to create native iPhone applications ported from existing software written in Flash. The feature is set to become a part of the forthcoming Creative Suite 5 from Adobe.

Apple's changes have sparked spirited debate, with one Adobe evangelist this week lashing out at the iPhone maker for what he felt was a "hostile and despicable move." Lee Brimelow, a platform evangelist with Adobe, who advocates Flash and related Flex and Air developments, gained attention when he said he believes Apple timed the change to "hurt sales of CS5."
post #2 of 219
I suppose this individual developer could create his own hardware platform if he is unhappy with Apple's license. Then he would be free to do whatever he wants with it, just like Apple. He could also just stop developing for the Apple platforms but that would probably hit him where it hurts, his income. Adobe could do the same thing, right? What to do, what to do?

Does he have the right to criticize Apple's policies? Absolutely but it's a two way street and his lane is much narrower than Apple's. He's got less room to maneuver and Apple's has a bigger, heavier vehicle rumbling down the road.

And every time a new OS X update comes out we see the results of those "intermediate layers" in the form of problems, crashes, reversions to the previous point release, and so on.
post #3 of 219
Quote:
Originally Posted by lkrupp View Post

I suppose this individual developer could create his own hardware platform if he is unhappy with Apple's license. Then he would be free to do whatever he wants with it, just like Apple. He could also just stop developing for the Apple platforms but that would probably hit him where it hurts, his income. Adobe could do the same thing, right? What to do, what to do?

Does he have the right to criticize Apple's policies? Absolutely but it's a two way street and his lane is much narrower than Apple's. He's got less room to maneuver and Apple's has a bigger, heavier vehicle rumbling down the road.

That's right. Apple is the big boy on the block now, so that makes the right by default. While one does have the right to complain, you really shouldn't. Only if you have the resources to develop an entire platform on your own do your complaints have any merit. And in that case, you are then a competitor to Apple, so that invalidates your complaints as well. Best to just keep quiet and assume Apple cannot be wrong. Success==right.

"My 8th grade math teacher once said: "You can't help it if you're dumb, you are born that way. But stupid is self inflicted."" -Hiro. 

...sometimes it's both
Reply

"My 8th grade math teacher once said: "You can't help it if you're dumb, you are born that way. But stupid is self inflicted."" -Hiro. 

...sometimes it's both
Reply
post #4 of 219
This is a non-issue. This is not any different than working on any other closed, proprietary system. You want bad? This was lifted from the Nintendo Developers Site thanks to a poster on the Taoeffect site:

Developer Qualifications: An Authorized Developer will have demonstrated the ability to develop and program excellent software for Nintendo video game systems or for other game platforms. In addition, an Authorized Developer will have a stable business organization with secure office facilities separate from a personal residence ( Home offices do not meet this requirement ), sufficient resources to insure the security of Nintendo confidential information and in order to ensure an effective environment for working with Nintendo and/or its Publishers. Nintendo provides Authorized Developers with highly confidential information and many of Nintendos Publishers also rely on recommendations and referrals to Authorized Developers. For these reasons, Nintendo exercises a very high level of care in evaluating Authorized Developers.

Other makers have just as bad policies as to what you can and can't do in order to make anything for their system. Raise as big a stink with other closed systems (including toasters) and maybe more people will listen to you.

Until then, this is a non-issue for developers that did the smart thing by using the native SDK. The complainers are just the ones resistant to change. They are afraid to venture out of their safe bubble.
post #5 of 219
Quote:
Originally Posted by lkrupp View Post

I suppose this individual developer could create his own hardware platform if he is unhappy with Apple's license. Then he would be free to do whatever he wants with it, just like Apple. He could also just stop developing for the Apple platforms but that would probably hit him where it hurts, his income. Adobe could do the same thing, right? What to do, what to do?

Does he have the right to criticize Apple's policies? Absolutely but it's a two way street and his lane is much narrower than Apple's. He's got less room to maneuver and Apple's has a bigger, heavier vehicle rumbling down the road.

And every time a new OS X update comes out we see the results of those "intermediate layers" in the form of problems, crashes, reversions to the previous point release, and so on.

I somewhat agree with this. But I also don't like the direction this is going. When large platforms like Apple's and Microsoft's start locking out third parties it's putting the users in the position to choose one over the other. You're not going to be able to mix and match what you want. Or, like so many do now, jail break your device to get what "YOU" want on it.

What would happen if Microsoft suddenly released an update that prevented iTunes from running? Think of the chaos that would ensue. Microsoft could take a big cut out of Apple's sales by doing just that. Could they get away with it? Probably not. Lawyers would be swarming everywhere.
post #6 of 219
Here we go again...
I've accomplished my childhood's dream: My job consists mainly of playing with toys all day long.
Reply
I've accomplished my childhood's dream: My job consists mainly of playing with toys all day long.
Reply
post #7 of 219
Quote:
Originally Posted by sashuey View Post

What would happen if Microsoft suddenly released an update that prevented iTunes from running? Think of the chaos that would ensue. Microsoft could take a big cut out of Apple's sales by doing just that. Could they get away with it? Probably not. Lawyers would be swarming everywhere.

Good point. Apple uses a compatibility layer (Cocoa) to get iTunes and Safari to run on Windows without having to rewrite them from scratch as native applications. And they do it in a different programming language than what Windows' native APIs are written in.

Oh the Irony. And what hypocrisy!
post #8 of 219
Quote:
Originally Posted by Tulkas View Post

That's right. Apple is the big boy on the block now, so that makes the right by default. While one does have the right to complain, you really shouldn't. Only if you have the resources to develop an entire platform on your own do your complaints have any merit. And in that case, you are then a competitor to Apple, so that invalidates your complaints as well. Best to just keep quiet and assume Apple cannot be wrong. Success==right.

This isn't an issue of right or wrong. Apple created a hugely popular system for the masses and they are being associated as a company that may very well change the way people use computers in the next 10 years. Frankly, I think that scares a lot of developers that have spent years learning their craft in another language / system and shudder at the thought of having to learn something new. That's life.

It's called evolution. Do you think we all should have stayed on FORTRAN and COBOL because too many people would raise a stink about having to learn a new language?

Technology has been like this since the beginning. Adapt or get left behind.

But the poster is right. If you want to change the world then develop your own system. That's what Android is supposed to do right?
post #9 of 219
Quote:
Originally Posted by amitofu View Post

Good point. Apple uses a compatibility layer (Cocoa) to get iTunes and Safari to run on Windows without having to rewrite them from scratch as native applications. And they do it in a different programming language than what Windows' native APIs are written in.

Oh the Irony. And what hypocrisy!

well - from what i read about itunes on windows - you just proved steve's argument.
post #10 of 219
Quote:
Originally Posted by sashuey View Post

I somewhat agree with this. But I also don't like the direction this is going. When large platforms like Apple's and Microsoft's start locking out third parties it's putting the users in the position to choose one over the other. You're not going to be able to mix and match what you want. Or, like so many do now, jail break your device to get what "YOU" want on it.

But they're not locking anyone out; they're just making sure developers use the official SDK. This is a good thing for end users because when Apple adds new features or makes major changes to the platform they almost always make sure it's as painless as possible for developers to update their apps accordingly - but they cant do that if they're not using the tools apple provided. Take the move to intel processors on the mac platform for instance; Apple continually highly recommended developers code their apps in xCode using cocoa; those who listened were able to make the switch fairly easily. Those who didn't took years to port their apps.

You don't want to come to rely on an app that won't run on iPhone OS 5 until sometime after iPhone OS 6 has shipped.
post #11 of 219
The reality is that devs now who haven't been using Apple's tools now have to do so. Their previous investments have been intentionally deprecated by Apple. They can either develop their applications solely for apple, or develop 2 versions side-by-side, one for Apple, the other for the other OS's.

This at a time when Android is making great strides and a growing number of devs had voiced their dissatisfaction at developing for the iPhone OS. Does not seem like a smart move for me. Gruber says no one ever makes a good application using a 3rd party toolkit. Is that true?
post #12 of 219
Quote:
Originally Posted by amitofu View Post

Good point. Apple uses a compatibility layer (Cocoa) to get iTunes and Safari to run on Windows without having to rewrite them from scratch as native applications. And they do it in a different programming language than what Windows' native APIs are written in.

Oh the Irony. And what hypocrisy!

We are talking about mobile systems that require more care. Also, iTunes doesn't use a third party platform that excists ONLY to interject themselves into various platforms.

I think it's important to look into the agreements from other platforms and systems. For instance the PS3 and the Nintendo example above.

I still don't understand why people are so upset that a vendor would ask that things written for their devices conform to a standard they feel is best for their device. Do you want to insist that radios also carry TV? That my Honda use Ford parts? That a creator can specify what goes into and on their device?
post #13 of 219
Quote:
Originally Posted by amitofu View Post

Good point. Apple uses a compatibility layer (Cocoa) to get iTunes and Safari to run on Windows without having to rewrite them from scratch as native applications. And they do it in a different programming language than what Windows' native APIs are written in.

And as we all know, iTunes on Windows sucks, doesn't it? Same with Safari.

Both of these examples prove Jobs larger point that cross-platform development layers result in inferior products. Period. TaoEffect's examples of Ableton Live and Firefox are actually quite hilarious because with Live you have an application that adheres to zero Apple Human Interface Guidelines, is confounding to even the most advanced Mac user, and takes as much time learning the interface as it does learning the application itself. WIth Firefox, you have a browser that doesn't feel like a Mac application AND has terrible performance to boot.

Jobs is right.

If Microsoft banned all cross-platform development tools, they would have every right to do so. And Apple would simply write new versions in whatever native tools MS was requiring. (And you may end up with PC apps across the board that behaved consistently and performed better.)
post #14 of 219
There is too much noise that common sense is completely engulfed.
And that Adobe evangelist did blow it up for Adobe long before this brouhaha with his failed attack on iPad.

Sad that Flash developers would side with Adobe instead of arming themselves with flexibility.
Adobe as is with Apple is defending its interest, developers should defend theirs, and not be hijacked by this situation.

It is unbelievable why they ignored to have Apple input before adding that feature to Flash CS 05? Working with Apple perhaps this situation wouldn't exist.

So, maybe there could be some light down the tunnel, if Adobe stop being bully (Yeah, it is Adobe being bully here) and cooperate with Apple, and why Flash developers are not suggesting cooperation between booth companies to achieve an easy way out?

.
post #15 of 219
Quote:
Originally Posted by Crimguy View Post

The reality is that devs now who haven't been using Apple's tools now have to do so. Their previous investments have been intentionally deprecated by Apple. They can either develop their applications solely for apple, or develop 2 versions side-by-side, one for Apple, the other for the other OS's.

This at a time when Android is making great strides and a growing number of devs had voiced their dissatisfaction at developing for the iPhone OS. Does not seem like a smart move for me. Gruber says no one ever makes a good application using a 3rd party toolkit. Is that true?


1. Apple has always strongly recommended developers use Apple's native tools. Developers ignored that advice, and now they playing ground has shifted. Unfortunate, but not as out of the blue as some are screaming.

2. Then let developers develop for Android. Clearly Apple thinks they are in the driver's seat here, and with iAd coming down the pike -- which will essentially be paying developers to develop for the iPhone OS -- I think they're right.

3. Gruber said that they will always be inferior to a natively-coded app, and of course he's right. Whether it's speed, UI, or compatibility, an intermediary layer by its very nature will result in an app that does not perform at the same level as a native one. The fact that TaoEffect's examples of two "great" cross-platform apps are ones that exhibit many of these issues is just further proof.
post #16 of 219
Quote:
Originally Posted by AppleInsider View Post

Slepak wrote back and said he believes Apple's changes are "limiting creativity itself," and said he believes there are a number of applications written with cross-platform frameworks that are "amazing," such as Mozilla Firefox. Jobs, Slepak said, responded to his second note in about three minutes.

Hmmm, I wonder if this move affects Opera too. It was submitted to the App Store not too long ago and hasn't been accepted yet:

http://www.youtube.com/watch?v=OpTCS3g-cBY

Clearly Apple want to push webkit but if I can get browsing to be that fast on 2G/3G, I'd switch to Opera on the iPhone. Opera is a Cocoa app but maybe it has some code in there that Apple can use as an excuse to block it. Having its own Javascript engine would be a problem for a start.

Quote:
Originally Posted by sflocal

Until then, this is a non-issue for developers that did the smart thing by using the native SDK. The complainers are just the ones resistant to change. They are afraid to venture out of their safe bubble.

The iPhone runs OS X though so there's no absolute need for the restrictions. Nintendo obviously depend on the quality of the games to sell the platform. Apple can put apps about sex positions and farting or soundboards up and it doesn't matter. Code translation is actually beneficial as it allows rapid application development in IDEs that are more efficient than a developer learning XCode/Obj-C etc. It's up to Apple what they do of course and other companies do have restrictions that are as bad but the reasoning behind this move is starting to look more and more dubious.

Rather than it being a move about software quality (which was the reason given for the centralized App Store), it's more about profit and control. If Opera goes through, it starts to eat away at their mobile Safari smartphone share. If Flash apps can be authored, it means there's no need to buy a Mac to build apps and no need to use XCode.
post #17 of 219
Quote:
Originally Posted by sflocal View Post

t's called evolution. Do you think we all should have stayed on FORTRAN and COBOL because too many people would raise a stink about having to learn a new language?

Technology has been like this since the beginning. Adapt or get left behind.

Exactly. And Apple is forbidding evolution--to better, faster, more stable, more maintainable programming languages. Objective-C is three decades old. New languages, like Scala, have powerful type systems and flexible syntaxes compared to Objective-C. Their type systems allow them to be heavily optimized by compilers. They are precisely garbage collected, which takes less processor time than manual memory management. And many memory allocations can be eliminated all together, which uses less memory than manually managed objects that are always allocated on the heap, and often less memory than C++ because the optimizer runs at link time and sees the whole program.

I agree with your point wholeheartedly. But you make the case for exactly why Apple's policy is ridiculous.
post #18 of 219
Quote:
Originally Posted by sashuey View Post

I somewhat agree with this. But I also don't like the direction this is going. When large platforms like Apple's and Microsoft's start locking out third parties it's putting the users in the position to choose one over the other. You're not going to be able to mix and match what you want. Or, like so many do now, jail break your device to get what "YOU" want on it.

What would happen if Microsoft suddenly released an update that prevented iTunes from running? Think of the chaos that would ensue. Microsoft could take a big cut out of Apple's sales by doing just that. Could they get away with it? Probably not. Lawyers would be swarming everywhere.

The situation, like most, is filled with subtle differences. I have to ask, how many people have jail broken iPhones? What percentage of the public do you think have ANY desire to do this? How much does it improve function for the average consumer? I remember a time when people in an office I worked in wanted to stick with Token Ring and not use Ethernet. They LOVED Token Ring. But it didn't offer an upside to the majority of people in the office.

The issue at hand is what is best for a consumer who wants a device that runs and runs well. They are what is most important for Apple. There is a method that allows for better software and better solutions. There is a path that offers the best experience for the average consumer.

Not what's best, or easiest for the develops who don't want to learn a different language.
post #19 of 219
Quote:
Originally Posted by Crimguy View Post

The reality is that devs now who haven't been using Apple's tools now have to do so. Their previous investments have been intentionally deprecated by Apple. They can either develop their applications solely for apple, or develop 2 versions side-by-side, one for Apple, the other for the other OS's.

This at a time when Android is making great strides and a growing number of devs had voiced their dissatisfaction at developing for the iPhone OS. Does not seem like a smart move for me. Gruber says no one ever makes a good application using a 3rd party toolkit. Is that true?

On a PC you cannot install OSX or at least without some level of shenanigan.
On an Intel Mac you can install Windows, and it comes with Xcode as option.

Why no one is urging both companies to work together on this?
post #20 of 219
I never understand why people get upset at this. if apple says they don't want use a specific program then don't use it or go write apps for android. there is a good reason why the iphone and app store are successful, and it wasn't because they allowed flash ports. developers have a choice of platforms these days. apple does things in certain ways which at first people hate, but they always turn out to be big hits. sometimes openness doesn't work look at android. while it may be a success in sales terms the OS feels patched together all the apps work differently some require a keyboard some only work on 2.0. they crash alot. its not pleasant with the iphone it just works and just seems solid
post #21 of 219
Quote:
Originally Posted by amitofu View Post

Exactly. And Apple is forbidding evolution--to better, faster, more stable, more maintainable programming languages. Objective-C is three decades old. New languages, like Scala, have powerful type systems and flexible syntaxes compared to Objective-C. Their type systems allow them to be heavily optimized by compilers. They are precisely garbage collected, which takes less processor time than manual memory management. And many memory allocations can be eliminated all together, which uses less memory than manually managed objects that are always allocated on the heap, and often less memory than C++ because the optimizer runs at link time and sees the whole program.

I agree with your point wholeheartedly. But you make the case for exactly why Apple's policy is ridiculous.

The point is what is best for the Apple customer. Not who wants to study a comp sic semesters reading.

If it is a bad move I imagine the products will fail...well honestly the 'best' technology or product is often subjective and often there are other factors that go NGO something being successful.
There is no doubt that what Apple is doing will provide for better software and a better user experience with systems that are sensitive to battery and power.

If they are wrong, as you have decided, they will likely adopt your opinion at some future point to avoid bankruptcy because people have turned away from their solutions because they
are not evolutionary enough in their technology.

But in the meantime if you want to develop for Apple's mobile platform you can learn to use their requested technology.
post #22 of 219
Quote:
Originally Posted by Tulkas View Post

That's right. Apple is the big boy on the block now, so that makes the right by default. While one does have the right to complain, you really shouldn't. Only if you have the resources to develop an entire platform on your own do your complaints have any merit. And in that case, you are then a competitor to Apple, so that invalidates your complaints as well. Best to just keep quiet and assume Apple cannot be wrong. Success==right.

Notice how the post you're replying to understands the issue to be a two-way street, whist you promptly ignore it and pretend anyone agreeing with Apple's point of view is shutting down the debate. You build your own imaginary gulag, and lock your own chains, and create your own sense of repression in this situation. Maybe you're confusing that with being trumped. Keep on torturing yourself with imaginary monsters if you like.
post #23 of 219
Quote:
Originally Posted by Mark Fearing View Post

I still don't understand why people are so upset that a vendor would ask that things written for their devices conform to a standard they feel is best for their device. Do you want to insist that radios also carry TV? That my Honda use Ford parts? That a creator can specify what goes into and on their device?

No. But I do want to insist that TVs play video shot by any camera as long as it's in the correct format. I don't want Ford or Honda to dictate what brand of wrench can be used to work on their car.

I have no problem--indeed I agree with--Apple requiring the use of their APIs on their platform. If you have to use their buttons and their toolbars and their dialogs--great! I totally support that. But saying that I have to do so using only their choice of programming language is where they stop dictating the end result and start deciding what kind of wrench you can use to get to that end result. It's like Apple requiring that a socket wrench be used when you really need a flare nut wrench. That kind of decision hurts users because they end up with a shoddier product than they would get if they used the proper tool.
post #24 of 219
Quote:
Originally Posted by sashuey View Post

What would happen if Microsoft suddenly released an update that prevented iTunes from running? Think of the chaos that would ensue. Microsoft could take a big cut out of Apple's sales by doing just that. Could they get away with it? Probably not. Lawyers would be swarming everywhere.

It would be Microsoft's right to do, but after weighing all the costs and benefits to users and developers. If iTunes or its software underpinnings got, say, buggy/slow and started to hog system resources, made programs crash, etc (as Apple claims what some of this stuff does) and it was seriously detracting from user experience of the company's product, then it would not just be right, but prudent for Microsoft to do so.

But decency would require that the offending company be given enough notice/chances. My sense is Apple has done that with Adobe, in particular, but there has been little give from Adobe's side.

Bottom line: It's a legitimate call from Apple's standpoint.
post #25 of 219
Nice to hear that Mr. Jobs is responding on this topic but there is something wrong with this approach. I think it the best interest of Apple to have a public figure when dealing with iPhone developer issues as there has been so many of them since the beginning and developers are a passionate and vocal bunch. The CEO should not be the public figure for these matters and ultimately receive the blame by unhappy developers. How about an iPhone Evangelist? Every software company has one.

Personally, as an iPhone developer I really could care less about Adobe, Flash and this specific change to the agreement. Adobe makes tools for the web, they have no entitlement to be on the iPhone. However, I can understand how some people are upset since they were brainwashed into thinking that open is good and also because they were probably making good money using this shortcut.

Apple needs to be more transparent and consistent with their developer agreement. They need to communicate better. A few weeks back there was an issue with adult apps and now this debacle. You can't allow something then ban it later on. Apple should seriously find a better way to manage this. Having the CEO respond to emails directly and occasionally is not the way to go. Microsoft won the PC battle because they catered much better to developers. Google's Android is has a great reputation with developers because they are seen as being open. Apple needs to improve its propaganda machine.

Currently, Apple risks alienating the very same folks who are behind the success of iPhone. At this crucial time when their biggest rival (Google) as gaining momentum, I hope they will improve on this aspect because at the first sign of Android overtaking the iPhone, you can bet the developers will follow.
post #26 of 219
Quote:
Originally Posted by Marvin View Post

... Rather than it being a move about software quality (which was the reason given for the centralized App Store), it's more about profit and control. If Opera goes through, it starts to eat away at their mobile Safari smartphone share. If Flash apps can be authored, it means there's no need to buy a Mac to build apps and no need to use XCode.

People say this all the time (about it just being about the money), but I've yet to see anything that indicates it's true. It's just a flip comment to toss out that can't be disproven in any substantive way.

I bet you can't give a single concrete example that would indicate this is true.

I find the idea that Apple would jeopardise so much and take the hit in terms of good will just to enable the sales of a few more iMacs a bit ridiculous. Especially when they are selling them so fast already they have a hard time keeping up with production as it is.

Apple is not a profit driven company. Everything about their history, their policies, their margins and their market stance indicates that squeezing that extra dollar out of consumers is actually the last thing on the company's collective mind.
post #27 of 219
Quote:
Originally Posted by RidleyGriff View Post

3. Gruber said that they will always be inferior to a natively-coded app, and of course he's right. Whether it's speed, UI, or compatibility, an intermediary layer by its very nature will result in an app that does not perform at the same level as a native one. ...

But you can program in another programming language without using any intermediate layers at all. C++ can call C functions without an intermediate layer. Objective-C can call C++ and C. And the same goes for many other languages. The issue of what programming language you use is totally unrelated to whether you use shoddy cross-platform compatibility layers.
post #28 of 219
Quote:
Originally Posted by Prof. Peabody View Post

People say this all the time (about it just being about the money), but I've yet to see anything that indicates it's true. It's just a flip comment to toss out that can't be disproven in any substantive way.

I bet you can't give a single concrete example that would indicate this is true.

I find the idea that Apple would jeopardise so much and take the hit in terms of good will just to enable the sales of a few more iMacs a bit ridiculous. Especially when they are selling them so fast already they have a hard time keeping up with production as it is.

Apple is not a profit driven company. Everything about their history, their policies, their margins and their market stance indicates that squeezing that extra dollar out of consumers is actually the last thing on the company's collective mind.

Great car garage analogy over at TechCrunch.

Quote:
In short, Apple is like a car repair place with an open hiring policy...
post #29 of 219
Even without abstraction of programming, there are still plenty of crappy apps in the store. Steve Jobs is being too gracious with what's already developed.

Sub-standard apps you will find regardless of the original programming language.
Fragmentation is not just something we have to acknowledge and accept. Fragmentation is something that we deal with every day, and we must accept it as a fact of the iPhone platform experience.

Ste...
Reply
Fragmentation is not just something we have to acknowledge and accept. Fragmentation is something that we deal with every day, and we must accept it as a fact of the iPhone platform experience.

Ste...
Reply
post #30 of 219
Quote:
Originally Posted by amitofu View Post

Exactly. And Apple is forbidding evolution--to better, faster, more stable, more maintainable programming languages. Objective-C is three decades old. New languages, like Scala, have powerful type systems and flexible syntaxes compared to Objective-C. Their type systems allow them to be heavily optimized by compilers. They are precisely garbage collected, which takes less processor time than manual memory management. And many memory allocations can be eliminated all together, which uses less memory than manually managed objects that are always allocated on the heap, and often less memory than C++ because the optimizer runs at link time and sees the whole program.

I agree with your point wholeheartedly. But you make the case for exactly why Apple's policy is ridiculous.

Your claim that "everybody knows" that Scala or other languages are better programming languages than those derived from C is what is ridiculous. For every advantage of Scala, there is a corresponding disadvantage. That's why David R. MacIver, who is no enemy of Scala, concludes on his blog: "I try to stay out of language wars these days. I find the whole endeavour incredibly tedious. I dont really feel like arguing whether OCaml is better than Ruby is better than Scala is better than brainfuck is better than C. I like them all (ok maybe not brainfuck), and there are valid arguments for and against each of them."
post #31 of 219
Quote:
Originally Posted by Mark Fearing View Post

Not what's best, or easiest for the develops who don't want to learn a different language.

Sometimes I want to use a screwdriver, but it's not because I don't know how to use a hammer. The problem with Apple's policy is it's too blunt. I hate crappy portware as much as anyone. But limiting programming languages isn't the answer. 95% of the apps on the app store today are distingustingly bad. And 99% of those horrific apps are already written exclusively using Apple's tools.

Sometimes a different tool does the job better. I want the choice to be able to use that tool--not because I don't know how to use the other tools, but because the other tools are simply the wrong ones for the job. As long as the final product natively targets Apple's platform, what difference does it make. Well, it makes a huge difference! Using the right tool produces a better product. And sometimes a product can only be produced using other tools. Using another tool doesn't mean you're not integrating with the platform.
post #32 of 219
standard UI and stable performance is why I agree with Apple on this one. I think Flash debs are often lazy & the app store is already deluged in mediocre apps.

If developers don't like it then hit the highway.
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
post #33 of 219
Quote:
Originally Posted by amitofu View Post

Exactly. And Apple is forbidding evolution--to better, faster, more stable, more maintainable programming languages. Objective-C is three decades old. New languages, like Scala, have powerful type systems and flexible syntaxes compared to Objective-C. Their type systems allow them to be heavily optimized by compilers. They are precisely garbage collected, which takes less processor time than manual memory management. And many memory allocations can be eliminated all together, which uses less memory than manually managed objects that are always allocated on the heap, and often less memory than C++ because the optimizer runs at link time and sees the whole program.

I agree with your point wholeheartedly. But you make the case for exactly why Apple's policy is ridiculous.

Nice play on spinning what I said to suit your position. Perhaps I did not adequately explain myself. My point is not to focus on the language being used and not how old that language is. I failed I think to explain that.

To develop for product X, here are the guidelines. Use it or use the door. Whether you agree with it or not is irrelevant since that is how it works. If you don't want to change, then move aside for someone that will.

Developers saw how good Apple's iPhone was when it came out and how the joe-consumers were waiting in line for hours to get one. Developers of course helped the platform get to where it is. Consumers love their device due to the control Apple has on it. Scary but sad truth.
post #34 of 219
Quote:
Originally Posted by amitofu View Post

Sometimes I want to use a screwdriver, but it's not because I don't know how to use a hammer. The problem with Apple's policy is it's too blunt. I hate crappy portware as much as anyone. But limiting programming languages isn't the answer. 95% of the apps on the app store today are distingustingly bad. And 99% of those horrific apps are already written exclusively using Apple's tools.

Yet neither Flash nor Monotouch offer any respite from the aforementioned mediocrity. In fact they'd likey swell the 95% of bad apps.
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
post #35 of 219
Quote:
Originally Posted by Tofino View Post

well - from what i read about itunes on windows - you just proved steve's argument.

Are you saying that Apple releases sub-standard software?
Fragmentation is not just something we have to acknowledge and accept. Fragmentation is something that we deal with every day, and we must accept it as a fact of the iPhone platform experience.

Ste...
Reply
Fragmentation is not just something we have to acknowledge and accept. Fragmentation is something that we deal with every day, and we must accept it as a fact of the iPhone platform experience.

Ste...
Reply
post #36 of 219
Is it just me? Where is Steve Jobs defending the change? All he says is: "John Gruber doesn't hate it."
post #37 of 219
Quote:
Originally Posted by amitofu View Post

Exactly. And Apple is forbidding evolution--to better, faster, more stable, more maintainable programming languages. Objective-C is three decades old. New languages, like Scala, have powerful type systems and flexible syntaxes compared to Objective-C. Their type systems allow them to be heavily optimized by compilers. They are precisely garbage collected, which takes less processor time than manual memory management. And many memory allocations can be eliminated all together, which uses less memory than manually managed objects that are always allocated on the heap, and often less memory than C++ because the optimizer runs at link time and sees the whole program.

I agree with your point wholeheartedly. But you make the case for exactly why Apple's policy is ridiculous.

How is garbage collection (checks to see if it needs to clear up any memory) going to use less processor time than manual memory management (clears up when it is told to). Only if it's badly written will the latter ever perform slower.

This about Apple ensuring new features get adopted as fast as possible, by controlling their platform themselves.

If they allow third-party IDEs become popular, then it'll the third party that determines when the new features are adopted (after Apple has released the new features).

If you can't see that, you truly are an idiot.
post #38 of 219
Quote:
Originally Posted by amitofu View Post

Good point. Apple uses a compatibility layer (Cocoa) to get iTunes and Safari to run on Windows without having to rewrite them from scratch as native applications. And they do it in a different programming language than what Windows' native APIs are written in.

Oh the Irony. And what hypocrisy!

I already covered this nonsensical assertion of hypocrisy in another thread:

http://forums.appleinsider.com/showp...&postcount=251


The bottom line, stop whining, man up, start programming in Objective-C.
post #39 of 219
Quote:
Originally Posted by g3pro View Post

Are you saying that Apple releases sub-standard software?

I love Apple and all, but because of the extra non-core frameworks that are needed on Windows, the software does run worse. And that just supports Steve's argument further.
post #40 of 219
Quote:
Originally Posted by commun5 View Post

Your claim that "everybody knows" that Scala or other languages are better programming languages than those derived from C is what is ridiculous. For every advantage of Scala, there is a corresponding disadvantage. That's why David R. MacIver, who is no enemy of Scala, concludes on his blog: "I try to stay out of language wars these days. I find the whole endeavour incredibly tedious. I dont really feel like arguing whether OCaml is better than Ruby is better than Scala is better than brainfuck is better than C. I like them all (ok maybe not brainfuck), and there are valid arguments for and against each of them."

Right. No one language can be proclaimed universally better than any other. What matters is the final product. It all ends up as machine code anyway. Apple is the one claiming that using only C-family languages will produce better apps in the app store. I think that's demonstrably false. I love Objective-C. And Apple does a great job designing Objective-C APIs. The app we're writing uses Objective-C for all interface and user interaction code. But the backend is written in Scala and compiled with VMKit. It would be slower in Objective-C, at least 10x more lines of code, take 10x longer to write and maintain, and have more bugs. The end user has a completely native experience, they have no way of even knowing that another program language was used along the way.

Apple is unnecessarily forbidding completely native apps with this policy--that's why it's ridiculous.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: iPhone
AppleInsider › Forums › Mobile › iPhone › Steve Jobs defends Apple's changes to iPhone developer agreement