Ok, so there’s no doubt you know what’s going on with Adobe and Apple and I’m not going to bother link-feeding to all of the different things that have been going on between the two companies (the most recent being Little Stevie J’s “Thoughts on Flash”). Instead, I’m going to offer up a [long shot] prediction.

So here it is:
I think that Adobe and Apple are working together on this and that when CS5 is made available, they’ll say “And now… Flash on the iProducts!” (or maybe it’ll happen with the release of the next iPhone).

Think about this for a second. Look at the amount of buzz they are generating for each other. They bicker like a couple of small children fighting over a toy and when one of them says, “Fine, you can have it. I’ll go play with this other toy.” The other one says, “Oh no you don’t… I’m not finished arguing with you yet!” And it starts back up. All the while, us developers are creating more and more buzz each time it flairs up. It’s f***ing brilliant!

Ok, so I said it. I know there are lots and lots and lots of holes in my theory so you really don’t need to point them out. I just wanted to share. Thanks for reading and have a great day!

By now I’m sure you’ve heard (and taken part in) all of the discussion about the upcoming rule change in the iPhone Developer Program License Agreement. The understanding is that it basically says you must write your iPhone OS 4.0 apps directly in one of a few select languages and that if you’re using tools such as the Packager for iPhone in Flash CS5, Titanium, Corona or any of several others out there, you’ll be in violation of your agreement with Apple. Also, according to another new rule, you’re in violation if you talk about this so I’ve held off on agreeing to the updated terms thus far. (we’ll see if I have to remove this post after I agree at a later date)

The new (reworded) rule:
3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).

Because I’ve been working with the Flash Platform for so many years now and because it has essentially built my career, it’s honestly a little hard to be completely subjective about this matter and I can tell that there are others out there struggling with the same issue. I mean really, don’t you think that suggesting Adobe should stop shipping/supporting their products on the Mac is a little bit of a childish, schoolyard slap-fight approach? I do.

Don’t get me wrong, I think this was a complete dick of a move by Apple and even more so when you consider that they did it just days before the CS5 launch event. However, it’s their toy and regardless of how much you or I disagree with them, that really kinda makes it their choice. By the way, the 4.0 OS is still in beta and that means terms could still change before a full launch. They most likely won’t, but they could. So if Apple lets this rule stand beyond its current beta state, what in the world will we do as Flash Platform developers? How will we possibly carry on? As far as I can tell, we have a few options (in no particular order):

Option: Completely boycott Apple
If you want to stop giving your money to Apple over this issue, I can understand that. If you want to purge yourself of your sweet MacBook Pro and your Apple TV and all of the rest of the nice products that I’ve heard so many of you brag about and swoon over through the last several years, I guess I can understand that. BUT, if you’re going to “boycott” Apple, then don’t half-ass it… go all the way and throw away all of those toys that you love so much. On second thought, how about if you just email me so I can give you a shipping address to send them to? Didn’t think so.

Option: Don’t develop for the iPhone 4.0 OS
Ok, so the iPhone and iPad are super hot products right now. They’re the cool kids in school that everyone wants to be and hang out with. They’re the crème de la crème. They’re the blah, blah, blah. So what? “But Jason, clients are asking for iPhone apps.” Well, I guess you’ll just have to tell them that you don’t offer that service and you’ll lose that project and that money… unless you want to consider the next wacky option. Besides, the iPhone OS is only one of MANY development targets out there so you still have lots and lots and lots of playgrounds where other cool kids are playing other cool games… and those kids actually want you to come play with them.

Option: Learn Objective-C
“*GASP!* WHA? HUH? BUH! You mean… spend my own time… to increase my own knowledge… and my own skill set?!? Why that’s absurd!” Ok, so that’s a bit of an over-dramatization, but I have seen people acting a little bit like that. Look, I understand that doing development in an environment your comfortable with is very important and I feel the same way. But imagine if you had that attitude when you came from a different background and started learning Flash or Flex. Besides, I subscribe to the thought that the more you know, the more you’re worth to a potential employer or client.

Wrap-up
Personally, I was very excited and looking forward to having the option of using the Packager for iPhone, but I had also decided to start learning Objective-C so I would have the option of either one when a project called for an iPhone app. As a matter of fact, I had actually built an app in CS5 and had it approved in the App Store back in January. I was recently told it was ok to talk about it, so I finally wrote a little post to “announce” it as well as my first Obj-C app. The timing on that post couldn’t have been more… ironic(?) because it was only hours later that the new rule was announced. I guess I won’t be going back to make that app look better.

In the end, we developers are FAR outnumbered by non-developer users of the iPhone and iPad. Those users don’t know (and don’t care) what technology was used to build an app so I’m afraid that when the market decides, it will not decide in our favor in this case. But don’t forget, this is not the only battle… this battle doesn’t even touch on the Flash Player in mobile Safari issue.

So there you have it. My thoughts on Apple’s new rule. Like I said before, Adobe IS my career and I completely disagree with Apple’s choice to block them (and other companies) out of iPhone OS 4.0 development, but there may not be much that can be done about it (obviously I can’t speak to the legal side of it) so my personal choice will be to continue to learn Obj-C (since I’ve already started). But don’t worry, the Flash Platform will ALWAYS be my first and main choice. Besides, I don’t think I like the sound of ObjectiveCanon… just doesn’t have the same ring to it.