<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pixel Acres &#187; Flash</title>
	<atom:link href="http://f6design.com/journal/category/flash/feed/" rel="self" type="application/rss+xml" />
	<link>http://f6design.com/journal</link>
	<description>Adventures in web and graphic design</description>
	<lastBuildDate>Thu, 11 Mar 2010 02:37:53 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Flash video bufferTime gotcha</title>
		<link>http://f6design.com/journal/2009/05/29/flash-video-buffertime-gotcha/</link>
		<comments>http://f6design.com/journal/2009/05/29/flash-video-buffertime-gotcha/#comments</comments>
		<pubDate>Sat, 30 May 2009 02:27:07 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/?p=339</guid>
		<description><![CDATA[I have recently been working on a website that contains a lot of video content, including some fairly short videos &#8211; less than 20 seconds in length. To ensure uninterrupted playback of these short clips I thought it would be smart to buffer the entire video stream before beginning playback.
In AS3 this can be achieved [...]]]></description>
			<content:encoded><![CDATA[<p>I have recently been working on a website that contains a lot of video content, including some fairly short videos &#8211; less than 20 seconds in length. To ensure uninterrupted playback of these short clips I thought it would be smart to buffer the entire video stream before beginning playback.</p>
<p>In AS3 this can be achieved using the <code>bufferTime</code> property, which I set to 20 seconds:</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #6699cc; font-weight: bold;">var</span> nc<span style="color: #000000; font-weight: bold;">:</span><span style="color: #004993;">NetConnection</span> = <span style="color: #0033ff; font-weight: bold;">new</span> <span style="color: #004993;">NetConnection</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
nc.<span style="color: #004993;">connect</span><span style="color: #000000;">&#40;</span><span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000000;">&#41;</span>;
&nbsp;
<span style="color: #6699cc; font-weight: bold;">var</span> ns<span style="color: #000000; font-weight: bold;">:</span><span style="color: #004993;">NetStream</span> = <span style="color: #0033ff; font-weight: bold;">new</span> <span style="color: #004993;">NetStream</span><span style="color: #000000;">&#40;</span><span style="color: #0033ff; font-weight: bold;">this</span>.introVideoConnection<span style="color: #000000;">&#41;</span>;
ns.<span style="color: #004993;">bufferTime</span> = <span style="color: #000000; font-weight:bold;">20</span>;
&nbsp;
<span style="color: #6699cc; font-weight: bold;">var</span> video<span style="color: #000000; font-weight: bold;">:</span><span style="color: #004993;">Video</span> = <span style="color: #0033ff; font-weight: bold;">new</span> <span style="color: #004993;">Video</span><span style="color: #000000;">&#40;</span><span style="color: #000000; font-weight:bold;">320</span>, <span style="color: #000000; font-weight:bold;">240</span><span style="color: #000000;">&#41;</span>;
<span style="color: #0033ff; font-weight: bold;">this</span>.<span style="color: #004993;">addChild</span><span style="color: #000000;">&#40;</span>video<span style="color: #000000;">&#41;</span>;
video.<span style="color: #004993;">attachNetStream</span><span style="color: #000000;">&#40;</span>ns<span style="color: #000000;">&#41;</span>;
&nbsp;
ns.<span style="color: #004993;">play</span><span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;myvideo.flv&quot;</span><span style="color: #000000;">&#41;</span>;</pre></div></div>

<p>But when I tested the results on a remote server I discovered that Flash was waiting the entire 20 second duration before starting the video stream, despite the fact that the flv had fully downloaded in just a few seconds.</p>
<p>After scratching my head for a few moments I realised that the problem had to be the high <code>bufferTime</code>. Normally playback would start as soon as the entire video was loaded to memory, regardless of the <code>bufferTime</code> value, but that doesn&#8217;t appear to be the case when the <code>bufferTime</code> exceeds the video duration.</p>
<p>Setting the <code>bufferTime</code> to less than the video duration worked as expected: Video playback began as soon as the buffer was full.</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2009/05/29/flash-video-buffertime-gotcha/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Erase an image using your mouse in AS3</title>
		<link>http://f6design.com/journal/2009/05/24/erase-an-image-using-your-mouse-in-as3/</link>
		<comments>http://f6design.com/journal/2009/05/24/erase-an-image-using-your-mouse-in-as3/#comments</comments>
		<pubDate>Sun, 24 May 2009 12:50:11 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/?p=322</guid>
		<description><![CDATA[I recently had to create a simple Flash application that allowed the user to &#8216;erase&#8217; an image using their mouse. I couldn&#8217;t find any examples of the exact effect I wanted, so I cobbled together my own. The effect I came up with is similar to using the eraser tool in Photoshop.
Demo
Click and drag your [...]]]></description>
			<content:encoded><![CDATA[<p>I recently had to create a simple Flash application that allowed the user to &#8216;erase&#8217; an image using their mouse. I couldn&#8217;t find any examples of the exact effect I wanted, so I cobbled together my own. The effect I came up with is similar to using the eraser tool in Photoshop.</p>
<h3>Demo</h3>
<p>Click and drag your mouse on the image below to erase it. Press the reset button to start over.</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_erasable_image_582536813"
			class="flashmovie"
			width="400"
			height="400">
	<param name="movie" value="/journal/erasable_image/erasable_image.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="/journal/erasable_image/erasable_image.swf"
			name="fm_erasable_image_582536813"
			width="400"
			height="400">
	<!--<![endif]-->
		
<p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
<p>&nbsp;</p>
<h3>Download</h3>
<p><a href="/journal/erasable_image/erasable_image.zip">Download FLA</a> (includes code comments explaining how everything works)</p>
<h3>Credits</h3>
<p>My effect is based on the masking techniques shared by surferboy in an <a href="http://www.ultrashock.com/forums/actionscript/eraser-tool-in-as3-123871.html">Ultrashock forum discussion</a> and a <a href="http://www.flashandmath.com/basic/mousedraw2/index.html">Flash &#038; Math tutorial</a> explaining how to use Flash&#8217;s drawing API to draw using the mouse.</p>
<p>The gorgeous photographs used in this demo are by <a href="http://www.flickr.com/photos/anthonythomas/">wabberjocky</a> and <a href="http://www.flickr.com/photos/exlibris/">ex.libris</a> and are available under a Creative Commons license.</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2009/05/24/erase-an-image-using-your-mouse-in-as3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>FlashScaler now works with SWFObject 2</title>
		<link>http://f6design.com/journal/2008/08/08/flashscaler-now-works-with-swfobject-2/</link>
		<comments>http://f6design.com/journal/2008/08/08/flashscaler-now-works-with-swfobject-2/#comments</comments>
		<pubDate>Fri, 08 Aug 2008 23:23:24 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Toolbox]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/2008/08/08/flashscaler-now-works-with-swfobject-2/</guid>
		<description><![CDATA[One of my readers, Ren&#233;, asked me if my FlashScaler JavaScript class works with SWFObject 2. I&#8217;m happy to say that yes, it does. The demo and download on my original FlashScaler post now include working examples using SWFObject 2.1.
]]></description>
			<content:encoded><![CDATA[<p>One of my readers, Ren&eacute;, asked me if my <a href="http://f6design.com/journal/2006/12/16/scalable-flash-with-scrollbars/#comment-68184">FlashScaler</a> JavaScript class works with SWFObject 2. I&#8217;m happy to say that yes, it does. The demo and download on my original FlashScaler post now include working examples using SWFObject 2.1.</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2008/08/08/flashscaler-now-works-with-swfobject-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Version targeting lessons from Flash</title>
		<link>http://f6design.com/journal/2008/02/08/version-targeting-lessons-from-flash/</link>
		<comments>http://f6design.com/journal/2008/02/08/version-targeting-lessons-from-flash/#comments</comments>
		<pubDate>Fri, 08 Feb 2008 22:55:34 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[News & Reviews]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[backwards compatibility]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[ie8]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[version targeting]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/2008/02/08/version-targeting-lessons-from-flash/</guid>
		<description><![CDATA[In my last post I outlined some of the problems that might arise from the proposed version targeting changes to Internet Explorer 8. My major concern was that by removing the motivation for web authors to update legacy sites, version targeting might hamper the adoption of modern web development techniques. During the week I have [...]]]></description>
			<content:encoded><![CDATA[<p>In my <a href="http://f6design.com/journal/2008/02/01/breaking-the-web/">last post</a> I outlined some of the problems that might arise from the proposed version targeting changes to Internet Explorer 8. My major concern was that by removing the motivation for web authors to update legacy sites, version targeting might hamper the adoption of modern web development techniques. During the week I have given some more thought to this issue, and it occurred to me that in Adobe Flash we have a fantastic real-world test case from which we might learn if version targeting is a viable strategy for a web browser.</p>
<h3>Version targeting in Flash</h3>
<p>Version targeting in Flash works in much the same way as it will in Internet Explorer: each Flash movie contains embedded information telling the Flash Player which version of Flash it was created for, and the Flash Player itself contains multiple rendering engines to handle legacy content.</p>
<p>This approach to backwards compatibility has been a feature of the Flash Player since its earliest incarnations. The latest version, Flash Player 9, supports content produced for FLV (Flash video), SWF9, SWF8, SWF7, SWF6, SWF5, SWF4, SWF3, SWF2, and FutureSplash. That means that Flash content created in 1995 still renders perfectly in 2008. Flash developers can have a great deal of confidence that an application they create today will continue to work in the future without any need to revisit it*.</p>
<p>Why have Adobe worked so hard to ensure the Flash Player is compatible with legacy content? I think the answer lies in the commercial nature of Flash. Because Adobe relies for its livelihood on the continued patronage of website developers, they need to keep that customer base happy. Flash would never have gained traction if developers were forced to rework their legacy websites every time a new Flash Player version is released &#8211; I can&#8217;t imagine anyone paying $700 for software that generates code that breaks every eighteen months!</p>
<h3>Does backwards compatibility hamper progress?</h3>
<p>Let us consider my concerns about version targeting, and see if they have been borne out in Flash: Has backwards compatibility hampered progress in the Flash industry? Has it slowed adoption of the Flash Player? Has it stalled advances in Flash technology? I think the answer to these questions is &#8220;no&#8221;.</p>
<p>One metric we can use to gauge the rate at which advances in Flash are taking place is to look at <a href="http://www.adobe.com/devnet/logged_in/ehuang_flashplayer9.html">Flash Player adoption rates</a>. A fast adoption rate by end users is a sign that users are encountering Flash content targeting the latest Flash version, and are upgrading their player in response. Even before the introduction of an automatic update feature, adoption rates for the Flash Player were very high. From the time a new Player was released, it would achieve 55%-65% market penetration within 6 months. This is a good indication that Flash developers are quick to take advantage of new features in Flash.</p>
<p>Another measure of technical progress is the rate at which new features are added to the Flash Player (as opposed to the Flash authoring tool, where some changes will be merely cosmetic). During the past four releases there have been three complete overhauls of the Flash programming language, the introduction of powerful video functionality, bitmap effects (motion blur, dropshadows, etc) and filters, to name just a few new features. Because version targeting ensures there is no pressing need for Flash developers to upgrade, Adobe needs to continually improve Flash&#8217;s feature set to give its customers a compelling reason to purchase an upgrade license. Rather than stymieing progress, version targeting actually encourages technical advances in Flash.</p>
<h3>A personal perspective</h3>
<p>I worked as a full-time Flash developer for four years, and Flash development still accounts for about half the work I do. Until this week I hadn&#8217;t given much thought to the impact of version targeting in Flash, but on reflection I see that it has compelling benefits for end-users, seasoned developers, and Flash novices alike.</p>
<p>Flash has a very healthy development community keen to push the boundaries of their medium, and even though version targeting enables many developers to work at a lower level, I don&#8217;t see any evidence that this skill gap impedes advances in the field. I myself still publish content targeting Flash Player 8, and am familiarizing myself with the new ActionScript 3 programming language in the meantime. I certainly don&#8217;t feel that I am holding anyone back by learning at my own pace!</p>
<p>I also consider that version targeting goes a long way towards easing the Flash developer&#8217;s workload. If I build a site targeting Flash Player 8, I know without testing that it works in Flash Player 9 too, and vice versa. I know too that I will never need to &#8220;fix&#8221; that site to comply with a future Flash Player release. This forward compatibility is something that I take for granted when I develop a Flash site, and the idea of &#8216;fixing&#8217; my legacy projects every couple of years seems totally absurd. Yet for some reason this &#8220;break and fix&#8221; cycle is considered perfectly normal for HTML websites.</p>
<h3>What&#8217;s good for the goose</h3>
<p>Of course, comparing Flash Player with a web browser is not like comparing apples with apples: Flash and Internet Explorer have very different business models; Flash has no serious competition whereas Internet Explorer is part of a busy browser ecosystem; Adobe is free to introduce new features to Flash as it sees fit whereas Microsoft is beholden to various working groups; the upgrade cycle of Flash is driven by web developers rather than software vendors. What works for Flash may not necessarily work for Internet Explorer.</p>
<p>Yet I believe there are enough similarities to draw a comparison. Flash shows us that under the right conditions version targeting can actually be beneficial for everyone involved in the development, delivery, and consumption of content for the web.</p>
<h3>Footnotes</h3>
<p>* There is only once exception I can think of: new &#8217;sandbox security&#8217; restrictions introduced in Flash Player 7 caused some older Flash applications to break.</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2008/02/08/version-targeting-lessons-from-flash/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Papervision 3D</title>
		<link>http://f6design.com/journal/2007/07/30/papervision-3d/</link>
		<comments>http://f6design.com/journal/2007/07/30/papervision-3d/#comments</comments>
		<pubDate>Mon, 30 Jul 2007 22:41:03 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Toolbox]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/2007/07/30/papervision-3d/</guid>
		<description><![CDATA[If you work with Flash at all, by now you will have heard of Papervision 3D, the open source project that has turned the Flash world on its head by introducing a 3rd dimension. I had a quick play with Papervision 3D a few months ago and found it surprising easy to pick up. It [...]]]></description>
			<content:encoded><![CDATA[<p><img class="contentImg matte" src='http://f6design.com/journal/wp-content/uploads/2007/07/papervision_logo.jpg' alt='Papervision 3D logo' /></p>
<p>If you work with Flash at all, by now you will have heard of <a href="http://www.papervision3d.org/">Papervision 3D</a>, the open source project that has turned the Flash world on its head by introducing a 3rd dimension. I had a quick play with Papervision 3D a few months ago and found it surprising easy to pick up. It is now in <a href="http://blog.papervision3d.org/2007/07/07/papervision3d-public-beta/">public beta</a> so I decided to dust off my old project and rewrite it in Actionscript 3.</p>
<h3>3D image gallery demo</h3>
<p><img class="contentImg matte" src='http://f6design.com/journal/wp-content/uploads/2007/07/3dgallery.jpg' alt='Papervision 3D Gallery' /></p>
<p>Inspired by Antti Kupila&#8217;s stunning <a href="http://www.anttikupila.com/development/flame-3d-music-in-actionscript-3/">3D interface for last.fm</a>, I created a simple gallery of album covers using Papervision 3D. For the reflections of the album covers I have used Pixelfumes&#8217; <a href="http://pixelfumes.blogspot.com/2006/06/actionscript-3-reflection-class-source.html">Reflection class</a>.</p>
<h4>View demo</h4>
<p><a href="http://f6design.com/journal/projects/3dgallery/" target="_blank">View my 3D image gallery</a></p>
<h4>Download source</h4>
<p>If you&#8217;re curious to see how I put this demo together, take a look at my <a href="http://f6design.com/journal/projects/3dgallery/3dgallery.zip">Flash source files</a>.</p>
<h3>Using Papervision 3D</h3>
<p>The biggest challenge for me was porting my code to Actionscript 3, as it was the first time I had written AS3 code. But as far as Papervision 3D itself, it really is a piece of cake to get your head around. The documentation that comes with Papervision 3D is a bit hard to follow, but if you download the zipped version of Papervision 3D from <a href="http://code.google.com/p/papervision3d/">Google Code</a> it contains a bunch of great examples which help to introduce the basic concepts.</p>
<p>The cool thing about Papervision is how it can be adapted to all kinds of 3D applications. My main interest is in the possibilities for creating 3D application interfaces, but people have also created <a href="http://www.rockonflash.com/blog/?p=37">3D games</a>, <a href="http://www.papervision3d.org/">models</a> and <a href="http://www.rhythmoflines.co.uk/">animations</a>. Expect to see a lot more 3D Flash in the next couple of years!</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2007/07/30/papervision-3d/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Safari 3 fixes Flash flicker bug</title>
		<link>http://f6design.com/journal/2007/07/11/safari-3-fixes-flash-flicker-bug/</link>
		<comments>http://f6design.com/journal/2007/07/11/safari-3-fixes-flash-flicker-bug/#comments</comments>
		<pubDate>Wed, 11 Jul 2007 09:41:57 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[News & Reviews]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/2007/07/11/safari-3-fixes-flash-flicker-bug/</guid>
		<description><![CDATA[After a quick play with Safari 3 beta on a Mac, I am happy to report that the infamous Safari Flash &#8220;flicker&#8221; bug has been fixed. If you are a Safari user then I&#8217;m sure you have encountered this bug before &#8211; it occurs when HTML content containing hover effects appears over Flash, such as [...]]]></description>
			<content:encoded><![CDATA[<p>After a quick play with <a href="http://www.apple.com/safari/download/">Safari 3 beta</a> on a Mac, I am happy to report that the infamous Safari <a href="http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&#038;productId=1&#038;postId=1801">Flash &#8220;flicker&#8221; bug</a> has been fixed. If you are a Safari user then I&#8217;m sure you have encountered this bug before &#8211; it occurs when HTML content containing hover effects appears over Flash, such as when a dropdown menu overlaps a Flash movie embedded further down the page.</p>
<p>If you want to see the flicker bug in action, visit the homepage of the <a href="http://www.adobe.com/">Adobe website</a> using Safari 2, and open one of the dropdowns from the main menu. You will notice a brief flicker as you move your mouse over the links overlapping the Flash movie.</p>
<p><a class="imagelink" href='http://www.adobe.com/' title='Adobe dropdown menu'><img class="contentImg matte" src='http://f6design.com/journal/wp-content/uploads/2007/07/adobe_dropdown.jpg' alt='Adobe dropdown menu' /></a></p>
<p>Another long standing quirk that I notice has been fixed in Safari 3 is the <a href="http://www.tjkdesign.com/articles/keyboard_friendly_dropdown_menu/test_case.asp">&#8220;dropdown stays open&#8221; bug</a>. In worst case scenarios this bug would lead to dropdown menus which refuse close without refreshing the page.</p>
<p>As someone who regularly uses both Flash and <a href="http://www.htmldog.com/articles/suckerfish/dropdowns/">Suckerfish</a> dropdown menus, these two bugs have been nagging me for quite some time, and I&#8217;m pleased that Apple has finally kicked them to the curb. The only bad news is that Safari 3 is only available to users of OS X 10.4.9 or higher, so it will be a while before we can kiss Safari 2 goodbye once and for all.</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2007/07/11/safari-3-fixes-flash-flicker-bug/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Will Silverlight really kill Flash?</title>
		<link>http://f6design.com/journal/2007/06/22/will-silverlight-really-kill-flash/</link>
		<comments>http://f6design.com/journal/2007/06/22/will-silverlight-really-kill-flash/#comments</comments>
		<pubDate>Sat, 23 Jun 2007 01:58:41 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[News & Reviews]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/2007/06/22/will-silverlight-really-kill-flash/</guid>
		<description><![CDATA[Silverlight is Microsoft&#8217;s new browser plugin for Rich Internet Applications, and since the unveiling of the latest alpha version it has been dubbed a &#8220;Flash killer&#8221; by many commentators. Silverlight is a Flash competitor to be sure, but a Flash killer? I think that may be overstating the case.
Amongst all the hype about the death [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://f6design.com/journal/wp-content/uploads/2007/06/silverlight_logo.jpg' alt='Silverlight logo' /></p>
<p><a href="http://silverlight.net/">Silverlight</a> is Microsoft&#8217;s new browser plugin for Rich Internet Applications, and since the unveiling of the latest alpha version it has been dubbed a <a href="http://arstechnica.com/news.ars/post/20070501-microsofts-flash-killer-steals-the-show-at-mix07.html">&#8220;Flash killer&#8221;</a> by many commentators. Silverlight is a Flash <em>competitor</em> to be sure, but a Flash <em>killer</em>? I think that may be overstating the case.</p>
<p>Amongst all the hype about the death of Flash I have also found a handful of articles that <a href="http://www.zdnet.com.au/news/software/soa/Lights-out-for-Silverlight/0,130061733,339278334,00.htm">cast doubt</a> on Silverlight&#8217;s chances of success, but on the whole I think they miss the mark somewhat. Two criticisms leveled against Silverlight are its lack of availability on the Linux platform, and potential indifference from end users, neither of which I see as the major challenge to Silverlight adoption.</p>
<p>Let&#8217;s consider the issue of Linux support. For a long time Flash support for Linux was very poor, yet that did little to hinder the adoption of Flash on other platforms. Even if Microsoft themselves don&#8217;t deem it worthwhile porting the Silverlight plugin to Linux, there are already independent developers <a href="http://en.wikipedia.org/wiki/Moonlight_%28runtime%29">working at the task</a>, and it&#8217;s just a matter of time until the OS is catered for.</p>
<p>As for the issue of end user adoption, to my mind what is actually more crucial is Silverlight&#8217;s acceptance by developers and designers. It is not a question of users seeing no need to switch <em>away</em> from Flash, but rather website developers feeling compelled to make the switch <em>to</em> Silverlight. If developers take Silverlight to heart, get excited about the platform and promote it in the web community, its adoption rate could be very fast. If that happens, end users will have no choice but to follow. After being welcomed to three or four websites with the greeting &#8220;you need to download the Silverlight plugin to view this site&#8221;, only the most stubborn user would still resist. On the other hand, if web designers and developers fail to become excited about the potential of Silverlight it will gain only a negligible market share, and end users will remain blithely unaware of its existence.</p>
<p>In my opinion this is the real challenge Silverlight faces, capturing the hearts of web designers and developers, especially those who currently work with Flash.</p>
<p>Microsoft certainly have their work cut out for them. If Silverlight is going to &#8220;kill&#8221; Flash, it stands to reason that the current field of Flash developers will need to abandon Flash and defect to Silverlight. Flash has a 10 year history and a robust developer community who will be unlikely to jump ship unless Silverlight proves to be a vastly superior product.</p>
<p>The other scenario in which Silverlight might &#8220;kill&#8221; Flash is if the flood of Silverlight applications is so enormous that Flash&#8217;s current market share seems insignificant by comparison. For this to happen, Silverlight will need to appeal to developers who are intrigued by RIAs, but don&#8217;t see Flash as a compelling proposition. However I expect Microsoft will face stiff opposition on this front too. After all, whichever way you slice it Silverlight still relies on a proprietary browser plugin, which is precisely what turns so many web designers off Flash to begin with. Silverlight does offer a &#8220;language neutral&#8221; scripting interface, as opposed to Flash&#8217;s reliance on Actionscript, which ought to ease the transition for newbies, but whether this is sufficient to eclipse its single vendor affiliation remains to be seen.</p>
<p>Regardless of whether Silverlight proves to be a runaway success, the next few years are bound to be a very interesting time for RIAs! </p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2007/06/22/will-silverlight-really-kill-flash/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>swfIR &#8211; a new twist for web images</title>
		<link>http://f6design.com/journal/2007/02/27/swfir-a-new-twist-for-web-images/</link>
		<comments>http://f6design.com/journal/2007/02/27/swfir-a-new-twist-for-web-images/#comments</comments>
		<pubDate>Tue, 27 Feb 2007 21:48:42 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/2007/02/27/swfir-a-new-twist-for-web-images/</guid>
		<description><![CDATA[You&#8217;re probably already familiar with sIFR, a technique that replaces boring HTML text with spiffy Flash text, without messing up your HTML markup. In the same vein comes swfIR, which uses Flash to perform a host of desirable modifications to images: borders, rounded corners, rotation and drop shadows.

In the past it would have taken a [...]]]></description>
			<content:encoded><![CDATA[<p>You&#8217;re probably already familiar with <a href="http://www.mikeindustries.com/sifr/">sIFR</a>, a technique that replaces boring HTML text with spiffy Flash text, without messing up your HTML markup. In the same vein comes <a href="http://www.swfir.com/">swfIR</a>, which uses Flash to perform a host of desirable modifications to images: borders, rounded corners, rotation and drop shadows.</p>
<p><img class="contentImg" src="http://f6design.com/journal/wp-content/uploads/2007/02/swfir_example.jpg" alt="swfIR example" /></p>
<p>In the past it would have taken a lot of repetitive Photoshop work to apply these sort of visual effects to images, and god forbid you ever redesigned the site and had to remove the effects from every single image. swfIR answers that problem by applying effects in automated, non-destructive fashion.</p>
<p>swfIR is the brainchild of <a href="http://www.danielmall.com/">Dan Mall</a> from <a href="http://www.happycog.com/">Happy Cog</a>, and is designed with progressive enhancement and standards compliance in mind. Each &#8217;swfIRized&#8217; image must be wrapped in a span tag and have an additional css class applied to it, but otherwise the original markup remains untouched. JavaScript is then used to replace the HTML image with a Flash movie into which the original image is loaded, and visual effects are applied.</p>
<p>The technique is not without its drawbacks however. One thing I don&#8217;t like about it is that the image replacement does not occur until the window.onload event is triggered, which means that the unstyled image must load into the page before it is replaced. I wonder if the replacement should be triggered using a JavaScript event that is fired when the <a href="http://www.thefutureoftheweb.com/blog/2006/6/adddomloadevent">DOM has loaded</a>, not the entire page. Apparently there are small Camino/Mac rendering bugs too. I understand that the swfIR developers are working on these issues, so it will be interesting to see what they come up with.</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2007/02/27/swfir-a-new-twist-for-web-images/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Flash + Web 2.0 = yourminis</title>
		<link>http://f6design.com/journal/2007/02/25/flash-web-20-yourminis/</link>
		<comments>http://f6design.com/journal/2007/02/25/flash-web-20-yourminis/#comments</comments>
		<pubDate>Sun, 25 Feb 2007 21:33:54 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[News & Reviews]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/2007/02/25/flash-web-20-yourminis/</guid>
		<description><![CDATA[yourminis is Goowy&#8217;s foray into the &#8216;customizable homepage&#8217; space, a veritable smoragasbord of RSS feeds and widgets. The service is very similar to Netvibes, but with one big difference &#8211; yourminis is a Flash application.

I&#8217;ve always thought it a shame that Flash hasn&#8217;t played a bigger part in the emergence of Web 2.0. AJAX is [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.yourminis.com/start">yourminis</a> is <a href="http://www.goowy.com/">Goowy&#8217;s</a> foray into the &#8216;customizable homepage&#8217; space, a veritable smoragasbord of RSS feeds and widgets. The service is very similar to <a href="http://www.netvibes.com/">Netvibes</a>, but with one big difference &#8211; yourminis is a Flash application.</p>
<p><img class="contentImg" src="http://f6design.com/journal/wp-content/uploads/2007/02/yourminis_screenshot.jpg" alt="yourminis screenshot" /></p>
<p>I&#8217;ve always thought it a shame that Flash hasn&#8217;t played a bigger part in the emergence of Web 2.0. AJAX is the technology that&#8217;s grabbed the headlines, yet Flash is purpose built to create cross-platform Rich Internet Applications (RIA&#8217;s). Sure, some of the big Web 2.0 player such as YouTube and Google use Flash Player to deliver their videos, and Yahoo Maps is a Flash app, but yourminis is far and away the most comprehensive Flash RIA I&#8217;ve seen. I was quite amazed to see how many public APIs Flash can successfully hook into: YouTube, ebay, Amazon, Yahoo Maps, Flickr, Digg, delicious, Gmail, iTunes &#8211; even Dilbert!</p>
<p>yourminis has a slick &#8216;aero&#8217; style interface, which can be customized with the user&#8217;s own &#8216;desktop wallpaper&#8217;. This is bound to make it appealing to a young user base who might be turned off by the corporate look of NetVibes. In fact it is actually possible to embed yourminis widgets in myspace profiles &#8211; or on any other webpage for that matter.</p>
<p>The one thing that&#8217;s noticeably absent at this stage is a yourminis API. Despite the swag of official widgets already on offer, this is going to slow down its evolution. Supposedly the API will be released in the very near future, and it will be fascinating to see what Flash developers do with it.</p>
<p>Lately I&#8217;ve been underwhelmed with Flash sites, but yourminis is a fantastic example of Flash the way it ought to be done. I hope that we see more sites like it in the future.</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2007/02/25/flash-web-20-yourminis/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Flash&#8217;s Weaknesses: Then and Now</title>
		<link>http://f6design.com/journal/2007/02/10/flashs-weaknesses-then-and-now/</link>
		<comments>http://f6design.com/journal/2007/02/10/flashs-weaknesses-then-and-now/#comments</comments>
		<pubDate>Sun, 11 Feb 2007 07:37:34 +0000</pubDate>
		<dc:creator>Jonathan</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://f6design.com/journal/2007/02/10/flashs-weaknesses-then-and-now/</guid>
		<description><![CDATA[Back in 2003 Mark Angeletti wrote an article for Sitepoint titled Flash Vs. CSS/HTML: Which Will You Choose?, in which he examined the strengths and weaknesses of Flash. Mark closed his article by suggesting that in the future Macromedia had the opportunity to fix Flash&#8217;s weaknesses, and would likely do so. I thought it would [...]]]></description>
			<content:encoded><![CDATA[<p>Back in 2003 Mark Angeletti wrote an article for Sitepoint titled <a href="http://www.sitepoint.com/article/csshtml-which-will-choose"><em>Flash Vs. CSS/HTML: Which Will You Choose?</em></a>, in which he examined the strengths and weaknesses of Flash. Mark closed his article by suggesting that in the future Macromedia had the opportunity to fix Flash&#8217;s weaknesses, and would likely do so. I thought it would be interesting to look at how much progress has been made in the past four years, and see if those weaknesses have indeed been addressed, or if there is still work to be done.</p>
<h3>Plug-In Required</h3>
<h4>Then:</h4>
<blockquote><p>Flash movies still require a separate plug-in installation in order to run in most browsers. Many companies do not allow their employees to install applications on their computers, which automatically denies some Flash site owners access to a portion of their potential userbase.</p></blockquote>
<h4>Now:</h4>
<p>While of course it is still true that Flash movies still rely on a proprietary plugin, some advances have been made in this area. In August 2005 Macromedia announced a new detection feature called <a href="http://blog.deconcept.com/swfobject/#expressinstall">&#8220;Express Install&#8221;</a> which allows the Flash Player to be upgraded from directly within a Flash movie. If a browser restart is required after the upgrade, the user will be automatically returned to the Flash website after the process is complete. No longer is there any need to pack your visitors off to the Macromedia/Adobe website to upgrade their Flash plugin, and hope that they bother to come back to your site afterwards. Macromedia also introduced an &#8216;auto update&#8217; feature, which allows the Flash Player to &#8216;call home&#8217; and check for software updates.</p>
<h3>Video Woes</h3>
<h4>Then:</h4>
<blockquote><p>Video compression and playback in Flash MX is not of the same quality as some of the players developed exclusively for this purpose, such as QuickTime. For example, Flash video does not take advantage of enhanced video drivers for optimized playback at enlarged sizes.</p></blockquote>
<h4>Now:</h4>
<p>As we know, Flash MX 2004 totally <a href="http://www.digital-web.com/articles/the_rise_of_flash_video_part_1/">changed the ball game</a>, and video is now arguably the aspect of Flash that makes it such a compelling proposition. Flash currently <em>owns</em> video on the web. Fullstop.</p>
<h3>Search Engine Issues</h3>
<h4>Then:</h4>
<blockquote><p>Typical Web search engines (or spiders) cannot index content within Flash movies. If you create a 100% Flash-based Website, you may want to provide some text or HTML, displayed or hidden, on your Web pages if you want your content to be indexed by search engines. When I say hidden, I mean that the content should be available via a no script tag or other means that is search engine acceptable. This is perhaps the biggest shortcoming of Flash, and yes &#8212; it’s a biggie.</p></blockquote>
<h4>Now:</h4>
<p>I&#8217;m sorry to say that nothing much has changed in the last 4 years. Flash is still woefully unfriendly to search engines, and the burden falls on Flash developers to devise cunning workarounds to expose the internal content of Flash movies to Google and co. Fortunately, the increasing seperation of content and presentation within Flash applications means that the task of extracting and rendering content in search engine readable format (ie: HTML) is easier than it once was.</p>
<h3>Lack of Screen Reader Support</h3>
<h4>Then:</h4>
<blockquote><p>Although the integration of MSAA compatibility into Flash Player 6 is a big step forward, and has been heralded by accessibility experts, many kinds of screen readers do not support MSAA of the Flash Player yet.</p></blockquote>
<h4>Now:</h4>
<p>To my knowledge, Flash 8 didn&#8217;t make any great advances in the area of accessibility. The situation described in 2003 still applies in 2007: to take advantage of Flash&#8217;s accessibility features a user must be using Windows, Internet Explorer, and either the Window-Eyes or JAWS screen reader. So no accessibility for Macintosh or Linux users, or anyone who happens to prefer Firefox.</p>
<h3>Print Problems</h3>
<h4>Then:</h4>
<blockquote><p>If your site is based around delivering text-based information to the viewer, then don’t distract or delay them from getting what they want with unnecessary animations. Printing and selecting text in Flash movies is often not as simple (or familiar) to users as that on HTML sites.</p></blockquote>
<h4>Now:</h4>
<p>Provided the Flash developer has made a textfield selectable, it is possible to copy text to the clipboard. In Internet Explorer and Safari this can be done using the crtl/apple+c and ctrl/apple+v keyboard shortcuts. In Firefox the user must right click on the textfield, and choose &#8216;copy&#8217; or &#8216;paste&#8217; from the contextual menu that appears. As far as printing goes, some advances have been made, specifically the introduction of the <a href="http://www.actionscript.org/resources/articles/206/1/The-PrintJob-class/Page1.html"><code>PrintJob</code> class</a> in Flash MX 2004. The <code>PrintJob</code> class allows the creation of pages formatted for printing, which are then spooled to the user&#8217;s printer. Unfortunately a &#8216;print this page&#8217; button is still required within the Flash movie, which seems old-school when compared to the way CSS print stylesheets are invisibly integrated into HTML sites, but it&#8217;s better than nothing.</p>
<h3>Conclusion</h3>
<p>While big steps have been made in certain areas (video, printing, plugin upgrades), search engine visibility and accessibility still elude Flash. I would like to think there will one day be a &#8216;magic&#8217; solution to the issue of search engine visibility, but I don&#8217;t hold much hope. What makes Flash powerful is the almost limitless approaches developers and designers can take to presenting content, and of course this is also what makes it so unfriendly to search engines. Without a standardized method of presenting content, I don&#8217;t see how search engines have any hope of making sense of the internal complexities of a Flash movie. I guess only time will tell whether this shortcoming can be surmounted!</p>
<p><strong>Update 13 February 2007:</strong> One of my readers, Aaron Bassett, raised the issue of Adobe&#8217;s <a href="http://www.adobe.com/licensing/developer/search/faq/">Flash Search Engine SDK</a>, and the fact that Google is capable of spidering and indexing Flash movies. Google was already <a href="http://searchenginewatch.com/showPage.html?page=2161851">spidering Flash movie in 2003</a> at the time Mark&#8217;s original article was written, though he obviously thought that it was doing an inadequate job, and I would maintain that is still the case. If you want to read more about how Google indexes Flash sites, read Aaron and my comments below.</p>
]]></content:encoded>
			<wfw:commentRss>http://f6design.com/journal/2007/02/10/flashs-weaknesses-then-and-now/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
