A Peace Plan To End the Flash-On-iPhone Fight
GMGruman writes "As the pro- and anti-Flash camps have hardened their positions, the editors at InfoWorld have come up with a four-point peace plan that would allow Flash on the iPhone while addressing Apple's very real concerns over performance, stability, and security. Readers can vote and comment on the peace plan, which InfoWorld hopes will result in serious talks between Apple and Adobe."
Here:
1. Create a Flash video player plug-in.
2. Put the core Flash technologies into the standards bodies.
3. Create an iPhone-certified SWF exporter for Creative Suite.
4. Explore a Flash app certification process.
Help & Preferences --> Classic Index --> Sections --> Apple (x)
Learning HOW to think is more important than learning WHAT to think.
It's about Profit going down the drain if Flash apps make it to the iPhone!
Ban both of them?
(Apple fans will mod me troll - but fortunately, there are no Flash fans!)
Here I was thinking they were talking about the lack of a camera flash on the iPhone... I guess Adobe Flash is important too. Whatever makes you happy!
Where's the option for "I support Apple not because I agree with their acceptance policies but because I honestly don't want Adobe's crapware anywhere near my phone!"
After all, unlike my desktop where I can easily -remove- Flash or block it with browser plugins, if Flash is on my phone then they better make sure I can remove it!
The Apple/Adobe fight is about money and control. Apple wants to wall people into their garden and Flash is an impedance to that. Apples banking on their customer loyalty (accept that owning an iPhone/iPad == no Flash) and that HTML5 will replace Flash for video.
If this was only about technological/security hurdles it'd be done and done already. Apple and Adobe have the resources to get this working in short order. The issue is money. No amount of standards and compatibility will get past that.
The decision is Apple's and Apple's alone. Apple has all the cards and has no need to cut any deals. InfoWorld's suggestions fail to take that into account.
There is no "-1 offended" or "-1 you don't agree with me" mod options for a reason.
It's $99 a year. Also you are required to buy Mac OSX which seriously brings up the price.
If I want to develop for Linux, I can write the full code in Windows and compile it too. If I want to develop for Windows, I can write the full code in Linux and compile it too. What about Mac OSX?
it's complete bollocks.
Steve HATES Adobe.
You're more likely to get Steve Jobs to prove at the next Apple Keynote that he really can shit rainbows. "One more thing....."
Please read my Canon EOS tech blog at http://www.everyothershot.com
It's all about not allowing unapproved apps to play on the iProduct. Everything else is mostly an excuse to hide the blatant fact. If it was truly about stability and performance, then iTunes among others wouldn't suck so bad.
Apple wants total control over the tools used to create applications on their devices. They can't do that with Adobe Flash. Peace is not possible.
Having flash in the locked down iPhone/iPad environment would be akin to having a dynamic programming environment on the iPhone/iPad. It would open up so many vectors for screwing with the security on the devices. I imagine it would be a great vector for hacks as well, especially given how homogenous the iPhone/iPad environment is.
Why make them "at peace". This competition has been driving standards forward like nothing else has. The byproduct has been great for all, and I'm not interested in seeing this end.
1) Forget about it, it's their device and they'll do what they want with it, no matter if you like it or not.
2) Learn another language. WTH is wrong with developers these days? It's not that hard to learn another language! Makes me ponder if most the flash developers are actually programmers or just script kiddies.
3) Web authors: start using HTML5 video standards and quit the stupid flash video player already!!!
Finally: I actually hopes flash dies, I hate the tech on my browsers and hate feeling forced to install it on every computer I have. Flash should die and Adobe should turn all their Flash authoring tools into HTML5 authoring tools instead. Heck, that would get them into the iphone too!!!
Really.
If they want to control what users do in their walled garden, let them.
Flash sucks... hell acrobat reader sucks too.
I don't care for either Apple or Adobe personally.
But neither should control what I have on my phone.
This has to be more than just allowing flash movies to play. Adobe would have to allow people to write applications that supports all that is flash. This would clearly get rid of the major worry about Flash, that it is controlled by a single firm that could wipe our it's competitors simply by no longer supporting Flash on their products. Of couse, as Adobe is finding out, it works both ways. Apple is doing it's best to destroy Flash by not supporting it on the mobile products.
Why will Adobe not allow flash players? Well, because then we might get functionality that would be a detriment to major players like google. Users might have in browser control of browser cookies. Users might get the control the do with images, like automatically blocking any flash object below a certain size. Or, heaven forbid, user might get an off switch.
"She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
The author misses the real point here: vendor lock-in... Why would people even bother to buy an iPhone if any of the Google offerings allow them the same apps? If there's a really hot app that can only be had on the iPhone, then people will buy iPhones... Plain and simple.
A black hole is where God divided by 0
How do so many people seem to miss the rather glaring issue that Apple has no desire to be a slave to a third party development tool. They've stated as much and it is a very real and serious concern. They offer features to their customers but, if a third party provides developer tools (such as Adobe with Flash) and that third party decides to take their time offering support for those new features or to outright not offer it at all then those features do not make it to the customer. That is a serious concern. In an environment where manufacturers need to provide every advantage possible to stand out from the other offerings on the market, Apple would be hamstringing themselves if they allowed Adobe, rather than themselves, to dictate what features do and do not make it to their customers. Anyone who thinks, even for a second, that this is a trivial part of the equation is not thinking clearly about things.
I'm surprised that InfoWorld completely overlooked this very real and very significant concern. Ah, who'm I kidding?... I'm not surprised at all... sigh...
Apple's new terms forbid applications written in any language that is not called C, C++ or Objective-C. For example, I work on the Free Pascal Compiler and added iPhone support a couple of years ago (it compiles straight to ARM assembler, no intermediate code or frameworks are involved). Most people that use it write their GUI in Objective-C and reuse Delphi or other existing Pascal code for their backend, just like other people would reuse C or C++ code.
But simply because FPC stands for Free Pascal Compiler rather than for Fast Progressive C, this way of working is no longer allowed. That just does not make any sense to me. Why on earth would the name of the programming language matter in any way? I could understand it if they would limit you to using their tool chain (although I'd still disagree with it), but limiting to a particular set of programming languages?
The fact that I can't even discuss this on the iPhone developer forums without first signing the new developer agreement (and thereby make it illegal for me to continue working on that project) only adds insult to the injury.
Donate free food here
The counterpart to Flash development in the iPhone world is AJAX and HTML5. That's free and you don't need to use the app store. It's called a Rich Internet Application (RIA) or a "web app". The so-called Flash replacement is a Javascript library that makes it easier to write web apps that look like native apps. That will actually help developers who don't want to pay fee or go through the app store. You pay $99 in order to develop native apps for the iPhone - that's different.
Very often, people confuse simple with simplistic. The nuance is lost on most. - Clement Mok
It claims to support SWF1 and a lot of SWF2. Right now I believe we're on SWF9, so there's a long way to go, but it does show that the approach works.
Say Apple releases new API's you want to use in your app. Here's what you do as an Xcode coder:
1) Download the new Xcode with new API's
2) Modify your code to use new API's
3) Recompile
4) Submit to store
Here's what you do if you want to use new capabilities from your Flash app:
1) Wait for Adobe to download new XCode
2) Wait for Adobe to use new hooks in code and expose them to you in new functions.
3) Buy new version of Flash development.
4) Modify your code
5) Export as iPhone app
6) Submit to store
I would rather have to code in Objective-C than wait for and have to buy a new version of Adobe Flash, just to get the capabilities made available by Apple's Xcode.
No it's not. I have the full X-Code package for developing on desktop OSX and iPhone, I downloaded it from the developer's area of Apple's website after registering for free. You only pay if you wish to release software via the App Store for the iPhone/iPad. $99 seems very reasonable to me as a fee for use of the libraries and access to the App store. Many development environments (e.g. Flash) require you to pay up-front whether you release or not.
Surprisingly, you are required to run OSX to run Apple's development environment, just like you are required to run Windows to run Microsoft's development environments. Code can be written for OSX using freely available tools and libraries on the OS of your choice, which will run from the command line or graphically via one of the cross-platform UI libraries. If you want to link against Apple's libraries you will need to use their OS, which I think is true of the Windows APIs too.
I've programmed in a lot of languages. I just learned Flash a few weeks ago because I needed to port an iPhone game to Flash. From a developer's perspective, programming in Flash is like programming with half a language that only has half a run-time library. That wouldn't be so bad if it was fun to program in like some of the more modern scripting languages, but it's not.
Regarding performance, I found that the only way to make Flash code perform well is to write spaghetti code. I had a collision detection routine running really slowly, and when I hacked together a profiler for it (which is not easy because the language has no high-precision timers), I discovered that the function call overhead in Flash is obscenely high. I had to get rid of all getter methods (i.e. make all my read-only member variables public), replace convenience functions like Math.abs() and Math.max() with if-then-else statements, and take my hit test function and copy+paste its contents everywhere I wanted to call it. (I didn't see any macro or inline features, and as much as I hate to copy+paste, the hit really was that bad.)
IMO, if Adobe can't fix the language, they should put a bullet in it. If they won't do either (and they've had years), then I have no problem with other companies attempting to put a bullet in it.
Read carefully: the iPad/iPhone is NOT A GENERAL PURPOSE COMPUTER. Why is this so hard to grasp for the vocal minority of Apple-complainers on Slashdot?
Actually, you pay $99 to release native apps for the iPhone. You can sign up and download the dev environment for free. It's not immediately obvious, but I have it sitting here in my downloads folder after a bit of circular link-following on Apple's site.
In one thread, I have this going on:
while (Flash.Sucks)
{
Developer.Bitch();
Developer.Moan();
Developer.Complain();
}
While in another thread, I have:
while (Apple.IsBastards)
{
Developer.Bitch();
Developer.Moan();
Developer.Complain();
}
These threads are deadlocked in a race condition, and meanwhile, most Users have absolutely no idea what's going on. Surprisingly few of them even seem to care.
You see? You see? Your stupid minds! Stupid! Stupid!
Flash is a god-awful piece of software, but the issue for many people is that it's the cheapest option to do cross-platform, dynamic applications. While the iPhone is a nice piece of kit, it doesn't have the levels of market penetration that makes it worthwhile developing your application twice, so developers are left with the choice to either drop iPhone OS support (which they'd rather not do because it's a nice marketing coup at the moment) or spending an extra amount developing an iPhone specific version of your app which probably won't give you the same ROI (of course, the other option is to use something like HTML5, but then you're screwed if you want to also offer your app on older desktop browsers which tend to have a much higher market penetration). Now, having said that, I too hope Flash dies sooner rather than later - but experience tells me this is unlikely to happen (since I'm stuck supporting IE6 on 50% of my projects, I don't see HTML5 saving the day in the near future).
Like who?
I have a hard time imagining someone who has a workflow that includes large amounts of important content that pushes it out in Flash, and can't invest in taking that same content and migrating it to HTML5/CSS3.
Because it is the geek version of an 'inconvenient truth". Folks on here love to bash the iPad/iPhone/iPod Touch, comparing it's 'closed' system to a general PC, which is wide open. The argument makes no sense when it is taken for what it is: An appliance.
Apple and Flash Haters in general have very real arguments against the use of flash (for the record, as to performance, if Flash improved in that arena, I wouldn't see an issue from that side of the argument. I could simply make the choice to use or not to use). It is proprietary, it encompasses an framework within itself, and it is out of Apple's control. If Apple were to allow Flash 'apps' on the iPhone, and Flash introduced a security vulnerability across such a large scope of applications (and you know there would eventually be thousands of such apps), Apple would be totally at the mercy of Adobe, who has a terrible track record when it comes to security. In such an instance, it would be Apple who suffered the scorn, not Adobe. Why would any sane person want to put themselves into that situation, when they obviously do not need to? The lack of Flash has arguably not hurt iPhone sales in any significant way.
I also found this statement from TFA a bit ridiculous: "At InfoWorld.com, we believe such lockouts of technology, however well rationalized, could eventually lead to an Internet future of multiple, incompatible platforms that demand multiple proprietary technologies."
The simple fact is, that if a technology is good, and absolutely needed, it will be placed where demanded, or the vendor refusing to will simply shrivel and die. The market ultimately makes this decision for a vendor. Standards group typically end up incorporating technologies when evolving needs require them, although they may take their time, they do eventually get there. These standards don't happen in a vacuum. Prior to HTML5 and no viable alternative to PROPRIETARY Flash, there simply wasn't much of a choice. The market demanded the features that Flash delivered. Even though it is a proprietary technology (like the one the above quote is slamming), it became hugely popular. This in itself I believe was it's biggest downfall. It had no competition within the market, and Adobe became lax with it. They had the 90+ percentile numbers of multitudes of Windows users who were lapping it with nary a choice to the contrary. 64 bit OS's have been around for years, yet we are only now seeing betas of a 64 bit plugin? Smart phones have been around for years, yet we still have no production version of the client. The geek herds should be all up in arms that Flash is so 'last century', yet they are clamoring to get it installed (well at least some are) onto their Droid's, only to complain that it crashes, kills battery life, and generally sucks. Why so surprised?
I'm actually rather shocked that Flash's downfall is so tantalizing close considering it was an almost impossible 'ball' to fumble given the unbelievable good fortune Adobe has had and squandered.
The InfoWorld article misses the point. It is for me the consumer to decide, and I believe the Apple crowd has overwhelmingly already done so, and new the new directions like HTML5's capabilities are a reflection of that (note I'm not saying Apple is responsible for HTML5 or anything of the sort, but their refusal to 'sign on' to Flash due to it's very obvious shortcomings are being answered by new standards to address those concerns).
Simple.
Those people pick up a book on HTML5/CSS3.
'Every six months'? RHEL 5 is three years old. It (and it's derivatives like CetOS 5) has reached the point where we can't even compile our latest code on it without replacing every library we use on the system. And you're running the version before that. Are you really surprised that Adobe isn't supporting your platform?
Meanwhile the x86_64 Flash plugin for Mozilla works pretty good on my (old) Fedora Core 10 workstation. I think Linux is the only platform you can even get a native 64bit binary of Flash for. So yeah, I think Adobe's Flash support on Linux isn't half bad.
Maxim: People cannot follow directions.
Increases in truth directly with the length of time spent explaining them
Thanks for clarifying. I was mistakenly thinking it was a general purpose computer because of the availability of 200,000 general purpose applications for it. After reading your post I realized that it's just a phone, nothing else, nothing more. It's just like my old Panasonic cordless phone on my desk. My bad.
Actually, you don't. You can compile Apple's toolchain on any other platform you want. Their fork of GCC is open source (GPL), clang / LLVM is open source (BSDL), and even their linker is open source (APSL). There isn't much in the iPhone part of Apple's open source site, but the toolchain is. If you want to compile it for some other platform and use it for cross development, you can. They don't ship Linux binaries, but then Microsoft doesn't ship a Linux cross-compiler either, and you need to either use WINE to run theirs or use a third-party one.
I am TheRaven on Soylent News
I don't see why you couldn't develop an application using the XNA Framework under Mono. You can even test it on your Linux machine with Mono XNA
GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
"*Grrr*- look, there's thousands of games available for the Xbox, does that make it a general-purpose computer too?"
Are we talking about the original XBox? FUCK YES IT'S A GENERAL PURPOSE COMPUTER, given it had a goddamned x86 core and ran a modified version of Windows, or even Linux if you felt like doing some hacking. Shit you modify the firmware and you could use the original XBox for TONs of applications.
The new 360? Not so much. The PS3? Most certainly (if it's the old fat version.)
Go do some actual programming for the devices before you run off at the mouth about something that is painfully obvious you know nothing about.
Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
Read carefully: the iPad/iPhone is NOT A GENERAL PURPOSE COMPUTER.
The only reason why it isn't is because it's artificially restricted from running arbitrary code installable by its user. So using that as a supporting argument for the restriction introduces a circular dependency.
Video on the iphone already plays with hardware acceleration. YouTube. UStream, Vimeo. Apple designed it this way in the very first iphone back in 2007.
You don't need Flash 10.1 for this. In fact it only underscores my point (in other posts) that depending on an interim format to implement and support new features gets in the way.
Pop quiz, hotshot.
Do you have to buy a Microsoft Developer licnese to wirte code for Windows Machines?
Nope
You pay for the license to use their tools.
DO you have to pay Microsoft to release software for Windows?
Nope
Do you have to submit your program for approval before you can sell your program?
Nope.