Your link makes it seem like an evangelist is playing loosely with words; "available for download" could simply mean beta/RC status, not ready for release everywhere.
Battery Life
From your link: The results are amazing: I can watch a 4 hours and a half flash movie, without interruption, with a bright screen (no sleep mode) and sound !!!
From Steve Jobs post: The difference is striking: on an iPhone, for example, H.264 videos play for up to 10 hours, while videos decoded in software play for less than 5 hours before the battery is fully drained.
They seem to agree with each other? And only helps Apple's point.
It is true that some of these links are from evangelists. But we're not saying Steve Jobs is neutral are we?
Battery Life: It's a bit of hyperbole. We don't watch videos on the iPhone for 10 hours. Would it matter if Flash could play videos for 11 hours? It is a misdirection or a sidestep of an original claim that Flash would kill the iPhone inside of 2 hours.
Touch/Scroll: Another sidestep. A Flash issue? With that I answer: a:hover {}
I just don't get this argument from Apple. Steve Jobs pioneered high usability mobile UI because Apple took the reigns. Now we have Android UI taking a cue from Apple and "unlocking the mobile market"
Flash and HTML5 have a similar relationship. HTML5 opens it up a bit. That's great. But what about HTML6? Flash is Area51 for implementation study.
We don't need to implement a marquee tag and then take it away once we realize it sucks. How could we market test video conf. or canvas-based visuals if we had no way to benchmark them? Flash is good. The VS. argument is a misnomer.
> "We don't watch videos on the iPhone for 10 hours."
We do other things on the iPhone. I don't want to make the choice between watching a video and then restricting my own usage just so my phone has enough juice to make a call. I'd rather watch videos and use my phone, and the more power efficient everything is, the more the user can do this.
To put it in perspective, if Apple's numbers are to be believed, running Flash alone doubles the power consumption of the device. That's insane.
> "With that I answer: a:hover {}"
a:hover is no longer (it certainly used to be) a common tool used for site navigation. Which is to say, rollover dropdown menus are out like parachute pants - it's a non-issue on the web today. Just about every site works with "clicks", which is Apple's primary form of interaction with websites on touch devices.
The most compelling argument made though we've already been aware of for some time: cross-platform toolkits encourage lowest common denominator design. In Apple's world of pixel-perfect mockups and obsessive attention to detail this is abhorrent - and I'm inclined to agree. The iPhone's chief strength is its remarkably polished user interface - which for the most part remains true across its 3rd party app sphere, thanks in no small part to Apple's obsessive HID enforcement.
A Flash-compiled-to-iPhone app destroys this in the same way that a Linux Qt app hastily ported to Windows is the same.
> a:hover is no longer (it certainly used to be) a common tool used for site navigation. Which is to say, rollover dropdown menus are out like parachute pants - it's a non-issue on the web today. Just about every site works with "clicks", which is Apple's primary form of interaction with websites on touch devices.
This is precisely what I am talking about. We slice the pear in the middle and somehow end up choosing one side over another. True, a:hover is a deprecated form of menu control in HTML, but it is in Flash, too. Again, how you use the tool. Damning an entire developer base based on miscreant use is not a compelling argument. Sorry, but it isn't.
That's being a bit generous in favor of Adobe - the majority of the Flash development sphere is practically what one would consider "miscreant use".
Here's my impression of the different sorts of Flash use, based on my journeys on the web:
- Videos/Audio: Easily replaced by HTML5, and better too. More readily hardware accelerated, behaves as part of the core browser instead of a hijacking addon (e.g., Ctrl+T while focused on a Flash applet = no new tab), and much better battery life on mobiles.
- Crappy restaurant websites and other crimes against humanity: These should just die, and HTML5 will hopefully inspire better design ethic than this. I don't buy the argument that hovering is no longer common used as a critical navigation feature in Flash - I see it everywhere, especially for crappy restaurant websites. Flash is also impossible to crawl which reduces the usefulness of the web overall. Hell, you can't even LINK to content in a Flash site. IMHO the "full Flash site" (as opposed to Flash being a component of a page) needs to die a fiery, painful death.
- Games: The only place where Adobe has even a remotely legitimate claim that Flash is an empowering product rather than a crutch.
When I think of Flash these keywords come to mind: slow, buggy, crashy, badly designed, usability nightmare, gimmicky, unprofessional, and just plain bad.
> That's being a bit generous in favor of Adobe - the majority of the Flash development sphere is practically what one would consider "miscreant use".
The vast majority of websites in general are poor. It would be no surprise to see that the majority of Flash sites would also be poor. Both sides have exceptions, though.
> Videos/Audio: Easily replaced by HTML5, and better too. More readily hardware accelerated, behaves as part of the core browser instead of a hijacking addon (e.g., Ctrl+T while focused on a Flash applet = no new tab), and much better battery life on mobiles.
I don't disagree. I am grateful that HTML5 can handle this, but it took a "standards" committee several years to roll this into a questionably viable model. The immediate fanfare for the slow implementation raises my eyebrow a bit. We're all happy about having something we've needed for years. The company that created the fold so we could have sites like YouTube today? The devil.
> - Crappy restaurant websites and other crimes against humanity: These should just die, and HTML5 will hopefully inspire better design ethic than this.
It won't. Cheese is forever. If HTML5 can accomplish cheese, people will create cheese. We're all hopeful, but the human condition comes into play.
It's not the cheese I object to - but that the Cheese breaks the internet in fundamental ways.
Example: We just wrapped up Restaurant Week here in Seattle where a bunch of local establishments offered up prix-fixe specials for a couple of weeks. The website for this event was done up all in Flash, and made it impossible to crawl for a search engine, or even to link or bookmark a particular restaurant for later retrieval.
What did we exchange for this cheese and gimmicky design? Everything.
There's no regulating for good taste - you're right, most websites in general are poor. They, however, are still accessible - neon green text on black background with an annoying MIDI track in the background is still information that:
- you can link to
- you can bookmark
- you can copy and paste
- you can search for in-browser (doubly important if the website fails at layout, e.g. most Flash sites!)
> What did we exchange for this cheese and gimmicky design? Everything.
I agree that if you don't follow the proper protocol you will end up with an undesirable site. I can't argue that Flash == HTML in terms of accessibility. There are ways within Flash to harness some accessibility but it is up to the developer to implement these. An informational site in Flash is a bad choice. I would never suggest the use of Flash for broad use. A fun site (like http://www.myspace.com/fanvideo) is more appropriate.
> - you can link to
> - you can bookmark
Named-anchors and proper implementation (same as AJAX RIA)
> - you can copy and paste
"Selectable text" is an option in any Flash text field.
> - you can search for in-browser (doubly important if the website fails at layout, e.g. most Flash sites!)
> - you can search for on Google/Bing
Flash exports text within to the container. Google also can search SWF.
"Selectable text" is an option in any Flash text field.
Is copying/pasting it to the OS (or app) pasteboard an option? If so, will it use the same UI as native apps have? Or will it force a funky widget of its own in the middle of an app that otherwise looks like the rest of the OS?
The options are the same as the OS using the same UI. Identical to right-click menu in browser inputs/address bar. It is using the OS clipboard. CTRL/OPTION+C/V works the same as well.
Are you saying that Adobe reimplemented the UI? Or that they pass it off to the OS to handle? Because if its the former, the iPhone doesn't have a menu dropdown for cut/copy/paste. Or a ctrl/command button, for that matter.
I'm only asking because I've never had copy/paste from flash work well on the desktop.
Because <canvas> is used for just the "flashy" part of the site but everything else is still in traditional HTML with all of its advantages. Sure that can be done in Flash too, but, as we've seen, people often end up just doing the vast majority of the site in Flash. There's not the same temptation with <canvas>.
Why not? If <canvas> is being used as a drop-in replacement for Flash, why wouldn't it just be used in exactly the same ways? There's nothing special about canvas that would make it less prone to abuse.
Flash includes a ton of controls: buttons, scrollbars, text areas, etcetera. It has its own scripting language and memory environment that is separate from the HTML page and its DOM/JavaScript environment that contains it. There are ways to shuffle data and events between the two, but that means going out of your way to do so.
So if you're going to have a Flash-y data visualization component, say, it's easiest and most natural to have the controls for it (buttons adjusting parameters, display of those parameters, navigational controls) made in Flash too -- just expand the content rectangle of your Flash component out and drop in the controls.
In HTML5, the 'environment' of the <canvas> object is that of the surrounding HTML page. Adding buttons and other controls around the edge of your visualizer is most straightforwardly done by using "native" HTML <button>s and other such elements.
So it would be surprising to see <canvas>-using pages end up being done in a way where the <canvas> is essentially the whole page — it would require more programmer effort — whereas in Flash that's by far the easiest way to do it.
Although i agree that there are a lot of issues wrong with Flash, some of the things you mention aren't entirely accurate. For example, you can link directly to interior Flash content with SWFAddress (http://www.asual.com/swfaddress/). Also, there have been greater strides made in crawlers so that Flash content is more easily indexed by crawlers.
I will be the first to admit there are a lot of poorly designed Flash sites, but from an interactive design perspective, Flash still gives you the most freedom to create more innovative ways for user interaction. IMO this isn't something that should be dismissed so quickly.
> We do other things on the iPhone. I don't want to make the choice between watching a video and then restricting my own usage just so my phone has enough juice to make a call. I'd rather watch videos and use my phone, and the more power efficient everything is, the more the user can do this.
To put it in perspective, if Apple's numbers are to be believed, running Flash alone doubles the power consumption of the device. That's insane.
What's your battery life playing an intensive game or using a processor intensive app?
"But we're not saying Steve Jobs is neutral are we?"
I would argue that that's a reasonable point to make. Steve Jobs doesn't have a vested interest in seeing Flash die, he has a vested interest in seeing the iPhone platform succeed. If he saw any way Flash could help that, I'm sure he'd be all for it, but he's seen how Adobe's behaved in the past (late with PPC versions, late with OS X versions, late with Intel versions, late with 64-bit versions, crashy Flash, slow Flash, etc.), and he has no interest in subjecting the iPhone to the same issues that the Mac platform has had to endure at the hands of a slow-moving corporation who has little interest in being a good citizen.
I would argue that Jobs is 'neutral' in the sense that he's not supporting anyone else's agenda. He's made his choice based on the facts before him, and while you may not agree with how he got there, I would say that he got there from an initial position of neutrality.
The very moment flash was not included in the iPhone, Steve Jobs had a vested interest in seeing Flash fail. If Flash expands, user satisfaction with the iPhone goes down. If Flash fails completely, one of the strongest negative components of the iPhone disappears.
Why does he have a vested interest in making it fail? Could he not change his mind and allow Adobe onto the platform? It's not like he's never changed his mind in the past (the Intel vs PPC 'Megahurtz Myth' comes to mind).
Yes, this goes back to 1989 fight over fonts, and the 1993 fight about Display Postscript and the 1999 fight about Photoshop on Windows, and the 2007 withdrawal of 64-bit Carbon toolkit at the last minute.
Battery Life: It's a bit of hyperbole. We don't watch videos on the iPhone for 10 hours. Would it matter if Flash could play videos for 11 hours? It is a misdirection or a sidestep of an original claim that Flash would kill the iPhone inside of 2 hours.
If a phone can watch 4 1/2 hours of flash in software before the battery is drained this means that watching a two hour movie will eat half of my battery. By comparison I can watch a two hour movie using hardware decoding and still have 80% of my battery left.
About Job's remark of hardware vs software decoding of video:
In both cases, he's talking about H.264. An end user might not even realize there's a difference. But some encoders produce H.264 that can hardware decode, and some encoders do not. Not all H.264 is created equal, and this is one area that really matters.
You want an H.264 encoder that produces hardware decoder compatible video.
When it comes to battery life, you must consider the affect on the total user experience.
If the iPhone can play video for 10 hours, that means a 2 hour movie brings my battery life to 80%.
If the iPhone could play Flash video for 5 hours and I watch a 2 hour movie, my battery life is reduced to 60%.
Given other things I do with my phone battery life is important beyond "how much video can I watch?" If the repercussions of watching a two-hour video are so much less severe, I am more likely to watch the video in question knowing I won't wind up with a dead phone after a half day of traveling.
Apple modified WebKit to support most uses of a:hover by changing how touch interaction works when a :hover style exists on an element. Apple cannot do this with Flash, which means Jobs's argument here is right on the money.
No, but you might watch a film and a couple of music videos and then the battery is getting awfully low. My iPhone lasts a day on one charge (with heavy web use & lots of calls). Halving that with a 2 hour film could be a big problem.
Your link makes it seem like an evangelist is playing loosely with words; "available for download" could simply mean beta/RC status, not ready for release everywhere.
Battery Life
From your link: The results are amazing: I can watch a 4 hours and a half flash movie, without interruption, with a bright screen (no sleep mode) and sound !!!
From Steve Jobs post: The difference is striking: on an iPhone, for example, H.264 videos play for up to 10 hours, while videos decoded in software play for less than 5 hours before the battery is fully drained.
They seem to agree with each other? And only helps Apple's point.
Touch/Scroll
How about hover?