If they ever decide to allow GC in the iPhone platform, we would be able to look forward to MacRuby as a first-class Cocoa language. I would be extremely pleased.
Recent Reviews
-
I was given the Ipod nano 6th generation for Christmas 2011. I was starting to take up running and needed something to track my run. since I just started I was only using my Ipod roughly 3 times...
-
I have had the iPad Verizon 4G LTE for a month now, and over all I couldn't be happier with the machine. The only issue I have found so far is when on wifi it has a slower speed in processing...
-
I have owned at least a dozen different Mac laptops over the years, starting with a Powerbook 1400 back in the day. The 13-inch Air is my absolute favorite of the bunch. It's the first laptop...
-
I spent quite a bit of time reading the setup manuals and various Apple articles about manually setting up this device since I have an unusual setup, and the setup manuals indicated I would have...
-
all i have to say is i love it its so much faster and i could just slip it into my purse p.s it has a ton of space for the 64gb
Steve Jobs defends Apple's changes to iPhone developer agreement - Page 4

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.
So, hop on or jump off! Neither I nor Apple will lose sleep over it. Objective-C and iAd it shall be for the resourceful and ambitious developers. There is nothing like a good reward for an honest day's work. Deep pockets trump Ideology; 24 hours news cycles nurture ridicule.
You just lost all credibility with this line. So sad.
I've been in software development for 20+ years and seen numerous times how the next "great change" in technology requires learning something new. We would complain for about a week and get right down to it since if we don't adapt, someone else will. That's the difference between us and the majority of iPhone developers that took the time to learn the native SDK environment compared to the wannabe weekend-codewariors and IDE folks that have to let some kind of translator do the work for them.
Your personal attacks just proves I touched a nerve.
So sad.


That argument sounds like communists/socialist stating why a command-economy must work better, while ignoring the dispersed knowledge problem.
Yes, if the consumer and free market wins -- and Flash is so superior to develop solutions than Apple's native platform that the majority of products are developed with it -- then the consumer and Adobe wins and Apple loses. Consumers would even be able to move to the best hardware/software because they wouldn't be as locked in to Apple's proprietary solution.
You're arguing that to avoid that, the consumer should lose now and never have that choice, so that we can have an inferior product with inferior choices to protect Apple's market by increasing the cost and barrier to entry of any competitors. Because gosh, poor Apple needs that protection.
No, that doesn't seem to be what the poster was saying.
Flash could become the dominant development platform without being superior. Just at Windows for an example. Flash could become dominant for being the best at serving the lowest common denominator. Microsoft is again a good example. Very little that MS has produced over the years could ever be called best of breed (though they are improving lately), they their OS became a monopoly, their IDE became the standard, their browser ate everyone else's marketshare, etc, etc. Best doesn't always win.
The point is, and I think it is a good one, that Apple does face a risk to their platform if other tools became the defacto entry to the iPhone world. If these other tools end up being very slow to adopt new features that Apple pours a ton of resources into developing, then it distinctly hampers their ability to promote these new features and hurts the platform.
Apple has decided to do more to ensure they have control over the success or failure of the iPhone as a platform. Jobs never wants Apple to be in a position like they were in with the Mac, where he had to ask Gates to continue making Office for the Mac. The Mac has always been dependent on the attitude and actions of other companies. There has always been the risk that if MS stopped Office development for the Mac, the Mac would die. They are now unwilling to risk allowing the iPhone to end up in the same precarious position. Apple has proven that taking more control or involvement of the Mac in sales/dev tools/applications has been a successful formula in regaining their success and controlling their success.
I do, however, think Apple is at risk of going over the line when it comes to protecting their turf.
I just wish people here would look at both sides of these issues. Some only see Apple as wrong. Others, with as much thought, can never see Apple as wrong, nor even question their actions and intentions.
"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.
"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.

I'm glad you agree somewhat with that post. It's the way most major companies do business. Open Source Software is a great idea, but it didn't give us the quality of software we have today. I'm not so sure that if Microsoft blocked out iTunes it would have a big cut in Apple's market share. It might have added market share to Apple at the expense of Microsoft. Software competition has always been the deciding factor. People have chose quality over ubiquity or cost.
If MS had crippled or blocked iTunes on Windows (and managed to get away with it legally...) it would have killed the iPod and would have caused the iPhone to be stillborn. Without iTunes on Windows Apple would have no entry to the other 90%. The iPod was well received (sort of) on launch but became the raging success it is only when it was opened to the Windows world.
or is the thought that people would have just bought a Mac so they could try out the new iPods? I suppose that really would have boosted Apple's market share.
"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.
"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.

That argument sounds like communists/socialist stating why a command-economy must work better, while ignoring the dispersed knowledge problem.
Yes, if the consumer and free market wins -- and Flash is so superior to develop solutions than Apple's native platform that the majority of products are developed with it -- then the consumer and Adobe wins and Apple loses. Consumers would even be able to move to the best hardware/software because they wouldn't be as locked in to Apple's proprietary solution.
You're arguing that to avoid that, the consumer should lose now and never have that choice, so that we can have an inferior product with inferior choices to protect Apple's market by increasing the cost and barrier to entry of any competitors. Because gosh, poor Apple needs that protection.
a) Sorry, this doesn't have anything to do with communism, socialism or fascism.
b) What does that even mean, "if the free market wins"? The free market doesn't win or lose, individual businesses win or lose, in a free market. And, sorry, the idea that Adobe is the consumer's friend is pretty laughable.
c) Apple's mobile platform will only ever be inferior if they take your advice and allow Adobe, Google, et al. to undermine it for their own commercial ends. Again, the idea that any of these companies are "acting in the interests of consumers" is ridiculous.
Apple does make great products, but not because they love consumers. They do it because SJ can't stand crap, and it turns out that making great products is also a great way to make money.
Adobe certainly doesn't love consumer, particularly consumers of Apple products. Nor do they love developers. What they do love is the money they make off their crumbling Flash empire.
As for the other parties, none of them are in this for the love of consumers or developers either. Each has it's own goal, and that goal isn't to help make Apple's mobile platform the best on the planet. In fact, their goals to lock developers into their own cross-platform development tools are directly in conflict with Apple's goal to make theirs the best on the planet because the ideal cross-platform development tool makes all platforms the same.
So, as I've said before, Apple is under no obligation to be a host organism for these tool vendors.

No, because in this scenario Adobe would then be shafting developers, and those developers would jump ship to other tools that allowed them to develop software for the platforms they wanted to target. Also, there is no danger of people not using Apple's development tools, so I don't see things ever playing themselves out quite that way. Apple's tools are free, and they give you a good result, so they are a good choice for many shops. However they are not the best choice for ALL shops.
In fact, I'd come to the opposite conclusion. It is in Apple's best interest to have a thriving developer community, where everyone gets to use the tools that are best suited for the app they are writing. A clamp-down like this is the sort of thing that's going to drive people to other platforms.
Really? You sure? Are you really confident that would happen and are willing to risk your company for that ?? So explain to me Flash for OS X ? As a consumer with an iPad, iPhone and Touch. I don't give a damn what company made what app and from what devkit, but if something goes wrong with my device, the first company I will be blaming is not you. It's Apple for having a crappy device and that translate to negative word of mouth. Hell, developers can jump ship all they want to other tools, but when people gave up on one device because the perception of that device is crappy and apps are unstable as hell. No amount of tool switching will make those customers come back especially when they perceived that the competition and the apps they have are better than what Apple offered and guess what, developers follow customers and their money. Developers can easily forgive and forget when profit is mentioned.
Including those who weren't really interested in developing for the iGadgets, but are using Apple to develop the same products but with better implementation for the competition.
I'm literially a newbie to MacRuby but can already see where it could be huge.
Part of the problem at Apple is that they really don't seem to have a handle on the market for iPad. I suspect that Apple sees it very much as a bigger iPod while many here see far greater possibilities. Certainly shipping iPad without enough RAM to do a decent job with iWork demonstrates some confusion to me. Maybe this is a case where they get their bearngs set with Rev 2 and realize iPad is far more than a iPod Touch.
Dave
..and continue to use it. So either they are unaware or do so intentionally. Can't really have it both ways.
"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.
"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.
I'll tell you what I'm not willing to risk: spending a year or more of my life working on a app for the iPhone only to have Apple tell me I can't deploy it when I'm all done.

So explain to me Flash for OS X ? As a consumer with an iPad, iPhone and Touch. I don't give a damn what company made what app and from what devkit, but if something goes wrong with my device, the first company I will be blaming is not you. It's Apple for having a crappy device.
I'm actually OK with Apple not wanting the Flash plug-in in Safari, because then what you are saying would be true. But, for an individual app, if the app sucks its clear who the consumer is going to blame. There are lots of less-than-wonderful apps in the app store as it stands. I've bought a few of them myself. I don't see anyone blaming Apple for them. If an app sucks, it sucks. If its great its great. Who cares what technology was used to create it?
And, as this video shows: http://www.youtube.com/watch?v=wwFbwHaP5tE
There is the potential for some really really cool stuff for the iPad platform being built with Adobe technologies. If I had an iPad, I'd be demanding that Apple give me access to this content.

To say "Flash Sucks" shows ignorant of software development. Flash is a tool. Do we argue "a screwdriver sucks? It does at pounding nails or cutting wood -- for driving screws, it isn't that bad. There are many Flash apps that are better than iFart, shaking babies, or jiggling booby apps that they approved. Apple can't manage the quality of the apps they choose, but they want to dictate the tools as that somehow matters more? No rational person should buy the illogic of that.
I'd rather them not accepting crappy apps based on the quality of the app, than denying good app because they don't like the platform it was made on (but no one would know).
I notice in another post you say that you have never programmed in ActionScript. I actually have, and I fancy myself a relatively decent programmer. My problem with the Flash platform is that it can be inefficient and buggy, especially on OS X, so that even if you write wonderful code that may work well on Windows, sometimes it just runs terribly on a Mac, and worse yet you have to try to figure out what is causing the problem (don't count on Adobe telling you what works well and what doesn't on the various "supported" platforms) and then either develop a kludge to make it work or abandon the feature.
I don't blame Apple for wanting to restrict the use of a tool from a company that has shown indifference about its products' woeful performance on Apple's operating systems. I blame Adobe for this. If they hadn't treated Apple users like second-class citizens for so long they probably wouldn't be in this situation. Why should Apple believe that Adobe's products will work well this time?
Maybe instead of crying foul to anyone who will listen the developers of Flash should look in the mirror and ask themselves why they neglected Apple's OS for so long now that they have essentially had one of their flagship features shot down. How much of a reason is there for devs to upgrade to Flash CS5 now?
That said, I don't necessarily agree with the overarching implications here. There are going to be some good tools that are going to get the shaft. But as has been said over and over, developers don't have to follow the rules. They don't have to play the game. I'll bet they will because there's still a lot of money to be made from iPhone/iPad.

I notice in another post you say that you have never programmed in ActionScript. I actually have, and I fancy myself a relatively decent programmer. My problem with the Flash platform is that it can be inefficient and buggy, especially on OS X, so that even if you write wonderful code that may work well on Windows, sometimes it just runs terribly on a Mac, and worse yet you have to try to figure out what is causing the problem (don't count on Adobe telling you what works well and what doesn't on the various "supported" platforms) and then either develop a kludge to make it work or abandon the feature.
I don't blame Apple for wanting to restrict the use of a tool from a company that has shown indifference about its products' woeful performance on Apple's operating systems. I blame Adobe for this. If they hadn't treated Apple users like second-class citizens for so long they probably wouldn't be in this situation. Why should Apple believe that Adobe's products will work well this time?
Maybe instead of crying foul to anyone who will listen the developers of Flash should look in the mirror and ask themselves why they neglected Apple's OS for so long now that they have essentially had one of their flagship features shot down. How much of a reason is there for devs to upgrade to Flash CS5 now?
That said, I don't necessarily agree with the overarching implications here. There are going to be some good tools that are going to get the shaft. But as has been said over and over, developers don't have to follow the rules. They don't have to play the game. I'll bet they will because there's still a lot of money to be made from iPhone/iPad.
All good points.
"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.
"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.

That argument sounds like communists/socialist stating why a command-economy must work better, while ignoring the dispersed knowledge problem.
Yes, if the consumer and free market wins -- and Flash is so superior to develop solutions than Apple's native platform that the majority of products are developed with it -- then the consumer and Adobe wins and Apple loses. Consumers would even be able to move to the best hardware/software because they wouldn't be as locked in to Apple's proprietary solution.
You're arguing that to avoid that, the consumer should lose now and never have that choice, so that we can have an inferior product with inferior choices to protect Apple's market by increasing the cost and barrier to entry of any competitors. Because gosh, poor Apple needs that protection.
Apple is a private company in case you haven't notice and is responsible to it's share holders to make a profit and grow as a company. You see your argument does not compute, Apple as a private company cannot forced people to buy their products, they cannot force people to develop for their products and they cannot forced anybody to sell their products. Whereas , a command economy or what we call centralized economy, You are forced to buy what the government offer, you are forced to develop products for the government and you are forced to sell those products for the government. Apple cannot do that, only government.
Wrong again, the consumer and the free market truly wins when we let those companies battle it out for our money not with some ideology of free, close and open.
Tell you what, customers/consumers even the dumb ones will know what will work for them and they don't need somebody who obviously have an interest to this fracas to tell them what to use.

It's amazing how much whining is done over Apple. I keep thinking "why not shut the hell up, change your diaper and buy a competitor's product?" It's especially annoying to see forum twits whine about Apple stopping 'innovation' when they've never done anything of consequence. That should be an automatic 5 across the eyes, probably should cost them a few teeth.
This entitlement mentality is weak intellectually and ultimately a cowardly dodge of personal responsibility. I think it's a way talentless people bolster their own lack of motivation and hide their deep insecurities. Apple isn't your problem folks, you need to get on the Cialis forums and complain about your issues there.
oxygenhose is my new hero.
Why, because his argument against anyone with the gall to question Apple is to revert to childish insults?

"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.
"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.

I'll tell you what I'm not willing to risk: spending a year or more of my life working on a app for the iPhone only to have Apple tell me I can't deploy it when I'm all done.
I'm actually OK with Apple not wanting the Flash plug-in in Safari, because then what you are saying would be true. But, for an individual app, if the app sucks its clear who the consumer is going to blame. There are lots of less-than-wonderful apps in the app store as it stands. I've bought a few of them myself. I don't see anyone blaming Apple for them. If an app sucks, it sucks. If its great its great. Who cares what technology was used to create it?
And, as this video shows: http://www.youtube.com/watch?v=wwFbwHaP5tE
There is the potential for some really really cool stuff for the iPad platform being built with Adobe technologies. If I had an iPad, I'd be demanding that Apple give me access to this content.
That's the problem, Adobe is willing to work for Apple now, but Adobe wasn't too keen to work with Apple for the last decade or so. Why would Apple risk it's product line and it's future for Adobe? Let Adobe proved itself first on Apple's Mac Computers with it's products and Jobs may be willing to make a compromise with the iGadgets line.
Most consumers don't read most Macintosh blogs and news sites much less Apple Insider. Many people blame the problems of their applications to the manufacturer not the developer of that product. Many judge the platform on what they hear or read or seen. So yes, an App screws up, Apple gets the blame . Unfortunate but true.

Before Apple's choice, I would be able to get Wired Magazine written in Air, which was rocking app and a BETTER experience than the website.
Now what? It'll cost Wired more time and money to bring it to market. They'll be rushed so it'll have LESS features, and it'll probably have more bugs (based on new codebase).
Why does it have to be rushed and have less features? Nobody is going to release Wired magazine as an application before them, so they don't have to worry about being first to market.
Furthermore, of course the application looked great... it was built with direct collaboration from Adobe. I don't expect the majority of apps to exude the same quality.
Finally, wouldn't it be better if a company developed an application ala iBooks that was instead like a magazine rack with the ability to read all magazines in the same way (yet still having the interactivity illustrated in the Wired app)? Having separate applications for each magazine not only leads to icon clutter (I guess folders help here), but the likelihood that many would require different interfaces for reading would be incredibly annoying. At least it would be for me.
It's just a fact of mobile computing life that Apple now has the clout and leverage to do a little more picking and choosing of developers. Unhappy? Android is waiting for you. Probably less revenues there but if you are unwilling to live by Apple's rules then Eric Schmidt awaits you with open arms (and his own set of rules).
Developers would probably wring their hands less if they just accept the (seemingly elusive) fact that they are not Apple's customer. It's the people who buy Apple devices. Apple can bend to the developers' every whim but if that leads to a horrible iPhone experience and loss of customers then developer revenues will fall and developers will still be unhappy. Apple's overarching goal must be to keep their customers happy, and when customers are happy then developers will be happy.
In the end, you just have to have faith that Apple is doing all these things to come up with the best product. There might be collateral goals (yes, like settling scores) but you've got to believe that Apple is keeping its eyes on the prize and you as a component supplier will ultimately benefit. If you don't believe that, and you think Apple is not committed to the long term quality of their products, then why the hell are you developing for such a short sighted, misguided company?
This is simply ludicrous.
I haven't argued any such thing.
This is even more laughable than your assertions about Keynesian economics.
Again, I never argued this.
Ah, the fanboy card. The last gasp of a failed argument. I guess you threw that in in case the straw men didn't stick?
Apple has always been about controlling the user experience of it's products. It doesn't always succeed, but it aims for excellence. Wanting developers to develop specifically for it's platform is not unreasonable. Further, Apple gave these developers an opportunity that didn't exist before Apple came along. There were no competing market places. Apple provides easy access to it's platform. Apple is also fair in it's pricing model.
Imagine, if Apple pretended it was a recording studio where the goal was to make the bulk of it's money on the sale of downloads. Apple would be taking the lion's share of the profits. Apple's model, however, is designed for it to sell hardware, not make a lot of money on the sale of applications. So, from that perspective you can see that Apple wants applications to perform the best on it's hardware by utilizing what it hopes is better programming environment. It doesn't want developers helping Apple's competitors sell hardware by making the applications perform the same on competing platforms. Apple doesn't make a lot of money on the sale of software. Hardware is where the money is at.
As long as Apple makes development on it's platform easy, helps developers make money, and continues to sell product real developers will stay. Happily.

You can use other development tools to release the same program to several different platforms at the same time without any added work.
It makes the developer more efficient.
Apple does not want this efficiency because it wants to lock in the developer and the consumer to its platform.
I already stopped developing for iPhone a while back so it doesn't affect me. But it affects dozens of other developers, and they will likewise leave the platform.

If Flash is buggy on the Mac, might that have something to do with Apple being more closed, documenting less, having inferior tools and support than Microsoft?
...
But if they're at all informed as realize that as Adobe said, they didn't have access to GPU API's, so that's why Adobe never implemented it...
Oh, please, not this tired old bit of recycled Adobe propaganda. I guess they decided they'd just sit on their hands until they got direct hardware access? That must be why they've been ignoring their Mac development for the past 10+ years.
Flash on the Mac sucks for one reason and one reason only, because Adobe failed to invest any significant development resources in it. This hardware access thing is just a Big Lie that they are hoping will get repeated often enough until people start to believe it.
Another post filled with valuable insight.

"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.
"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.

There's a few problems.
1) Just because you can't write good flash, doesn't mean others can't.
2) Programmers seem to do worse with Flash than non-programmers. And there's many tools to deliver Flash -- including functionality built into CS5 that will now only work for every other platform except iPhones and iPad's (consumers lose).
3) If Flash is buggy on the Mac, might that have something to do with Apple being more closed, documenting less, having inferior tools and support than Microsoft? (If Adobe's at fault for every bad app written in Flash, then isn't Apple equally responsible for things they have more control of?)
4) We aren't talking about Flash in the browser, we're talking about AIR; which while ActionScript is a bit of a different animal.
5) It matters what type of App you're creating. I certainly wouldn't try to write the next spreadsheet in Flash. Nor if I had interactive information system like a virtual magazine would I jump to InterfaceBuilder and ObjectiveC. Right tool for the job.
Exactly.
You think all bad Flash Apps are Adobe's fault (and ignore all good ones because they don't fit your model) -- Adobe made the platform it rides on, it is all their fault. Then you blame Adobe for all problems with Flash which rides on Mac OS X, why? Because Apple doesn't make mistakes, so it must be Adobe's fault. Apps that work well on Flash, should be rewritten, even if that wastes months or years and produces and inferior product, because Apple told you so. Are we seeing a pattern?
I on the other hand, care about the solution. I want the best Apps. Given the choice between one that has more features or less, I might go for the one that has more (if they're features I need). Since that's usually the one written in a higher level language, it might be flash. If it's buggy, I'll throw it away, trash it on the forums, and settle for the less full featured one. The market will decide better than you or Steve can for it. That's why capitalist societies outperform command economies.
I get your point. If Apple developers are as much coolaid drinkers as the fanboys and they refuse to accept that they have any shared responsibility in their platform, then yes -- it would look like it was all Adobe's fault. But if they're at all informed as realize that as Adobe said, they didn't have access to GPU API's, so that's why Adobe never implemented it, and so on, then maybe things could get better.
But it still boils down to Adobe isn't "letting" Adobe. They're letting all developers develop for their platform, and putting in special rules to intentionally EXCLUDE Adobe. Which is the exact opposite of what you're saying.
Frankly, I want Apple to refund the rest of the money for the remainder of my iPhone contract. I bought a 2 year contract under the old terms (that I could run any Apps I wanted -- not just ones that were written in ObjectiveC). If I leased you a car, then changed the interest, or limited the roads/distance you could drive, after the fact, you'd scream bloody murder. Unless Apple said it was OK, then you'd make excuses why you're coming out ahead with a much more limited terms of usage.
It seems you aren't altogether familiar with the tenuous relationship Apple and Adobe have shared over the past decade or so. Did Apple not provide them with the Cocoa APIs either? That would explain why all of their development suites until CS5 didn't use them. I suppose Apple also neglected to offer 64-bit support to application developers until just recently.
Also, I don't know that you completely understand the relationship between Air/Flash Runtime/ActionScript. Maybe you do and I simply fail to understand what you're trying to convey. Regardless, issues regarding Air applications on the Mac are not that rare. But then we must all just be terrible ActionScript programmers.
You also contradict yourself when you say that programmers have worse results than non-programmers. Wouldn't this suggest that ActionScript is a bad language for development on the iPhone? If I use best practices for ActionScript development and the results are poor on only the Mac platform, doesn't that suggest that ActionScript is not a great tool for the Mac? The language is either independent or it isn't. And you don't write "Flash". You write ActionScript that gets compiled into bytecode and executed by the Flash runtime (specifically, the ASVM). Non-programmers use the Flash editor, which is a visual tool for animation and requires little to no programming. But if you want to do anything remotely interesting in Flash you need to marry it to ActionScript.
I suppose we will have to agree to disagree. I hope you enjoy your future development endeavors, whatever platform you land on. And try to remember, we don't have to drink the Apple kool-aid to agree with them. And we don't have to be haters to disagree with them. I am seeing both sides of the coin here and they both have merits. But as a Mac user that has suffered through some piss-poor Adobe releases I am not going to shed a tear for them right now.
- Joined: Jun 2007
- Location: Winnipeg, MB, Canada
- Posts: 335
- offline
- Select All Posts By This User
- Joined: Jun 2007
- Location: Winnipeg, MB, Canada
- Posts: 335
- offline
- Select All Posts By This User

I think that these are indeed Apple's intentions. And I think they're the right intentions. But I think the way Apple expresses these intentions in their developer agreement has an unintended consequence.
Apple wants your app to like like this, this is good:
iPhone OS -> UIKit -> Your App
Apple doesn't want your app to look like this, very bad:
iPhone OS -> UIKit -> [Flash, QT, etc.] -> Your App
So far so good. But the unintended consequence of how Apple phrased its agreement is that the following is also forbidden:
iPhone OS -> UIKit -> Your App <- backend implementation details written in a different language
In the last case everything the user sees and interacts with is written exclusively in Objective-C. There's no middleman. But behind the scenes the Objective-C controllers delegate to code written in another programing language that's compiled and linked natively. The final executable is indistinguishable from one that was written exclusively in Objective-C. It probably would even get through Apple's approval process, though it appears to be expressly forbidden.
I explained in a previous post why you might want or need to employ such an app structure. I think such an implementation is in line with Apple's goals for the platform. It's just an uncommon corner case that gets caught in the cross fire.
Section 3.3.1 of Apple's agreement states that "only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs." Apple should clarify what directly linking means. All code is "directly linked" in the final executable. But maybe if your app links with Apple's frameworks, and also links with your own code written in another language, but there are mp dependencies between your code in the other language and Apple's high level frameworks, this would qualify as not directly linking. As long as directly linking with absolutely fundamental libraries like libc is permitted, I'd be okay with this.
This seems logical.
Simple question: What does "written in another language" mean? If "the final executable is indistinguishable from one that was written exclusively in Objective-C." then how would Apple know WHOM or WHAT does the writing of the Objective-C? What or whom does the "writing"?
If the PERSON "writes" the code using a particular language (and I assume that a programmer seldom writes every letter of every line of every piece of code in the program) or the programmer uses a PROGRAM LANGUAGE to "write" the code, both of these to the end result of what was said above - "an indistinguishable executable" - then what is the problem?
I am as far from a programmer as one might get, but it seems to me that Apple's stance is to get "indistinguishable code" that uses their APIs and if they see that type of code come through the approval process, they will have no problem with it.
So, using another "front end" programming language that can "write" indistinguishable code would seem to me to be just fine, especially if the "front end" language was being used for efficiency and not to side-step the eventual fluidity, functionality, stability, etc. of the final product.
I think this is what Apple wants. Nothing in the executable that screws things up. So, they mandate the "writing" of Objective-C code, but does the agreement clearly define WHO/WHAT writes the code?
I'd almost think that some of the other programming languages out there, used by a proficient programmer, can write as good or better code than a programmer who is equally proficient in Objective-C. Am I anywhere near right?
Disclaimer: Obviously written by someone who's entire programming experience was in the late 70's with the famous BASIC "HELLO" program.
Seriously, though, do my arguments contain and weight or validity?
"It probably would even get through Apple's approval process, though it appears to be expressly forbidden."
Ok, but
(a) Suppose Apple manages to stay ahead of the delivery curve on RAD tools, and
(b) No suppose, they are ahead of the curve on mobile devices (iPad).
(c) A 2-3 year lead is a lifetime in software development.
(d) I like the commonality for Mac, iPhone, iPod and iPad SDK development.
A developer who writes something for the iPad or the iPhone does so to make money. So follow Apple's rules and make money.
Don't like the rules? Fine. Develop something for another platform and make money there instead.
Plenty of developers will follow the rules and will make money, and users will enjoy the apps. The developers who play the game will reap the rewards. It's kinda simple.
- Joined: Nov 2004
- Location: Pacific Northwest
- Posts: 5,538
- offline
- Select All Posts By This User

There's a big difference between 'helps it run' and 'is'. QuickTime is arguably native on both platforms, there is no more or less abstraction on either platform. Yes, carbon could be seen as 'more' of an abstraction, but it's also an abstraction on Mac OS X, it's just not public for win32. Hell, MFC and .NET are abstractions... Cocoa is an abstraction.
Come to think of it, C is an abstraction to assembly which is an abstraction to machine code, which is an abstraction to microcode, which is an abstraction to actual information, which is an abstraction to the physical world.... and i'm sure the physical world is an abstraction of something.
Point is, it's not hypocritical for Apple to target windows however it sees fit, just as it's not hypocritical if Microsoft or whoever wanted to target a Mac, however they see fit. Macs can run pretty much any code you can get to compile on them, legally and without obstruction., including but not limited to WINE. Microsoft's office and msn apps are written using who knows (and who cares) what.
It's only the iPhone OS where this restriction is applied, and for a whole stack of reasons which do not apply to desktop environments, the rules here are different, and they will be applied differently by the different players - and (depending on who you ask) some developers actually think it's a good rule... makes the platform shiny.
You're just pissed because you can't develop in your language or framework of choice, that's perfectly ok, but then you also have the choice of not developing for that platform if it doesn't meet your requirements as a developer. This is actually the norm, and not the exception... Nintendo, Sony, Xbox?? Generally, you get a platform with an environment and you make the most of what it has to offer, if it's not up to scratch or if it doesn't match your ideals, you put it low on your list of priorities.
Wrong. QuickTime X is Cocoa. QuickTime Windows is Carbon.

Software Development 101. Higher level languages or solutions take fewer lines to get more work done. ObjectiveC and Cocoa are much lower level than Flash (especially for creating information systems, and especially if you're a publishing house that already has the content in something like InDesign and using Adobe's tools to output exactly this kind of functionality).
Thus if I already have a solution developed or partly developed (as the Demo implies), and I have to throw that out, and start over, in a lower level language and worse tools for the job -- what happens? It will take far more time to get it out. Nature is to rush and drop features to get it to market as fast as possible (which is still much slower than the alternative). But because it is newer, more rushes, lower level code, more lines to do the same thing, it'll have more bugs to make up for it. This is lose-lose-lose for the developer. But it's OK, because the fanboys are willing to give up a lot because "The Steve" told them it was better.
The point you're missing is that Flash produces an inferior product. Sure, it takes less work, but it produces junk. The 'fanboys' simply prefer quality to quantity. Sorry you don't get it.

While I appreciate Apple's new policy and can easily agree that it is in their strategic best interests, at least in addressing 90% of their market, I think this decision kills many long-tail apps, and systems that require multi-platform support.
I am not a programmer/developer; I am a business owner. Say I want to build an app to serve electrical engineers in my office. We have 60% Blackberries and 40% iPhones. Neither set of users has a compelling reason to change handsets. There may be a business case for doing something that supports everyone, but we aren't going to build our business around any single platform. (We too have learned from past mistakes.)
If it doesn't make sense for just us, how about something that serves our entire industry. There are about 50,000 licensed, practicing Professional Electrical Engineers in the US. Selling to 20% of them that may have iPhones and be interested would be an optimistic target: up to 10,000 unit sales!
Well, if you really were a business owner, I'd hope that you wouldn't do such a shoddy market analysis.
The iPhone family was responsible for 64% of mobile internet use - so iPhone users are apparently using their phones for a lot more than other smart phone users. I don't recall the application purchase rates, but I do know that the iPhone accounted for the majority of applications purchased, as well. So, you'd look at that and say "if I want to sell lots of apps, I need to include the iPhone".
Then, you'd consider a number of options. For example, you could create a web page that would do the job using html - which would work for all users. Or you could create separate apps for the iPhone and other platforms. Or you could develop only for the iPhone - since none of the other apps are seeing much action in terms of people buying apps.
A smart business owner would most certainly NOT do what you're suggesting.
That's easy. Follow the SDK rules that you sign when you become a developer and you won't have a problem. Almost all of the people whining about Apple's unfairness failed to follow the rules - including Adobe.

And, as this video shows: http://www.youtube.com/watch?v=wwFbwHaP5tE There is the potential for some really really cool stuff for the iPad platform being built with Adobe technologies. If I had an iPad, I'd be demanding that Apple give me access to this content.
That's fine. I'm always happy to see cool stuff done on the iPad - and I'm sure Apple is, too. All Adobe has to do is follow the SDK rules that they agreed to when they became a developer and we'll get to use that cool stuff.

3) If Flash is buggy on the Mac, might that have something to do with Apple being more closed, documenting less, having inferior tools and support than Microsoft? (If Adobe's at fault for every bad app written in Flash, then isn't Apple equally responsible for things they have more control of?)
This is, of course, BS. Adobe has access to the same tools that everyone else does. For that matter, other Adobe apps don't have the same problem. Photoshop can manipulate every pixel of multi MB files on my system in fractions of a second. Yet Flash eats up every bit of CPU available and brings my system to a screeching halt just to show a menu? If the tools to write a good app aren't there, why is it that everyone else (including other departments in Adobe) can do it, but the Adobe Flash group can't?
More importantly, if it's all Apple's fault, why is it that there is NO FULL SCALE Flash for ANY mobile platform. None. Even the vaunted Flash 10.1 (which isn't out and no one knows when it will be) offers a subset of Flash functionality, eats CPU cycles, shortens battery life, and will only work on a tiny fraction of smart phones - even if it does get released some day. Flash just doesn't work for mobile phones - and the entire industry realizes that.
I don't think there's any doubt about that. Remember them throwing out thousands of apps late last year or early this year because they didn't meet quality standards? Notice Jobs making fun of how many Android apps are porn? It's no longer just about quantity, it's about quality, too. Apple has led the industry in customer satisfaction - and this is one way to continue that.
Or maybe they simply have a different business plan (even if what you say is true)? Not to mention, of course, that Microsoft is bound by different rules since they have been found to have a monopoly in PC operating systems.
Can you write any app you want? Yes
Does Apple have to sell your app for you if it doesn't meet their standards? No
No one is stopping you from coding in Fortran with punch cards if you wish. Just don't expect Apple to sell your app for you if you can't be bothered to follow their guidelines.
It's that simple.

I think Apple totally shits itself here! They are wrong, ignorant or just plain uninformed! Objective-C is an old and dated language (despite late improvements), not the sharpest tool in the box and APIs (in this case iPhone 4's) can perfectly transcend most language and platform environments without any impedance added between developer and platform. Jobs, please take a hike!
Once you've developed a platform which has sold 85 million units and billions of dollars in revenues, then maybe someone would be interested in your opinion. Until you give some reason for people to think you have credibility, that looks like a juvenile delinquent whining because Mommy won't buy him a new toy.
Two reasons:
1. Some of the Flash developers are just lazy. You don't have to read too many posts on the topic to come across "I don't want to learn a new platform".
2. Many of the Flash developers aren't really programmers at all. They're little better than script kiddies - and learning real programming is apparently beyond their abilities.
Apple doesn't have such a motto. If you are that badly misinformed, you really shouldn't be discussing the topic at all.
I don't know Apple's motto, but it would undoubtedly be something about providing insanely great user experience - which is why they made the decision they made.

I understand the reasoning behind blocking interpreters to some extent but native code that uses other APIs is a bit crazy because that could mean all sorts of useful apps. If it blocks the Unity 3D engine, there's no benefit to that at all. Just download this game demo:
http://unity3d.com/gallery/live-demos/avert-fate
Where's the quality problems? Nowhere to be seen. Until XCode actually offers what IDE's like that can offer then the argument has no basis. The purpose has to be to force these devs to drop C# and move to Obj-C, which can't be used on Windows.
How do you know there are no quality problems? Just because you can view a demo video?
It's a moot point, anyway. Unity's spokesperson says that they believe that the rule does not exclude Unity as a resource.

This is the same company with $40 billion in cash reserves? This is the same company selling year-old hardware at the same price it was a year ago? The same company that doesn't know how to make a $500 computer? The same company that sells a new product (iPad) with a profit of $250 per unit i.e 100% profit margin.
Please take the time to learn some basic business finance before posting on the topic.
First, the quoted cost of a 16 MB iPad is $290 - but that doesn't include overhead, shipping, R&D, software, licensing fees, or a number of other costs. It also does not include selling costs either at the Apple Stores or Best Buy. But even if it were an accurate cost, that would be a GROSS MARING of $209 - not a profit of $250. it would also be a 40% gross margin, not a 100% profit margin. (Hint - to have a 100% profit margin, you need to have something with zero cost).
Please stick to talking about topics you know something about. Not only are you making yourself look bad, but it lowers the signal to noise ratio in groups like this.

Apple makes products and sets the rules for what, and how, apps will appear on/in its products.
A developer who writes something for the iPad or the iPhone does so to make money. So follow Apple's rules and make money.
Don't like the rules? Fine. Develop something for another platform and make money there instead.
Plenty of developers will follow the rules and will make money, and users will enjoy the apps. The developers who play the game will reap the rewards. It's kinda simple.
This isn't to single you out at all, but only because you are the most recent poster using the argument.
Is there any line that Apple could cross that would take it beyond "who cares"? Beyond a response of "the market will decide when that line is crossed", I really do wonder if the lines exists. Certainly there are many that will never see any action Apple makes as being wrong. If it is successful, that is proof enough that it was right. If is not successful, then it was still right because it was Apple platform. So, take success out of the equation, as that isn't a true barometer of right and wrong
"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.
"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.
- Joined: Nov 2004
- Location: Pacific Northwest
- Posts: 5,538
- offline
- Select All Posts By This User
Can you write C++? ObjC? ObjC++?
If you can't then you were never going to be a Windows, OS X or Linux native application developer.
You were going to be a scripting language developer for Web Apps or interpreted language developer for Ruby, Python or others.
Now if you say you can write in Python or Ruby, but not ObjC then I say you're full of it.

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.
Either your a Communist or a wimp, I believe everybody has a right by law to say what he or she believes.
What Apple doesn't want is people using cross-platform development tools where programmers write to a common, intermediate, generic "platform". Objective-C just happens to be the language supported for Mac OS X and iPhone development in the Apple supplied development tools, for developing directly to those platforms.
It's in Apple's business interests to prevent the use of these tools and consequently the commoditization of its platform. Obviously, third-party tool vendors either don't give a damn, as long as they can make money, or, like Adobe, actively wish to commoditize iPhone OS and other mobile platforms so they can make lots of money by controlling how content gets on them: essentially like parasites feeding on a host, more like tapeworm than a bed bug, though.

This isn't to single you out at all, but only because you are the most recent poster using the argument.
Is there any line that Apple could cross that would take it beyond "who cares"? Beyond a response of "the market will decide when that line is crossed", I really do wonder if the lines exists. Certainly there are many that will never see any action Apple makes as being wrong. If it is successful, that is proof enough that it was right. If is not successful, then it was still right because it was Apple platform. So, take success out of the equation, as that isn't a true barometer of right and wrong
The thing is, for a certain subset of developers, many of whom have a dog in this hunt, this is all a very big deal and Apple is evil and it involves grave matters of right and wrong and so on.
But for the vast majority of people, Apple's customers and otherwise, all of this is inside baseball and the tone of high moral aggrievement would strike them as insane. It's like hearing from some arcane priesthood that failure to wear a certain robe on a certain day is an abomination in the eyes of God and will bring ruin on the faithless.
So when you demand to know what line Apple would have to cross to bring some terrible final judgement of their sin down on their heads it just sounds wildly disproportionate. Apple isn't mutilating innocents or selling empty boxes to seniors or squirreling away toxic waste in orphanages or scheming to usurp the will of the people. They're being particular about what tools they allow to write software for their devices.
Carrying on like this proves they've gone mad with power or are in alliance with dark forces is just stupid, IMO, and why geeks should never be allowed to decide anything of significance-- because they think minor matters of coding represent the most important things in the world and the very fate of society hangs in the balance. It's actually kind of disgusting, given the real and significant problems we face.
Let us say you are right. It is Adobe's product, and if they decided not to optimize for the Mac, so be it, just as Apple has the right to place the restrictions that it has.
In a different post, you said that Apple was not being hypocritical about itunes and QT on Windows, because MS had not forbidden the use of abstraction layers.
The issue here is not the fact that Apple put the restrictions in place (as they have every right to do so), it is the reason they gave.
They said that abstraction layers, etc result in bad programs with adverse effects for the OS.
So, in the case of iTunes/QT, they are one or more of the following:
1. hypocritical
2. lazy because the "failed to invest any significant development resources in it"
or
3. Deliberately trying to destabilize Windows.
If they REALLY believed that only good programs should be written for a platform, then they would write it in native code.

This isn't to single you out at all, but only because you are the most recent poster using the argument.
Is there any line that Apple could cross that would take it beyond "who cares"? Beyond a response of "the market will decide when that line is crossed", I really do wonder if the lines exists. Certainly there are many that will never see any action Apple makes as being wrong. If it is successful, that is proof enough that it was right. If is not successful, then it was still right because it was Apple platform. So, take success out of the equation, as that isn't a true barometer of right and wrong
Sure! There are potentially hundreds, thousands of lines that Apple could cross that would make me care enough to say, "Apple, this sucks!"
But this case, IMO, is simply not one of them.
Success really is the best barometer. If something fails it is because that line was crossed. We all, companies included, learn from our mistakes (well, we hope to learn from them).
Lets say, for example, that Apple allowed flash on its iPhone and iPad... and then battery life drained terribly as a result. I'd be pissed! I say, "This hardware is no good to me if it only lasts for short periods of time."
I'd rather use apps that don't use flash, and as a result have longer battery life. If the iPhone or iPad's battery life was minimal, I wouldn't buy either. If many others did the same, the products wouldn't sell - they'd fail.
Apple would learn

If you make a game to play on the Xbox, is it right to complain that the same game (read: disc) doesn't play on a Wii? Of course not. You follow Microsoft's rules for one platform, Nintendo's for another.
Recent Discussions
- › Apple's iWatch to come in late 2014 with focus on biometrics,... 39 seconds ago
- › Google's new 3D Maps destroy Manhattan in the wake of Apple's Flyover 1 minute ago
- › Apple, rapper Eminem could end up in court over iTunes battle 7 minutes ago
- › Google's Chrome team developing app launcher for Mac 26 minutes ago
- › Like Apple, Google & Yahoo also avoid taxes by way of Ireland 37 minutes ago
- › Popular game engine Unity drops licensing fees for iOS app developers 39 minutes ago
- › With spotlight on it & Apple, Ireland calls for worldwide tax... 47 minutes ago
- › Penguin agrees to $75M settlement in Apple iBooks price fixing lawsuit 47 minutes ago
- › Ireland says it's not responsible for Apple's low international tax... 57 minutes ago
- › Your ideas, hopes and links for green travel. 1 hour, 7 minutes ago
Recent Reviews
- › Apple iPod nano - 16GB, Silver MC526LL/A (6th Generation) by cc420
- › Apple iPad with Retina Display Wi-Fi + Verizon/Sprint 4G - 64GB,... by Aaron Krahn
- › 13.3-inch Apple MacBook Air MD231LL/A (Mid-2012) by ahilal
- › Apple Time Capsule - 2TB (MD032LL/A) by biyahero
- › Apple iPad Wi-Fi - 64GB, White (MD330LL/A) by raeganapril
- › Apple Magic Trackpad (MC380LL/A) by WisdomSeed
- › Aperture 3 by bcbcbroderick
- › 17-inch Apple MacBook Pro MD311LL/A (Late 2011) by bcbcbroderick
- › Apple iPod touch - 32GB, Black MC544LL/A (4th Generation) by bcbcbroderick
- › Apple iPod touch - 8 GB, White MD057LL/A (4th Generation) by bcbcbroderick
New Apple Wikis
- › 2013 'Modified' iPod touch by Mikeycampbell81
- › 2013 MacBook Pros by Mikeycampbell81
- › iPad mini 2 with Retina display by Mikeycampbell81
- › 2013 iPhone 5S by Mikeycampbell81
- › Trade in your old devices for holiday cash by Mikeycampbell81
- › How to sell your old iPad for cash by Mikeycampbell81
- › How to offset the cost of a new iPhone by... by Mikeycampbell81
- › How to save money on AppleCare extended... by Kasper
- › How to offset the cost of a new iPad mini by... by Mikeycampbell81
- › Apple Prototypes by Mikeycampbell81
About AppleInsider | Join the Community | Advertise
© 2013 AppleInsider is powered by Huddler Tech | FAQ | Support | Privacy/TOS | Site Map




