The HTML5 and Flash Debate from a Flash Developer's Perspective
youtube.com
youtube.com
The debate right now is one side saying you should use "HTML5" because it's more open than Flash while Flash is buggy, bloated, and proprietary. The other side is saying "I need Flash to give my clients what they want." Just like people started using CSS over table-based layouts when it was pragmatic, people will stop using Flash when Flash stops being the best tool for the job. There's nothing wrong with that.
We are looking at Flash solutions right now to solve that problem.
I work with Flash and I don't think it's buggy or bloated - that's overblown. It's not perfect, but it's definitely much better than people paint it to be (specially people who don't work with it).
In the same vein, HTML5/canvas is unreliable both in terms of performance, adoption, and consistency among different environments. People like to think of "standards", but when it requires as much hacks as any other 'standard' work nowadays do, and when it's not even available in half the browsers out there, I wonder how can anyone think it's the golden goose people like to claim it is.
Depends if you're using Windows or not. On Mac and Linux, the performance and reliability are pretty bad (compared to other modern software, anyway).
And vice versa. There's a nice table-based layout on the Google front page still!
Look here: http://www.google.com/advanced_search
Do you consider that mass of table usage to be for tabular data?
And all those people not using CSS layouts for non-pragmatic reasons actually held up progress because it stifled the market for tools (and skills and frameworks etc.) that would work in the new manner.
So good analogy, but I think it argues well for the opposite of what you intended.
But this will eventually boil down to a difference in opinion, and I agree with your point that it would be better for everyone if more people were quick to adopt technologies that are better in the long-run.
Ignorance is bliss.
The fact is, for video playback, it does just fine today, even on limited mobile devices, and if sites were to only replace Flash with HTML5 for video and audio playback, we're talking about 90% of Flash's popular use right there. As HTML5 matures, including content creation tools and the performance of various browser runtime implementations, it'll eat into Flash's share for other tasks as well. Apple is creating a market demand for HTML5 development tools and expertise, which is the first necessary step in order to bring the platform to maturity. After that happens, Flash developers will jump on board and forget this thing ever happened. Until then, just keep coding your crappy Flash ads and leave the rest of us who actually want some progress for the open web alone.
The mature platform and an immature platform.
HTML5 holds promise but it's simply not capable of delivering anything close to what the flash platform can.
Just because something is new doesn't mean it's better. Let it naturally outperform flash once it's better, nothing hinders that.
So if you believe HTML5 will be better then let it prove itself.
So far it's no where near.
That you get better performance with video using HTML5 does little to remedy the fact that playback of video is really all you can do.
You try and seamlessly integrate video, with logic, dynamic text, vectors in HTML5 and you will be pretty disappointed.
The Flash isn't the be all end all. But what it does it does so many times better than HTML5 for quite some time.
With regards to designing entire sites in flash. Go to thefwa.com check out some of the sites on that portal. Then tell me why you would want an HTML fallback for that? That is kind of like saying that all video should have transcription of what is being said.
Sometimes there is no substitute.
With regards to the open web argument. Since we are in agreement that Flash isn't the be all end all of the web, then what is the problem?
If HTML5 is better then it will eventually outcompete FLASH. Until it is, support both. That is what I don't understand with Apples claims.
HTML5 is right now rather resource intensive as shown in the video. It actually going to be worse for the battery life of an iPad than flash is.
It's a hollow argument.
As for that site you linked, you may want to find a better example. All that stuff seems relatively straightforward to implement in CSS/javascript and Canvas, and that would probably be much less painful to actually use, if possibly more effort to create. That site was a terrible experience, and a perfect example of why encouraging this kind of behavior by web developers a bad idea.
Not the site itself. What it is linking to.
Regarding competition.
So your idea of competition is how apple does it by not allowing Flash on the iPad and iPhone.
That's not competition.
ThomPete - you're a voice of reason and contemporary fact.
To the "vs." crowd: try and read all the points; not skimming and then commenting without paying the respect to do some legwork.
* ads - HTML5 ads will exist. The easier they are to make, the more of them there will be. Advertisers will use whichever has the widest audience. In fact, advertisers will be more encouraged by all the circle-jerk mob-mentality surrounding HTML5.
* video playback - for one, HTML5 doesn't play better or with less CPU. I think about 10 or so YouTube videos have proven this (visually, not blog opinion rhetoric). I'd link a few to you, but let's face it...you're not gonna look at them. You'd be forced to see proof. (If you do manage to be overcome with a neutral state of mind, do some research)
* cpu - another red herring. So far, I've not seen 1 canvas+js example (of which has a close equal to a Flash equivalent) that outperforms Flash. I wouldn't expect it to, either, since Flash is compiled and JS is interpreted. Bottomline: an immersive experience is going to take some CPU. Realize it applies to all technologies and get over it.
* ipad/mobile - Flash depletes battery. I agree. Equivalent canvas+js experiences use similar CPU. Taking that into consideration...the battery specifically hates Flash? Please.
* greater control/poor coding - Do I really need to point out that this applies to everything? Not just Flash?
Let's consider that HTML5 is being implemented in 2010. I've been on the 'net since 1995. That's 15 years for video to make its way into the browser -- without the "dreaded" plugin tech.
You know what's dreaded? Not being able to move ahead at the speed necessary to make great, immersive experiences. Being tied to a set of slow, archaically-driven, standards.
Flash (or more specifically plugin arch) is a petri dish for the web's innovative future. It can't and shouldn't die. If anything, it should become more open, more accepted and more accessible.
However, I am alright with a website being 100% reliant on Flash just as I am alright with a website being 100% reliant on video. The key issue here is openness, not platform.
Flash developers want the development experience that Flash offers. HTML5 doesn't offer it...yet. When it does, I personally would love to migrate to it.
Your assumptions are pitiful and illogical.
Let HTML5 prove itself instead of insisting that it's better because it's open.
That isn't an argument anyone outside academia can afford making.
You mean like anything else? Thank you for admitting you didn't have a point. Most people can't do that.
Do you really think their code is that bad?
I tend to fall on Apple's side when it comes to not wanting to be forced to support a technology that it is against. That being said, seeing the CPU usage on these simple HTML5/JS games was a bit shocking - no idea if that is due to sub-standard coding, or if it's inherent in JS, but it seems to blow a hole in the "Flash is a resource hog" argument.
I am wondering if better developer tools for creating graphical HTML5/JS and/or JIT compilation will help with this. Clearly an iPhone is capable of amazing things graphically, but that's all been on the native app side.
How is that Apple's side? Allowing something to be installed is not by any means the same as being "forced to support" it.
Right now there is not a way to "install" something on iPhone OS that would then become available to Safari and other apps. To do that, they'd have to build a plug-in architecture for iPhone OS.