Why Flash Doesn’t Suck
pixelborne.com
pixelborne.com
Anyway, I clicked the examples the author gave of good all-Flash sites. As expected, they act weird, they pop up "loading" indicators all the time, information density seems tiny, I can't copy/paste text that I should be able to, scrolling doesn't work the way it should (argh that's so frustrating -- that's a fundamental interaction!)... oh and I didn't even try hitting the Back button.
Sure, all those presumably "could" be fixed with enough work. And an MFC app could be written that rivals the latest .NET or Cocoa app. But in practice, the vast majority of apps are going to "feel" like the platform they're on. And the Flash platform feels super-sucky for information-heavy websites, if you ask me.
The biggest problem with Flash in my mind, and what will seal its doom, is that monolithic mentality that you should have a whole site that is only a flash program. That's wrong and throws away a large part of makes the web great. If you aren't building stuff out of the dhtml/dom substrate, if you're not basing architectural decisions on REST, you are doing it wrong.
That what RIA is all about. If you really hates Flash only, write your text in HTML and transfer it to Flash using javascript. It's best for both search engines and non-Flash browsers.
1. "You don’t have to follow convention anymore." Generally, convention makes it easier for visitors to figure out the website and get how to interact with it. The prototypical example is having links in blue with an underline. Form elements that look like other forms' elements are also important.
2. Innovation: Flash is a tool that has created a lot of innovation, yes, but so has Javascript. I'd argue projects like jQuery are promoting innovation much better: it's Javascript that runs on pretty much any browser without the need of a CPU-sucking plugin.
3. Rain City bikes: the author needs to brush up on SEO. Firstly, the page has quite a bit of content that is NOT flash, as cached by Google ( see http://66.102.9.132/search?q=cache:ggNvi1Rjd3UJ:www.raincity... ). Secondly, the anchor text of a page will make it rank higher for queries that match the anchor text; this is regardless of the contents of the page. The extreme examples of this are called Google Bombs: http://en.wikipedia.org/wiki/Google_bomb . For Rain City, this query shows you how much the anchor text is helping them: http://www.google.com/#hl=en&q=allinanchor%3ADutch+Bikes .
In short: nothing in the post is really arguing why Flash doesn't suck.
However it's always (with a few rare exceptions) the wrong tool for making web sites.
Flash is most successful when it's used properly: for small regions of video or cool interactivity. It's least successful when it's used to replace a properly coded website.
I don't think the 'web elite' want Flash to die necessarily; they just want all the same cool toys but with something that plays nice with existing web conventions. And they also don't want to sharecrop on someone's proprietary platform. I'd argue the author has taken a very shallow look at the issues involved here.
Most of the ajax in the wild is no better than that. Instead of saying Flash breaks everything, why don't we think about the good n' old browsing behavior model. Does it suit our Web 2.0 world well?
There was a Ajax chat application that was posted here recently. And this was my comment: http://news.ycombinator.com/item?id=1128206
The back button is an extremely useful feature and should probably be in every application. Whenever a user gets confused or lost they just click that button -- it's a universal undo for navigation.
Actually all of those things can be managed (quite well) with SWFAddress.
http://www.asual.com/swfaddress/
That's not to say, however, that I agree with the article. Flash really should be used a hell of a lot less on the web. No 'main site' should be built all-Flash, however it is ideal for things like interactive product micro-sites.
New capabilities of HTML are going to open similar experimental doors, and we'll all be better off in many ways because of it. I believe anything that expands what we can do is inherently a good thing, even if it allows things that should never be done.
Anyone care to tell me why web devs should want Flash dead? No, not a dumb blanket statement regarding open source. Think.
Flash sets the stage (no pun intended) for innovation on the web.
What if a developer wanted to introduced a new approach to video conferencing / VOIP and allowed developers to play with the experience among multiple audiences?
Why is Flash the spooky village witch, to which we must burn at the stake?
We'll wait on the W3C to "standardize" innovative processes into browsers. Good luck with that.
Because it's broken and therefore a pain for users. Should something like Flash exist? Yes. But Flash itself is a bad implementation of a good idea.
/sarcasm
If you were a programmer, you'd know that bugs can be fixed. But not by sitting around and complaining, but by writing code. Since Adobe won't let anyone fix their code, so the only solution left is to stop using Flash (and start using something else). The "something else" is improving browser support for fast Javascript, Canvas, video, 3d acceleration, etc.
The OOS community can create a player. Since the SWF format is inherently open there is nothing really stopping anyone from making an awesome Flash plugin, yet no one has. Must me a reason for that.
Oh wait, there is a reason. Money. Time. Adobe invests millions into R&D every year. Money that is used to do test cases and audience dynamics. OSS community does not.
The problem is software patents. Not Adobe. Not OOS. And of course, not Flash. A root problem exists and Flash, like much software, is the result.
I think the "death to Flash" cry is primarily a "death to ubiquitous Flash" cry. It's useful in a couple niche areas, but it's used everywhere instead of just those niches, and 99% of the time it's used so much / so poorly, it'd be better if it didn't exist.
The most fun I've ever had in programming was programming Flash. There, I said it.
Flash is an absolute blast. In my first experience with it, I was able to slap together a simple sprite-based game with basic physics, sound, and a video background. The whole project took about 10 hours, and most of that was learning the toolkit and ActionScript. ActionScript is still one of my favorite languages.
Yes, it's terrible for standards, has awful usability, etc. We should be pushing web standards hard. However, we shouldn't forget that Flash makes programming fun and accessible. That's pretty neat, and so I hope it never dies entirely.
I'll leave these here:
It certainly wouldn't work for the vast majority of visitors, as most people are still using Internet Explorer (hence why I can't produce any examples of AAA HTML5 sites), but there is nothing shown there that is inherently Flash only, technologically speaking.
If we're gonna go into debate about Flash vs. HTML5, I am gonna need to see more than simple equalizers and canvas bar charts.
Show me http://mycanvas.landsend.com or http://www.myspace.com/fanvideo in HTML5. I wanna see this level of complexity without a hindrance on development time, performance or scope. Enough with the double talk.
See the ADC for a pretty nice selection of examples which do actually rival Flash websites, often without even using JavaScript.
Right. Except that they don't always.
I'm not saying that Flash should be what we use for creating innovative content. Standards are slow. Video tag? We're just starting to see this implemented? After how many years has video been a demand on the web?
Flash will always do what the browser can't handle native. New demands for VOIP, Web Conferencing, h/w accelerated 3D will keep Flash alive as well an IDE (with mind crushing bugs, mind you) that brings everything together.
And if it doesn't live as a file format, that would be alright, too. There is a different experience with creating content within the Flash IDE. If Flash eventually outputted in native standards, that would be a great thing.
I wasn't trying to argue that HTML5 has the same adoption as Flash, simply that HTML5 is technically capable of creating those "state-of-the-art" websites cited in the first post.
FYI, HTML5 also addresses hardware accelerated 3D in the WebGL module. ;)
If you read, I wasn't talking about adoption rates (although that is also an issue worth noting).
You might have noticed that I mentioned that Flash brought about new innovations to the web. Most notably, how video is handled.
Try to look forward and see beyond HTML5, just as you seem to have no problem doing with HTML5 adoption rates.
All I wanted to say was that those three sites could be technically created using HTML5.
You then seemed to say that HTML5 doesn't actually let you create the effects exhibited in those websites. I corrected you and referred you to the modules.
Sorry for any misunderstandings. If we are clear on the above, and you would like to bring up a new point, I'd be happy to engage in a separate debate.
The side-step again. The examples that you gave (a vague reference to ADC) did not support your argument. You might remember: "Show me http://mycanvas.landsend.com or http://www.myspace.com/fanvideo in HTML5." It was apparent to me that we had moved away from the Blizzard sites.
The very simplistic Blizzard sites (which I agree could be done in HTML5 to some extent) are not what I would consider heavy or complex.
I asked: "I wanna see this level of complexity without a hindrance on development time, performance or scope."
You replied with the same double talk I expect in a Flash vs. HTML5 thread: "I'd recommend checking out the CSS animation / transitions modules at the W3C to get familiarized. " You mean the fully implemented CSS transitions?
If you can't give examples, then just say that. Don't come back with a vague blanket statement.
I already explained why I cannot give you an example of a AAA HTML5 website (Internet Explorer doesn't support it).
If you'd like to discuss the technical aspects of HTML5, feel free to email me at jeff@wolfire.com - I am going to stop checking this thread.
Also consider that an important property of the web is that its content is searchable.
Finally, I think that there is a desire to have a more open video standard.
Or that there is some unmentioned barrier to switching video formats that porn sites don't have the means or ways to overcome. Either way, his point is unclear and I agree; porn can switch to HTML5 <video> tags when/if there is sufficient browser support.
Flash sucks because it interferes with my usage of the web. Almost every use of Flash puts a barrier between me and the information I want to get or give, a barrier that can be very annoying (though never impossible) to overcome.
About the only thing on the Web that isn't "information" is "experience" - I can't think of any example besides games, but there may be some. You know, where the valuable thing is the interaction, the ping and pong. That's not a thing I can paste into a spreadsheet, process with a script or bookmark. For such things, I can accept that the powerful Flash plugin is a better platform than the documents-and-tables world of HTML.
Still, most Flash usage that I see on the web is just to add glitz and glamour to an otherwise informative page - swoopy page transitions, animations, sound-effects. To the extent that your website prevents your visitors from obtaining and making use of the information they came to your website to obtain, Flash sucks.
What a lie. I can't do squat because flash either is either a POS on my platform (OS X & 64 bit linux) or nonexistant (blackberry and iphone).