Wolf’s Little Store

July 15, 2008

Flash considered harmful, use with caution

Last week, or it might have been two weeks ago, Google announced they would start indexing Flash. Well, actually, Google has been indexing flash for a long time, they just didn’t have a proper way to do it. So what would happen is that the crawler would come to your Flash site, and it would try to index the content. If you did some nasty stuff with XML trying to overcome the fact that Flash indexing wasn’t all that good, you’d at least sort of get indexed.

You might think this is a load of crap, and yes, I am by no means an expert on what crawlers do when they do what they do, that is, crawling. Spidering. Trying to make sense of the web, in a computer-way. Since, as you know, computers cannot make informed decisions like some humans can. And they certainly can’t figure out your fancy over-the-top animated navigation.

The difference since a few weeks is that Googley’s engineers are working with Adobey’s, to make Flash indexing happen. Today they even announced they can crawl content SWFObject embedded flash. Which I can only applaud, since that is the correct way, for now, to embed Flash files into a webpage. I don’t have a particular interest in most Flash websites, but it’s a good thing that PDF files embedded in Flash (think Scribd and other upload-your-PDF services) do get indexed now.

Yesterday afternoon I was reading the forums of a very popular Belgian website, mainly about video games. These forums have a webdesign section which is oft amusing, particularly because it’s full of people trying to make sense of this webdesign and web development thing. I am lucky to have a bunch of talented people in the office I can pose my questions to. These people, apparently do not, which leads to a lot of interesting discussions where one person who knows nothing tries to solve another person who knows nothing’s problem. Then there’s the odd three people that stick around and that actually know what they’re talking about, but of which I do not understand why they bother to stick around. Their names start with an X and end with an Z, and the other guy’s initials are, funnily enough, BJ. I forgot about the third one.

Now, anyway, someone posted a question how one would handle a webshop in Flash. Which is a ridiculous idea, for one, but it took four posts for someone to point that out. BJ, I salute you. To his post, another member replied with the philosophical “Why is it that, everytime someone posts about Flash, the discussion thread ends up in a ‘To Flash or not to Flash’-debate?”. Well, this can be answered in a very simple manner: if the discussion thread ends up that way, it’s very likely that the initial subject would be better off done with HTML/CSS and your programming language of choice.

What are the correct uses of Flash then? Well, this question is not easily answered. There are a lot of factors to consider. For the sake of clarity, first of all, I am not against Flash. It is a wonderful tool and allows you to do things on the web that cannot be done otherwise, at least not with that speed and quality, or without waiting twelve years for the W3C to finish the spec on <canvas> and <video> and waiting another twelve for everyone’s favorite browser to support it.

I could start listing sites that do correctly use Flash, but first I want to tell you this: it’s not about the technology. It’s not about the program. It’s about the user experience. Here’s a few things that Flash websites don’t have: scrolls bars that react to my scroll wheel. Selectable text. Searchable text within the page. Different URLs for different pages. Right click ability to save images. Right click ability to copy images. To copy text. Keyboard navigation. Visited links. Resizable text. Form elements that actually look like form elements.

One could argue that, all of these things can be built if you want them to, but that’s the whole point: no one ever does. One site might have form elements that look like form elements. One might selectable text. But the user experience always depends on the creator, while anyone who builds a page with Frontpage has all of these features by default. Because they’re browser defaults.

This is why you should only use Flash for things that a browser can’t do by default. Let me give you some examples. Video is the obvious one. There’s displaying PDFs in accurate fashion (even though you could argue, why not let people download the PDF instead). There’s Slideshare, which could also have been written with HTML/CSS/JS and your programming language of choice, but then, how would you do fullscreen? And then there’s the whole performance equation. It’s probably a better idea to do Slideshare in Flash, because it’s a whole lot less CPU and bandwidth-intensive to load up a Flash movie than 300 JPEG slides that are the size of your browser window. And then they wouldn’t correctly be resized.

Flash wins for displaying media, hands down, but use it for anything else, and you’re bound to piss me off, and a lot of other people with me.

If you’re still not convinced, name me three Flash websites that are either a) In Alexa’s Top 10 000 b) In Metriweb c) A website you use every day. My contact info is in the about section.

  • When I say Flash website I mean full flash websites, that is, the kind where everything is in Flash
  • When I say programming language of choice, I’m talking about web-oriented scripting and programming languages, no one ever writes websites in C
  • By ‘media’ I mean video, games, presentations, interactive graphic-heavy material, and so on. You could argue that written text and imagery is media but, there’s no all-encompassing word for what I mean.
  • Google Announces Indexing Support for SWFObject-embedded Flash
  • The forum thread I was talking about, but do yourself a favor, don’t read it.
  • Thanks Tom for some Twittery inspiration on this post’s title

One response

Leave a Reply

Write in English, stay on-topic and polite.