The Bad Flash Experience Inside Facebook
Have you ever noticed how when you use a Flash application inside of Facebook you have to click on the SWF first before it will let you do anything? That’s always bugged me because it makes Flash look like a second class citizen. With a platform as wide and diverse as Facebook, Flash is a perfect way to build cool interactivity and stand out to users. But I have to think some developers are foregoing using Flash because from a user standpoint, an extra click just to get it started is kind of annoying.
Well yesterday I had a ‘duh’ moment and found out why that is: the people at Facebook don’t want it to end up like MySpace. MySpace lets you embed Flash wherever and so when you load a page you can be bombarded with sound and video which also makes for a bad experience. So what Facebook did was require all Flash to be activated so you couldn’t attack your users with annoying sounds or advertisements. Based on the response I saw yesterday at Facebook Developer Garage people building on top of the platform *want* to get rid of the one click activation so we may be able to make some progress.
I’m hoping to get a dialogue started with people at Facebook and Adobe to see if we can help them come up with a solution that works for keeping their site clean but still lets responsible application developers use Flash without the barrier.
[tags]Facebook, Flash, Adobe[/tags]
Posted in Adobe, Flash Player, Rich Internet Applications








August 1st, 2007 at 11:20 am
Ciao Ryan,
that is actually how it works for Flash Lite 1.1 and 2.0 content within the S60 browser!
Alessandro
August 1st, 2007 at 11:20 am
Ciao Ryan,
that is actually how it works for Flash Lite 1.1 and 2.0 content within the S60 browser!
Alessandro
August 1st, 2007 at 11:27 am
This as nothing to do with “facebook don’t want it to end up like MySpace”.
It is caused by a change in the way Flash is embedded by default (it affects all sites, unless the site owners change the way they embed flash). There are several articles about this issue on Adobe’s site – e.g.:
http://www.adobe.com/devnet/activecontent/articles/devletter.html
…and it is not limited to Flash:
http://www.baekdal.com/articles/Technology/microsoft-ie-activex-update
August 1st, 2007 at 11:38 am
At the very least, the platform should allow some cookie or Shared Object detection so that once a user activates the Flash app/widget inside their facebook page, the same app will automatically load upon returning.
August 1st, 2007 at 11:39 am
@Robert – If they made sure the Flash app wasn’t doing anything annoying, why not? Seems like they could have a trust level with some developers. Or we might be able to do something on the player side to meet their needs.
@Thomas – This isn’t an Eolas thing, this is the way it is for all browsers on Facebook, it’s part of their system. Not sure how they enforce it, but all Flash requires a click.
August 1st, 2007 at 11:39 am
Thats a really interesting thought Chuck. I’ll ping them about that.
August 1st, 2007 at 11:50 am
@Ryan, Okay – I didn’t know that. I am a bit suprised that they would implemente such a user-hostile behavior, so I assumed that it was related to the Eolas issue.
Thanks for the update!
August 1st, 2007 at 12:40 pm
Mark covered this in the f8 keynote. The reasoning is indeed to avoid bad things. However, the click first requirement is limited to the profile. Canvas pages can be either fbml or an iframe, in which case there is no click first requirement.
August 1st, 2007 at 12:42 pm
BTW, why isn’t the f8 keynote a Flash video? Come on Facebook, get with the times.
August 1st, 2007 at 2:58 pm
The LSO option sounds good. That is, the same .swf shouldn’t need a click each time.
Perhaps Adobe can create an embed option that says “no audio”. I’m pretty certain the reason why Facebook limits it is because of the audio (not video).
Thanks.
August 1st, 2007 at 3:47 pm
Hans is right, it’s just on the profile pages. Forget the MySpace comparison, profile pages get tons of hits and Facebook optimizes around this. There are no iframes allowed on the profile. All of the FBML is cached, i.e. you have to persist the FBML to the user’s profile via one of the REST APIs. Everything is designed around making that page load super fast. No annoying slowness like on the Google personalized homepage, or Netvibes, or many people’s blogs, or for that matter, MySpace. They allow the fb:swf tag in the FBML for the profile, but they watch the HTTP traffic when you load the page. Your browser doesn’t load the SWF until people click on the image. So there’s no SWF download and (more importantly) there’s no SWF -> remote server traffic slowing down the initial load of the profile page.
August 1st, 2007 at 6:58 pm
My guess is it’s something to do with keeping the page size down – i.e. the SWF not being downloaded until it’s clicked. MySpace is hell because the kids creating pages don’t understand that embedded a multi-MB photo-stream or some such causes the page to take an age to load. (Depends on what SWF they embed – many of the newer services are a lot better and presumably download a small SWF that then streams?)
August 1st, 2007 at 8:20 pm
Do we know the result of that patent lawsuit abut embedding multimedia in a webpage? Will that lttle click on content thing ever go away?
August 2nd, 2007 at 2:38 pm
Facebook did invent their own fbml for facebook developers to user when building facebook apps. This could be part of the solution for users own pages.
This is abit off topic, but have u noticed that when making a facebook application with flash(i.e. “.swf” that runs inside an iframe inside the facebook site). All the text input widgets malfunction with flash player 9.0.47.x
not all the key strokes are read into the text inputs. even when typing slowly.
August 2nd, 2007 at 6:38 pm
heh, I think us Flash developers have it better than the javascript / ajax dudes. No Javascript allowed on the facebook homepage at all
August 2nd, 2007 at 6:39 pm
heh, I think us Flash developers have it better than the javascript / ajax dudes. No Javascript allowed on the facebook homepage at all
August 7th, 2007 at 7:03 am
I agree with what FB are doing by not attacking the users with animations and adds, but if you install one of the applicaiton you should know what your in for, so i agree with loosing the click activate too.
September 12th, 2007 at 1:45 am
I brought this up with the Flash Player team when we were discussing our wishlist for next gen flash players. It would be great if there was a paramater that accepted a boolean or better yet an int so you could set the default volume of your swf. This would allow sites like facebook to ensure that volume isn’t blaring when the user hits a site. Something like . I also brought up the fact it would be nice if there was a sound control api that could be accessed via js by default in the player, this would allow another way to set the volume by default. My 2 cents.
September 12th, 2007 at 1:47 am
Damn, my example tag was stripped “Something like . ” should of read like so:
param name=”defaultVolume” value=”0″ <
October 1st, 2007 at 2:06 am
[...] The Bad Flash Experience Inside Facebook [...]