You know I think Steve Jobs maybe is doing the right thing for Apple by not allowing all of these cross compilers. I mean, that article really gave me a look at the history that Jobs is talking about when he says these cross-compiler vendors never support Apple as a first class citizen.
I don't LIKE it.
But I have a better understanding for it now.
Adobe, obviously, always wants to target windows first. Companies like Unity and MonoTouch obviously are more in the C# and even .Net camp. These guys are targeting iPhone as an afterthought. And while we know their products do not run well on macs at the moment, I used to think that they would run well on macs in the future.
I'm not so sure anymore.
Maybe Apple does need to go it alone with respect to middleware. Even better, some enterprising start up could make an Objective-C game engine.
MonoTouch doesn't target anything but the iPhone OS. It's hardly an afterthought.
Titanium targets both the iPhone OS and Android, but it's pretty clearly aimed primarily at the iPhone.
The Lua stuff Tapulous uses in their games is targeted only at the iPhone OS.
Nintendo of all people is happy to let game devs build stuff with Unity.
The trend continues, really. I have no idea how crappy the apps are that the Adobe stuff produces, but I do know that these other toolkits are (a) extremely useful and (b) now off limits if I want to do anything on the iPhone. I suspect that if you dug through what's there, the Unity/MonoTouch stuff would prove to be of a higher average quality than the straight ObjC apps. People who look around and choose toolkits like this are generally pretty smart.
That logic terminates in a place that disallows any company from making any business decision ever that might negatively impact any class of developer.
I don't get this. I'm assuming most of the folks here are in development in one form or another, and very few of them work for Apple.
Therefore, it is in everyone's collective best interest to have as many free and open platforms as possible. What Apple is doing is attempting to leverage their current success into future success by cutting off an avenue for cross platform authoring. This isn't about users. It's not about quality. It's about savvy developers (that's us) looking for ways to support multiple mobile platforms as painlessly (and profitably) as possible.
That's not in Apple's best interest, but it sure as hell is in mine. This isn't a legal question (yet), but as a developer this pisses me off. It should piss you off too.
It doesn't piss me off, because I think it has more to do with the quality of the platform, and I don't think Apple owes anyone a cross-platform dev environment.
Let's say you hired 2 developers from Albania. Let's say it didn't pan out. Would you change your interview process to ban all developers from Albania? Or would you change your interview process to weed out low-quality candidates?
Forget about the legal and moral issues. Which argument makes more sense?
He's not outlawing cross compilers. He's outlawing innovation in third party tools and frameworks on the iPhone platform. The clause is much more broad than cross compilation.
An innovative person could make an Objective-C game engine, or a C++ game engine or what have you. The language does not disallow innovation in frameworks or third party tools, it opens up a new avenue for that innovation.
Now mind you I don't agree with the path they have taken. But I do think it is important right now for cooler heads to prevail. Making statements like 'Apple is outlawing innovation...' is not contributing in a constructive fashion to the solution search.
What are Apple's concerns?
Are they legitimate?
How can the developer community address Apple's concerns?
If Apple sees not only real effort, but real progress towards addressing those concerns, perhaps it might be willing to loosen up on the reigns.
As it stands though, the concerns Apple has are legitimate. Now that we know what they are, can we move towards addressing them.
I just think that staking out these strident positions makes for good blog reading, but it is not going to solve anything.
If we put our 'crowdsourced' heads together we can come up with a solution that could allow the situation to develop with positive impact with respect to everyone's interests.
But I don't see the "quality" concerns that Jobs sees. Do you? Do you think it could be an excuse to maintain control over the development process and to hurt the Adobe CS5 release?
They have a review process which is used for quality control yet they allow 60+ fart apps in the store! Why don't they tighten the review process on ALL apps (including non Objective-C apps)?
I guess you could say it would cost more to hire reviewers but the money made on the new app sales would certainly cover that (and much more). To me it's just a huge slap in the face to end users who will miss out on much app potential (assuming the reviewers did their job) and to developers who have dedicated time in learning a 3rd party framework - yet so many people here and other places seem to love it.
It's impossible to innovate except in those areas - all those languages, as implemented on the iPhone, have significant drawbacks, which shouldn't need to be explained to anyone with any history of programming in multiple languages.
Yeah of course, but languages which compile to C also have (huge, IMO) drawbacks, especially with regards to debugging and profiling, things that have a profound effect on the end user experience.
I'm not trying to defend the restriction or anything. It's Jobs' right to pull this shit and its everyone else's right to move to Android. I just think it's less about innovation in tools and frameworks and more about keeping the platform isolated for business reasons. This is just an extension of the "no interpreters" rule, which more severely (IMO) hampers language and tool innovation.
I dont get why people bring this up. It's Apple's right to ....
Of course its Apple's right. I don't think anyone's advocating lawsuits. But it's our right to bitch, moan, complain, and try to convince everyone in the world that if Apple doesn't reverse course in due time, they should be attacked with an avalanche of internet mudslinging that will make Microsoft look like Ghandi in comparison.
Apple of all companies knows the value of the tech and online community to their bottom line. I think its worth utilizing that to respond to their decisions and somehow influence them to move in the right direction.
No, a game engine could be a collection of classes or functions that perform common game-related tasks; like a library. There's no reason it needs to include an interpreter, alhough using a scripting language for some parts like AI and level triggers is convenient.
I don't LIKE it.
But I have a better understanding for it now.
Adobe, obviously, always wants to target windows first. Companies like Unity and MonoTouch obviously are more in the C# and even .Net camp. These guys are targeting iPhone as an afterthought. And while we know their products do not run well on macs at the moment, I used to think that they would run well on macs in the future.
I'm not so sure anymore.
Maybe Apple does need to go it alone with respect to middleware. Even better, some enterprising start up could make an Objective-C game engine.