<?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>dispatchEvent()™ &#187; Flash</title>
	<atom:link href="http://dispatchevent.org/category/flash/feed/" rel="self" type="application/rss+xml" />
	<link>http://dispatchevent.org</link>
	<description>Collective thoughts on the Flash Platform, iOS, Unity, and any other technology we use.</description>
	<lastBuildDate>Mon, 23 Apr 2012 19:07:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Ludum Dare Tiny World: 1 hour down, 14 ideas</title>
		<link>http://dispatchevent.org/mims/ludum-dare-tiny-world-1-hour-down-14-ideas/</link>
		<comments>http://dispatchevent.org/mims/ludum-dare-tiny-world-1-hour-down-14-ideas/#comments</comments>
		<pubDate>Sat, 21 Apr 2012 02:18:17 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Videogames]]></category>
		<category><![CDATA[ludum dare]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=1100</guid>
		<description><![CDATA[The theme for LD23 is Tiny World. After handling an unrelated work call I got cracking on ideas. I think a lot of these are pretty good! Platformer with impasses that require the player to shrink down to sneak past. Medical War game Tower Defense game with pixel sized monsters that creep up (unnoticed) but [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://dispatchevent.org/wp-content/uploads/2012/04/ideas.jpg"><img class="alignnone size-medium wp-image-1103" title="ideas" src="http://dispatchevent.org/wp-content/uploads/2012/04/ideas-e1334974375571-224x300.jpg" alt="" width="224" height="300" /></a></p>
<p>The theme for LD23 is Tiny World. After handling an unrelated work call I got cracking on ideas. I think a lot of these are pretty good!</p>
<ul>
<li>Platformer with impasses that require the player to shrink down to sneak past.</li>
<li>Medical War game</li>
<li>Tower Defense game with pixel sized monsters that creep up (unnoticed) but grow suddenly when they reach growth pads near the player.</li>
<li>Manage resources on a tiny planet with too many people (2)</li>
<li>a creature lives in your nose mining boogers + fighting allergens</li>
<li>Position Planets in space so they don&#8217;t crash into the sun</li>
<li>Grow planets in a lab setting + release them into the wild</li>
<li>Insect cowboys on a bug ranch</li>
<li>Your in a cell and you can only interact with things that pass by your window</li>
<li>ON a small planet, every bit of acid rain or toxic waste erodes your planet a little. Stop it before the core is exposed!</li>
<li>A platformer where whenever you get hit you shrink a little (everything else grows). The monsters get more detailed and it takes you longer to reach the end (but you never die, just get impossibly small)</li>
<li>Some kind of puzzle or obstacle course using close up photography for graphics. Macaroni Tetris?</li>
<li>City building game where you can only use pieces of molecules that fit together</li>
<li>A game where you destroy particles (ants?) one or a few at a time. Try to get a large score in the hundreds or thousands (1 pt per particle). Violent screams for sfx of course.</li>
</ul>
<div>I&#8217;ll be voting on these using the criteria:</div>
<div>
<ul>
<li>Easy / Simple to make</li>
<li>Innovative</li>
<li>Fun</li>
<li>Kelly&#8217;s (wife&#8217;s) Pick</li>
<li>Mims&#8217; Pick (worth 1000 points)</li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/ludum-dare-tiny-world-1-hour-down-14-ideas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A message you would never see in a Flash site</title>
		<link>http://dispatchevent.org/mims/a-message-you-would-never-see-in-a-flash-site/</link>
		<comments>http://dispatchevent.org/mims/a-message-you-would-never-see-in-a-flash-site/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 19:16:58 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=907</guid>
		<description><![CDATA[Here&#8217;s a message you would never see on a Flash site. To be fair though, I would be just as frustrated to see a message that says &#8220;sorry, iOS users, we can&#8217;t show you this page.&#8221; I guess my point is that JS isn&#8217;t without it&#8217;s drawbacks and sites should always degrade gracefully. Found on [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a message you would never see on a Flash site.</p>
<p><a href="http://dispatchevent.org/wp-content/uploads/2012/01/js-fail.png"><img src="http://dispatchevent.org/wp-content/uploads/2012/01/js-fail.png" alt="" title="js fail" width="447" height="304" class="alignnone size-full wp-image-908" /></a><br />
To be fair though, I would be just as frustrated to see a message that says &#8220;sorry, iOS users, we can&#8217;t show you this page.&#8221; I guess my point is that JS isn&#8217;t without it&#8217;s drawbacks and sites should always degrade gracefully. </p>
<p>Found on the otherwise impressive site: <a href="http://flashtml5.com/">http://flashtml5.com/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/a-message-you-would-never-see-in-a-flash-site/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Don&#8217;t Panic.</title>
		<link>http://dispatchevent.org/mims/dont-panic/</link>
		<comments>http://dispatchevent.org/mims/dont-panic/#comments</comments>
		<pubDate>Sat, 12 Nov 2011 22:45:38 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[IRL]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=900</guid>
		<description><![CDATA[Dear Flash &#38; Flex Interactive Developers, keep calm and carry on. The news from Adobe seems like a big deal now but I&#8217;m not sure that it&#8217;s soon enough to judge what the long term impact will be. In my opinion, it&#8217;s not yet time to panic (is it ever?) and in this post, I&#8217;ll [...]]]></description>
			<content:encoded><![CDATA[<p>Dear <strike>Flash &amp; Flex</strike> Interactive Developers, keep calm and carry on. The news from Adobe seems like a big deal now but I&#8217;m not sure that it&#8217;s soon enough to judge what the long term impact will be. In my opinion, it&#8217;s not yet time to panic (is it ever?) and in this post, I&#8217;ll talk about why.  </p>
<p>First, if you don&#8217;t know what I&#8217;m talking about, check out the news. I think the best explanation comes from <a href="http://www.mikechambers.com/blog/2011/11/11/clarifications-on-flash-player-for-mobile-browsers-the-flash-platform-and-the-future-of-flash/">Mike Chambers&#8217; Blog</a> and a corresponding post on the <a href="http://blogs.adobe.com/flex/2011/11/your-questions-about-flex.html">Flex Team&#8217;s Blog</a>. </p>
<div id="attachment_901" class="wp-caption alignnone" style="width: 310px"><a href="http://dispatchevent.org/wp-content/uploads/2011/11/cute_bunny.jpeg"><img src="http://dispatchevent.org/wp-content/uploads/2011/11/cute_bunny-300x207.jpg" alt="" title="cute_bunny" width="300" height="207" class="size-medium wp-image-901" /></a><p class="wp-caption-text">Don&#039;t panic! Take a deep breath and look at this cute bunny</p></div>
<p><span id="more-900"></span></p>
<h2>Not much has changed with the Flash Platform</h2>
<p>If you read closely, not that much has really changed. The problem is perception. Let&#8217;s review what is going away and why it&#8217;s not as crazy as it might sound. </p>
<h3>Mobile Flash Player</h3>
<p>Adobe is discontinuing work on the mobile Flash Player. I don&#8217;t know the numbers of people building Flash content for Android but I suspect it&#8217;s not incredibly high. I would also wager that even Air on Android/iOS is still far from critical mass, but Adobe say they will continue to support this. The desktop Flash Player will stay the same and for the foreseeable future continue to surpass HTML5 in features and cross-platform functionality. </p>
<p>Another way of saying this is that the Flash Platform remains the best choice for the tasks that it was already the best choice for. Mobile was never one of these and some applications, like video players, may have lost that title to HTML5. But in cross-platform, rich-media, deeply interactive experiences on the web, Flash is still ahead of the competition.  </p>
<h3>Flex is still here</h3>
<p>Adobe is discontinuing its support for the Flex SDK. However, it will stay around as <a href="http://spoon.as">an open source project</a> (it was already open source.) It may never get better than it is already, which so far has been good enough to become the platform of choice for many Flex developers.  </p>
<p>Flex cannot get any worse than the next version 4.6, which you were probably looking forward to until today. And you know what, that&#8217;s okay. We don&#8217;t need to be so obsessed with the next thing that we change careers because the <em>next</em> next thing has an uncertain future. I happen to know of some projects that are still using Flex 3 and will probably never upgrade. Why? The user doesn&#8217;t know the difference between <code>mx</code> and <code>spark</code> skins. </p>
<p>It may also get better after being untethered from Adobe and in hands of the Flex Community. In other words, we&#8217;re in charge now. The <a href="http://www.spoon.as/core-values/">Spoon</a> community, who is inheriting the Flex project, already have plans to make a version 5.x.</p>
<h2>Fear itself</h2>
<p>The real issue now is the way the public will preceive this news. This announcement has sapped the confidence of a lot of people, customers and developers alike. In my opinion, it&#8217;s not the time for us to decry Adobe as evil jerks. It is a time for us as experts to try to help our clients, companies and the public to make sense of the news. It&#8217;s time to remember that Flash is just a tool in the arsenal of an interactive developer. In fact, Flash&#8217;s popularity, due to <a href="http://www.apple.com/hotnews/thoughts-on-flash/">largely political reasons</a>, has already been on the decline for a while now. But, it will certainly be dead if the Flash users themselves don&#8217;t believe in it. </p>
<p>The next time a client wants an awesome, interactive video, 3D puzzle game, website thing I will still recommend Flash. I don&#8217;t want to have him tell me &#8220;it has to be HTML5&#8243; because he read online that &#8220;Flash is dead.&#8221; In fact, I think it&#8217;s our job to talk about its strengths and its weaknesses in a totally objective way. We should all dwell in the middle ground between Adobe zealotry and jumping on the next bandwagon. </p>
<h3>Your next job</h3>
<p>I feel hopeful that the shit will not hit the fan, at least not immediately. That being said, I am always an advocate of looking at other technologies and keeping those abstract coding skills honed. Good developers are in a prime position to port our skills to whatever platform comes next, and those skills are almost always in demand. Even HTML5 (JavaScript) apps share a very similar language with AS3 (really AS1). I was able to pick up JQuery and build my first HTML5 project in a matter of a day or two. </p>
<p>As Mike Chamber&#8217;s writes:<br />
<block>&#8220;I think it is a HUGE opportunity for the Flash community. As browser support for richer content and motion graphics improves, so will demand for designers and developers who have experience working with motion graphics on the web. The Flash community has been doing this type of work on the web for over a decade and is uniquely qualified to fill demand for similar work in the browser. I donâ€™t think it is a coincidence that some of the most cutting edge motion graphics work being done in HTML5 today is being done by developers and agencies with extensive experience in Flash (such as Grant Skinner, Branden Hall, Big Spaceship, etcâ€¦).&#8221;</block></p>
<p>Joel Hooks adds some great notes on this in <a href="http://thoughts.joelhooks.com/post/12680058831/you-are-not-your-platform-here-are-some-things-you#/">his blog post</a>. I&#8217;d like to also add <a href="http://haxe.org/">HAXE</a>, Java, C# and <a href="http://www.dartlang.org/">Dart</a> to the list of languages that you should be able to pick up with little effort. </p>
<h3>The Community</h3>
<p>In LA, our local Flex group shut down abruptly after this news was released. I personally feel this was very hasty indeed and wrote a letter about it upon which this blog post was based. I see that a lot of people are really pissed and their identities are in question. If you&#8217;re in this position, I would suggest instead of jumping ship, why not continue to talk about how this will impact our jobs and what skills we can port to other platforms. If there really are people out there who are going to lose their jobs over this, and I think it&#8217;s too soon to say, we should still be able to support each other as a community. </p>
<p>Even with all this positivity, I still have to agree with <a href="http://twitter.com/#!/neurofuzzy/status/135442238607081472">@neurofuzzy</a> &#8220;Anyone who has &#8216;Flash&#8217; in your job title, scratch it out and write &#8216;Interactive.&#8217;&#8221; It&#8217;s something we should have all done a long time ago because I believe we are more than just Flash dudes. </p>
<p><em>I&#8217;d love to hear your thoughts on all of this. Please leave comments. It will be very interesting to look back on this post in 6 months and see whether I was right to keep a cool head or being terribly naÃ¯ve.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/dont-panic/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Enabling the Flash Debug Player on Chrome</title>
		<link>http://dispatchevent.org/mims/enabling-the-flash-debug-player-on-chrome/</link>
		<comments>http://dispatchevent.org/mims/enabling-the-flash-debug-player-on-chrome/#comments</comments>
		<pubDate>Tue, 18 Oct 2011 09:05:27 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Tips, Tricks, and Hacks]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[debugger]]></category>
		<category><![CDATA[plug-in]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=892</guid>
		<description><![CDATA[After having this happen to me for the third time, I felt that it was time for me to repost this information. The problem: You&#8217;re positive that you just upgraded to the Debug version of the Flash Player, when you go to test it in Chrome it says that you don&#8217;t have the debug version [...]]]></description>
			<content:encoded><![CDATA[<p>After having this happen to me for the third time, I felt that it was time for me to repost this information. </p>
<h3>The problem:</h3>
<p>You&#8217;re positive that you just upgraded to the Debug version of the Flash Player, when you <a href="http://kb2.adobe.com/cps/155/tn_15507.html">go to test it</a> in Chrome it says that you don&#8217;t have the debug version even though it works fine in Firefox, Safari, Opera, and who cares if it&#8217;s working in IE because you would never use IE right?</p>
<h3>The solution:</h3>
<p>You can reinstall the player until you&#8217;re blue in the face but it won&#8217;t help. Why? Chrome manages it&#8217;s own version copy of the player so it can provide automatic updates. You&#8217;ll want to disable this version and use your default one. </p>
<p>Open up your Preferences in Chrome. Go to <i>Preferences > Under the Hood > Privacy > Content Settings&#8230; > Plug-ins > Disable Individual Plugins</i> (Or just paste <a href="chrome://plugins/">chrome://plugins/</a> into the address bar). </p>
<p>You should see a plug in called Flash. If you click the Details+ button in the top right, you&#8217;ll see more info about the plug-in files themselves. You&#8217;ll probably see two versions here; one will point to the plug-in installed by Chrome </p>
<p>e.g. <i>/Applications/Google Chrome.app/Contents/Versions/15.0.874.92/Google Chrome Framework.framework/Internet Plug-Ins/Flash Player Plugin for Chrome.plugin</i></p>
<p>The other points to the system folder</p>
<p>e.g. <i>/Library/Internet Plug-Ins/Flash Player.plugin</i> if you&#8217;re on a Mac</p>
<p><strong>Disable the one in the Google Chrome folder</strong> and you should be good to go!</p>
<p>This information was originally provided to me via <a href="http://www.aaronwest.net/blog/index.cfm/2010/4/27/Configuring-Chrome-with-Flash-Player-Debugger">Arron West&#8217;s blog</a> which has more pictures than this post if you still need help. </p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/enabling-the-flash-debug-player-on-chrome/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Flash is NOT coming to iOS!</title>
		<link>http://dispatchevent.org/mims/flash-is-not-coming-to-ios/</link>
		<comments>http://dispatchevent.org/mims/flash-is-not-coming-to-ios/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 13:16:18 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=889</guid>
		<description><![CDATA[While we&#8217;re still hot on the subject of Flash on iOS, I would like to address the other recent news regarding Flash Media Server 4.5 and clear up some of the not-entirely-accurate statements being made. First, let&#8217;s get one thing clear&#8230; Flash is NOT coming to iOSÂ per se. To quote theÂ press release from Adobe: &#8220;With [...]]]></description>
			<content:encoded><![CDATA[<p>While we&#8217;re still hot on the subject of <a href="http://dispatchevent.org/mims/air-on-ios-vindicated-by-machinarium/">Flash on iOS</a>, I would like to address the <a href="http://blog.appboy.com/2011/09/adobe-now-supported-on-ios-devices-no-apple-did-not-fold-adobe-did/">other</a> <a href="http://uk.gear.ign.com/articles/119/1193856p1.html#.Tm9UZBxFjo0.twitter">recent</a> <a href="http://mobility.cbronline.com/news/adobe-releases-flash-player-for-apple-products-report-130911">news</a> regarding Flash Media Server 4.5 and clear up some of the not-entirely-accurate statements being made.</p>
<p>First, let&#8217;s get one thing clear&#8230; <span style="color: #000000;"><strong>Flash is NOT coming to iOS</strong></span>Â per se. To quote theÂ <a href="http://eon.businesswire.com/news/eon/20110907007466/en/Adobe/IBC/Flash-Media-Server">press release from Adobe</a>:</p>
<blockquote><p>&#8220;With Flash Media Server 4.5, media publishers can extend their already broad mobile reach via Flash-enabled devices, with the new ability to deliver <strong>video content</strong> to Appleâ€™sÂ iPadÂ andÂ iPhoneÂ devices, enabling them to reach the widest audience possible.&#8221;</p></blockquote>
<p>Unless I&#8217;m misreading this, it seems that this is only going to allow <em>Flash Video</em> to be viewed on iOS and <em>only</em> when streamed from the new Flash Media Server. This will be achieved by serving the video in an iOS compatible format so there&#8217;s no new player or plugin involved at all. Flash content in general (games, interactive sites, &amp;c) will still bring up that familiar <a style="display: inline;" href="http://dispatchevent.org/wp-content/uploads/2011/09/nullplugin.jpeg"><br />
<img class="alignnone" title="nullplugin" src="http://dispatchevent.org/wp-content/uploads/2011/09/nullplugin.jpeg" alt="" width="32" height="32" /></a>.</p>
<p>This is only a little bit exciting (unless you host a lot of Flash Video). What the end user will experience is potentially more video content available on their iOS device, perhaps from sites that they couldn&#8217;t get it from before, and they may notice a performance improvement. It&#8217;s a far cry from the headlines stating things like &#8220;Adobe releases Flash player for Apple products&#8221; or &#8220;Adobe Flash coming to iOS&#8221;. Still, it&#8217;s a (small) step in the right direction.</p>
<p>Frustratingly, most of the articles I&#8217;ve seen are tinged with insinuations that this is some sort of surrender, for example, &#8220;<a href="http://blog.appboy.com/2011/09/adobe-now-supported-on-ios-devices-no-apple-did-not-fold-adobe-did/">Apple did not fold, Adobe did</a>.&#8221; Really? Are we still acting like these two companies are having a little schoolyard rivalry? Nobody folded or cried <a href="http://www.fiercecontentmanagement.com/story/adobe-develops-way-play-flash-apple-ios-devices/2011-09-10">&#8220;Uncle&#8221;</a>. A company just found a solution to a technology problem. As I said in my last post, this sort of talk creates an artificial sense of certain technologies being inherently &#8220;good&#8221; or &#8220;bad&#8221;. It misinforms the general public and turns the choice of platform for a project into an emotional or political battle.</p>
<p>On the other hand, as much as I want people to get the story straight, this is more good news for Flash developers. If the general consensus is that Flash will run on iOS then our clients will perceive it as less &#8220;bad&#8221; and more &#8220;good&#8221;. So I guess this is bad reporting of so-so news that will make very good PR for Adobe.</p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/flash-is-not-coming-to-ios/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Air on iOS vindicated by Machinarium</title>
		<link>http://dispatchevent.org/mims/air-on-ios-vindicated-by-machinarium/</link>
		<comments>http://dispatchevent.org/mims/air-on-ios-vindicated-by-machinarium/#comments</comments>
		<pubDate>Mon, 12 Sep 2011 13:45:22 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[iOS]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=886</guid>
		<description><![CDATA[If you haven&#8217;t heard, Machinarium has recently become a top selling iPad app in the iTunes store, and it was created using FlashBuilder 4.5 and Air for iOS. For now, let&#8217;s forget that it&#8217;s been a big success on multiple platforms including Steam for PC and Mac, well-recognized as a superlative indie game, and included [...]]]></description>
			<content:encoded><![CDATA[<p>If you haven&#8217;t heard, <a href="http://thenextweb.com/apple/2011/09/09/the-best-selling-ipad-app-on-the-app-store-was-created-with-adobe-flash/?awesm=tnw.to_1AmIf">Machinarium has recently become a top selling iPad app</a> in the iTunes store, and it was created using FlashBuilder 4.5 and Air for iOS. For now, let&#8217;s forget that it&#8217;s been a big success on multiple platforms including Steam for PC and Mac, well-recognized as a superlative indie game, and included in the <a href="http://www.humblebundle.com/">Humble Indie Bundle</a>; this game coming out on iPad is actually a really big deal.</p>
<p><a href="http://dispatchevent.org/wp-content/uploads/2011/09/p_600_480_0CF9E2CD-23A4-4F2C-92EF-E5CD430D8AEF.jpeg"><img class="alignnone size-full wp-image-364" src="http://dispatchevent.org/wp-content/uploads/2011/09/p_600_480_0CF9E2CD-23A4-4F2C-92EF-E5CD430D8AEF.jpeg" alt="" width="240" height="300" /></a></p>
<h3>Why?</h3>
<p>I have always felt that it is our duty as technology experts to help our clients chose the best platforms for their products. And sometimes the best platform is the one that lets the developers do their work the fastest. Flash has always been great at adding a lot of character, subtlety, and interactive flair much faster than other platforms.</p>
<p>Unfortunately, due to recent high-profile skirmishes between Apple and Adobe, most clients currently think that &#8220;<a href="http://www.apple.com/hotnews/thoughts-on-flash/">Flash is Bad.</a>&#8221; They don&#8217;t understand that Job&#8217;s argument is full of half-truths and non-truths and most probably don&#8217;t realize that Flash code can now be run on an iDevice and more importantly sold for $$$. While Flash certainly ins&#8217;t the best in every situation, it&#8217;s actually a fantastic choice for a lot of applications and the programmers who have been using it for a long time who have honed their skills as interactive developers can add a lot intrinsically to their work. To say that it is &#8220;Bad&#8221; is to ignore much of the bigger picture.</p>
<p>Having a solid example to point to makes the case for using Air for iOS so much easier. And despite our cries, clients don&#8217;t really care about technical reasons&#8230; they DO care about top-selling apps that look beautiful! So next time you&#8217;re faced with a client who&#8217;s using some overhyped article from 2010 about Flash not performing well on mobile, you now have one more weapon in your arsenal. The more tools we have to deliver great experiences for our clients, the more everyone wins.</p>
<p>Also, it&#8217;s a pretty good game!</p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/air-on-ios-vindicated-by-machinarium/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>I finally got with git(hub)</title>
		<link>http://dispatchevent.org/mims/i-finally-got-with-github/</link>
		<comments>http://dispatchevent.org/mims/i-finally-got-with-github/#comments</comments>
		<pubDate>Fri, 04 Mar 2011 18:58:31 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[abstract]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[repository]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=874</guid>
		<description><![CDATA[It&#8217;s probably been more than a year that people have been telling me to start using github. While, I&#8217;ve certainly followed a few cool projects on there, and I&#8217;ve wrestled to get git working on Dreamhost, and I&#8217;ve even done some command line work with the repository, I haven&#8217;t yet set up a new public [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://github.com"><img alt="" src="https://github.com/images/modules/header/logov3-hover.png" title="gitHub Logo" class="alignnone" width="100" height="45" /></a><br />
It&#8217;s probably been more than a year that people have been telling me to start using <a href="http://github.com">github</a>. While, I&#8217;ve certainly followed a few <a href="https://github.com/robertpenner/as3-signals">cool projects</a> on there, and I&#8217;ve wrestled to get <a href="http://craigjolicoeur.com/blog/hosting-git-repositories-on-dreamhost">git working on Dreamhost</a>, and I&#8217;ve even done some command line work with the repository, I haven&#8217;t yet set up a new public repository&#8230; until today. I just put up a mini-library for doing Abstract-like classes and methods in AS3 (previously written about <a href="http://dispatchevent.org/mims/abstract-classes-in-as3/">on this blog</a>) called simply enough, <a href="https://github.com/mimshwright/AbstractAS3/">AbstractAS3</a>.<br />
So please feel free to take a look. This time, instead of commenting on how you would improve the code, you can just fork it and do it yourself! Enjoy.</p>
<p>PS. I&#8217;m hoping with the next version release of KitchenSync to move it from google code to github (UPDATE: This is done! <a href="https://github.com/mimshwright/KitchenSync">KS on Github</a>) to encourage more collaboration.</p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/i-finally-got-with-github/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>All about Flash Versions</title>
		<link>http://dispatchevent.org/mims/all-about-flash-versions/</link>
		<comments>http://dispatchevent.org/mims/all-about-flash-versions/#comments</comments>
		<pubDate>Sun, 13 Feb 2011 02:57:03 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[link]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[senocular]]></category>
		<category><![CDATA[versions]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=873</guid>
		<description><![CDATA[Here is a really great article by Senocular about the different versions of the Flash Player, authoring tool, ActionScript, Flex, SDK, compiler, etc. The whole thing has gotten so complex that we really need something like this to keep track. http://www.senocular.com/flash/tutorials/versions/]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.senocular.com/flash/tutorials/versions/"><img src="http://dispatchevent.org/wp-content/uploads/2011/02/VERSIONS-300x184.png" alt="" title="VERSIONS" width="300" height="184" class="alignnone size-medium wp-image-876" /></a></p>
<p>Here is a <a href="http://www.senocular.com/flash/tutorials/versions/">really great article by Senocular</a> about the different versions of the Flash Player, authoring tool, ActionScript, Flex, SDK, compiler, etc. The whole thing has gotten so complex that we really need something like this to keep track.<br />
<a href="http://www.senocular.com/flash/tutorials/versions/">http://www.senocular.com/flash/tutorials/versions/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/all-about-flash-versions/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The New AS3 Bible</title>
		<link>http://dispatchevent.org/roger/the-new-as3-bible/</link>
		<comments>http://dispatchevent.org/roger/the-new-as3-bible/#comments</comments>
		<pubDate>Sat, 17 Apr 2010 08:41:50 +0000</pubDate>
		<dc:creator>Roger Braunstein</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=852</guid>
		<description><![CDATA[Huge news, everyone! The long-awaited (by my editors) fully-updated, fully-revised, fully-correct, fully-awesome second edition of the ActionScript 3.0 Bible is finally here, after a year of hard work. Now, I don&#8217;t have a copy yet, but apparently some of my reviewers just got their copies, and I can&#8217;t wait to see what they have to [...]]]></description>
			<content:encoded><![CDATA[<p>Huge news, everyone! The long-awaited (by my editors) fully-updated, fully-revised, fully-correct, fully-awesome second edition of the <i>ActionScript 3.0 Bible</i> is finally here, after a year of hard work. Now, I don&#8217;t have a copy yet, but apparently some of my reviewers just <a href="http://yfrog.com/jqj6nj">got their copies</a>, and I can&#8217;t wait to see what they have to say about it. More, more, more copies should be hitting shelves now or real-soon-now.</p>
<div style="float:right; text-align:center; margin-left: 16px;">
<a href="http://www.amazon.com/gp/product/0470525231?ie=UTF8&#038;tag=partlyhumanco-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0470525231"><br />
<img src="http://www.actionscriptbible.com/images/cover.jpg" width="100" height="126" alt="The dang book"/><br/><br/><img src="http://www.actionscriptbible.com/images/amazon-buynow.gif"/><br />
</a><img src="http://www.assoc-amazon.com/e/ir?t=partlyhumanco-20&#038;l=as2&#038;o=1&#038;a=0470525231" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />
</div>
<p>I&#8217;ve oh-so-hastily put up a rather revolting home for the book right here at <a href="http://www.actionscriptbible.com/">http://www.actionscriptbible.com/</a>. There are a few small parts missing right now, and it&#8217;s ugly, so bear with me.</p>
<p>In any case, whether you loved or hated the last edition of the Bible, I really urge you to at least give this edition a try. I&#8217;ve completely overhauled it, rewriting hundreds of pages, and adding onto it so that it&#8217;s bleeding-edge fresh for Flash Player 10.1. How fresh is this ish? This fresh, BOOM:</p>
<ul>
<li>Vectors: COVERED</li>
<li>3d: YES</li>
<li>Pixel Bender: YOU BET</li>
<li>Flash Text Engine: FER SURE</li>
<li>Text Layout Framework: IN THERE</li>
<li>Multitouch: SO MANY TOUCHES</li>
<li>Globalization: MAIS OUI!</li>
<li>Accelerometer: HELL YAH</li>
<li>Color Correction: SURE!</li>
</ul>
<p>What else? I&#8217;ve toiled to give you the best way to play with example code ever! And by toiled I mean &#8220;stood on MASH&#8217;s back!&#8221; Because every example in the book (save a few that need HTML features or looser security) uses the amazing <a href="http://wonderfl.net/">Wonderfl</a> service! First off, it&#8217;s never been easier to run example code. This is what an example looks like:</p>
<p><img src="http://dispatchevent.org/wp-content/uploads/2010/04/page-example.png" alt="" title="page-example" width="400" height="145" class="aligncenter size-full wp-image-854" /></p>
<p>See, every example has a URL right next to it. This, Example 36-5, links right to <a href="http://actionscriptbible.com/ch36/ex5" target="_blank">http://actionscriptbible.com/ch36/ex5</a>. So if you have the book open, just type in the URL and boom! You&#8217;re looking at the code, the example, you can download it, edit it, and best of all participate with the whole world in forking the code! No FTP to hit, no ZIP to download (though that&#8217;s still provided if you want), no software to setup&#8230; I&#8217;m really happy about this part of the book.</p>
<p>Get this; I&#8217;ve even put in a UMLesque table of contents, so you can find the chapter for the right class in a glance.<br />
<a href="http://dispatchevent.org/wp-content/uploads/2010/04/classes-withtitle.png"><img src="http://dispatchevent.org/wp-content/uploads/2010/04/classes-withtitle-300x169.png" alt="" title="Diagram of Classes" width="300" height="169" class="aligncenter size-medium wp-image-853" /></a></p>
<p>I know most of you readers are advanced AS3 developers and don&#8217;t need an introductory text. But if you need to get up to date with the latest Flash Player 10.1 features, or you want a good reference; if you&#8217;re coming from JavaScript or PHP or C# or Java; I shamelessly and unsurprisingly recommend my own book. <a href="http://www.amazon.com/gp/product/0470525231?ie=UTF8&#038;tag=partlyhumanco-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0470525231">Get it now at Amazon.</a><img src="http://www.assoc-amazon.com/e/ir?t=partlyhumanco-20&#038;l=as2&#038;o=1&#038;a=0470525231" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /></p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/roger/the-new-as3-bible/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Graph of Flash on Tap 2009</title>
		<link>http://dispatchevent.org/mims/graph-of-flash-on-tap-2009/</link>
		<comments>http://dispatchevent.org/mims/graph-of-flash-on-tap-2009/#comments</comments>
		<pubDate>Thu, 28 May 2009 20:17:11 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[beer]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[flashontap]]></category>
		<category><![CDATA[fot09]]></category>
		<category><![CDATA[funny]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[powerpoint]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/mims/graph-of-flash-on-tap-2009/</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://dispatchevent.org/wp-content/uploads/2009/05/flashontapgraph.png"><img src="http://dispatchevent.org/wp-content/uploads/2009/05/flashontapgraph.png" alt="flashontapgraph" title="flashontapgraph" class="alignnone size-full wp-image-720" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/graph-of-flash-on-tap-2009/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The state of the Flash IDE and the FlashBuilder name change via Blogging</title>
		<link>http://dispatchevent.org/mims/flashidethought/</link>
		<comments>http://dispatchevent.org/mims/flashidethought/#comments</comments>
		<pubDate>Thu, 28 May 2009 13:43:15 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Discussion]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=711</guid>
		<description><![CDATA[I just finished reading a great post by Kevin Suttle which is not short, but a must-read nonetheless. Go ahead and read it, I&#8217;ll wait. &#8230; You didn&#8217;t read it, did you. Well, it&#8217;s basically a very well-formed rant lamenting the sad state of the Flash program (not the platform). There are so many things [...]]]></description>
			<content:encoded><![CDATA[<p>I just finished reading <a href="http://kevinsuttle.com/?p=59">a great post by Kevin Suttle</a> which is not short, but a must-read nonetheless. Go ahead and read it, I&#8217;ll wait.</p>
<p>&#8230;</p>
<p>You didn&#8217;t read it, did you. Well, it&#8217;s basically a very well-formed rant lamenting the sad state of the Flash program (not the platform). There are so many things that needed to be said here. I have been aware of the sorry state of the Flash IDE ever since CS3 came out but never took the time to construct such a compelling article as Kevin has.</p>
<p>ActionScript has matured from a simple frame-based script to a full-fledged language but the Flash IDE remains a glorified animation program (I am reluctant to even call it an &#8216;IDE&#8217;). Most of us who are serious developers are happy to switch to more powerful programming environment such as FlexBuilder, however there are thousands of users who learned programming on Flash who shouldn&#8217;t have to switch just because Adobe decided that we&#8217;re all either designers or developers. There should be a sense of responsibility to the huge workforce of artisans and engineers who rely on this product to make a living.</p>
<p>On that note, I am very pleased that they decided to change the name from FlexBuilder to FlashBuilder. I can&#8217;t tell you how often I&#8217;ve been in a scenario like this&#8230;</p>
<blockquote><p>Flash Guy: &#8220;Import statements are a pain in the ass.&#8221;</p>
<p>Me: &#8220;I know. But using FlexBuilder makes it a lot easier because the imports are automated.&#8221;</p>
<p>Flash Guy: &#8220;But I&#8217;m not working on a Flex project.&#8221;</p>
<p>Me: *Hand to forehead*</p></blockquote>
<p>The name FlashBuilder helps to support the idea of the Flash Platform which encompasses many technologies. <a href="http://blog.dannypatterson.com/?p=205">Danny Patterson has makes some good points on the subject</a> on his blog as well. Most interestingly, the suggestion to change the name of Flash Professional CS4 to Flash Designer CS4.</p>
<p>I think Adobe opened the flood gates to these types of discussions wheen they decided to treat designers and developers as separate camps but I&#8217;m glad they&#8217;re rethinking their approach.</p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/flashidethought/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Iron Flash Competition LA 2009</title>
		<link>http://dispatchevent.org/mims/iron-flash-09/</link>
		<comments>http://dispatchevent.org/mims/iron-flash-09/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 18:41:51 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[IRL]]></category>
		<category><![CDATA[Videogames]]></category>
		<category><![CDATA[competition]]></category>
		<category><![CDATA[ironflash]]></category>
		<category><![CDATA[LA]]></category>
		<category><![CDATA[lafug]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=679</guid>
		<description><![CDATA[Last night, I participated in the Iron Flash competition at the LA Flash Users Group in Venice Beach. As in Iron Chef (my favourite television show), the participants are all skilled Flash users pitted against one another with the goal of creating something interesting within a strict time limit and featuring a common &#8220;ingredient&#8221;. In [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-680" title="ironchef" src="http://dispatchevent.org/wp-content/uploads/2009/04/ironchef.jpg" alt="ironchef" width="186" height="195" /></p>
<p>Last night, I participated in the Iron Flash competition at the <a href="http://groups.adobe.com/groups/c27a8adb00/summary">LA Flash Users Group</a> in Venice Beach. As in <a href="http://www.youtube.com/watch?v=u2e9nTeIwFk">Iron Chef</a> (my favourite television show), the participants are all skilled Flash users pitted against one another with the goal of creating something interesting within a strict time limit and featuring a common &#8220;ingredient&#8221;. In this case, the ingredient was a set of pictures of &#8216;pucks&#8217;, specifically, R. Blank&#8217;s dog Puck, Puck the faun, Puck from the Real World, and a hockey Puck. We had 3 hours to make something out of any or all of the pictures. My fellow competitors were Jon Ruppel of <a href="http://hookyinteractive.com">Hooky Interactive</a> and <a href="http://www.benmcmaster.com">Ben McMaster</a> (also at Hooky) who both made some awesome stuff in such a short time. UPDATE: All of the entries have been posted on <a href="http://richmediainstitute.com/ironflasher3">the LAFlash site</a>.</p>
<p>It was a great experience, and not just because OMG I WON!!!</p>
<p>My entry was a video game featuring Puck the dog. I was considering other physics based games involving the hockey puck and the dog somehow. Then I thought of using the dog instead of the hockey puck and somehow that reminded me of the sport beloved in Canada, Curling! The scoring system is a little wonky but if I may say so, it&#8217;s not bad for 3 hours work. Here are screenshots (click to link to the game) along with the source code:</p>
<p><a href="http://dispatchevent.org/wp-content/uploads/2009/04/puckcurling.zip">Download the source code</a></p>
<p><a href="http://mimswright.com/work/puckcurling/"><img class="alignnone size-full wp-image-685" title="puckcurling-title" src="http://dispatchevent.org/wp-content/uploads/2009/04/puckcurling-title.jpg" alt="puckcurling-title" width="487" height="189" /></a></p>
<p><a href="http://mimswright.com/work/puckcurling/"><img class="alignnone size-full wp-image-684" title="puckcurling-gameplay" src="http://dispatchevent.org/wp-content/uploads/2009/04/puckcurling-gameplay.jpg" alt="puckcurling-gameplay" width="491" height="191" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/iron-flash-09/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Fast Intro to Flash</title>
		<link>http://dispatchevent.org/calebjohnston/fast-intro-to-flash/</link>
		<comments>http://dispatchevent.org/calebjohnston/fast-intro-to-flash/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 04:07:42 +0000</pubDate>
		<dc:creator>Caleb Johnston</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Meta]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=620</guid>
		<description><![CDATA[There is plenty of documentation, tutorials and explanation of Flash on the internet, blogs and books. However, it&#8217;s hard for me to find a good, concise article that covers Flash well. I&#8217;ve been exposing Flash 9 to a friend of mine recently and I&#8217;ve decided that a concise explanation is something I should write. This [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Arial;">There is plenty of documentation, tutorials and explanation of Flash on the internet, blogs and books. However, it&#8217;s hard for me to find a good, concise article that covers Flash well. I&#8217;ve been exposing Flash 9 to a friend of mine recently and I&#8217;ve decided that a concise explanation is something I should write. This post will be brief, high level and will cover Flash as a platform and not the Flash IDE. This article is also intended for those with previous exposure to technical concepts such as virtual machines and compilers.<br style="font-family: Arial;" /> </span><span id="more-620"></span><br style="font-family: Arial;" /><strong><span style="font-family: Arial;">Overview</span></strong><br />
<span style="font-family: Arial;">Flash is a platform for building and deploying interactive multimedia on the internet. The term Flash is ambiguous because it can be used to describe the runtime environment (Flash Player) or one of two IDEs targeting the player (Adobe Flash and Adobe Flex Builder). Flash currently uses an ECMA-based scripting language known as Actionscript for authoring. This same language is used across all of Adobe&#8217;s platform -which includes Adobe AIR, Adobe Flex, and Adobe Flash. Actionscript uses a <em>strong, static, safe</em> type system which makes it&#8217;s syntax more similar to Java than Javascript.</span></p>
<p><strong><span style="font-family: Arial;">Runtime Environment</span></strong></p>
<p><span style="font-family: Arial;"><strong>SWF Files</strong></span><br style="font-family: Arial;" /><span style="font-family: Arial;">Swf files are compressed, multipurpose </span><span style="font-family: Arial;">packages designed to contain the following data: raster and vector graphics, video, audio, text, fonts, animation, and actionscript code. Swfs can be loaded at runtime whenever necessary and can use both static and dynamic linking based upon the compiler settings. The runtime environment uses security sandboxes for loaded swf files. The security settings primarily limit the extent of filesystem access and cross-domain access that swf files can use. Adobe has <a id="jj8r" title="provided the swf file format spec" href="http://www.adobe.com/devnet/swf/">provided the swf file format spec</a> and has recently provided the <a id="k0w6" title="FLV video format spec" href="http://www.adobe.com/devnet/flv/">FLV video format spec</a> and <a id="drt9" title="has declared that they will provide the RTMP specs" href="http://www.adobe.com/aboutadobe/pressroom/pressreleases/200901/012009RTMP.html">has declared that they will provide the RTMP spec</a> as well.</span><br />
<span style="font-family: Arial;"><strong><br />
Flash Player &amp; AVM2</strong><br />
The Flash Player runtime is a very light-weight, virtual machine and handles system calls. The Flash Player includes both AVM1 (AS1, AS2, for Flash versions 1-8) and AVM2  (AS3 for Flash 9,10+) which processes compiled <a id="obh5" title="Adobe Byte Code" href="http://www.anotherbigidea.com/javaswf/avm2/AVM2Instructions.html">Adobe Bytecode</a> (ABC). The term AVM stands for &#8220;ActionScript Virtual Machine&#8221;<strong>*</strong>. </span><span style="font-family: Arial;">The Flash Player uses a Deferred Reference Counting (DRC) mechanism combined with a conservative mark/sweep garbage collector.</span><span style="font-family: Arial;"> The Adobe VM uses both JIT compiling and code interpretation and may benefit from compile-time bytecode optimizations based upon compiler input parameters. AS3 computational performance is generally closer to Java than Javascript [<a id="zbpr" title="AS3 performance vs Java vs Javascript" href="http://www.oddhammer.com/actionscriptperformance/set4/">source</a>]. The player also maintains a variable framerate that reflects the time consumed for each frame update [<a id="w455" title="source" href="http://www.onflex.org/ted/2005/07/flash-player-mental-model-elastic.php">source</a>]. Each frame update consists of multiple stages that include internal player processing, rendering, and author script processing. The program framerate is the principle metric reflecting application performance.<br />
<span style="font-family: Arial;"><br style="font-family: Arial;" /></span><span style="font-size: small;"><strong><span style="font-family: Arial;">Development Environment</span></strong></span></span></p>
<p><strong><span style="font-family: Arial;">Actionscript API</span></strong><br style="font-family: Arial;" /> <span style="font-family: Arial;">The Actionscript API is divided up amongst the Adobe AIR environment, the Flex environment, and the Flash environment and the Flash Player</span><span style="font-family: Arial;">.</span><span style="font-family: Arial;"> The source for all the packages are divided up amongst <a id="lc9l" title="swc files" href="http://livedocs.adobe.com/flex/3/html/building_overview_5.html">swc files</a>. Swc files are pre-compiled catalogs of classes and assets. They are similar to swf files but they are used for compile-time dependency resolution. Furthermore, the native swc&#8217;s predominantly contain code and not visual assets. An overview of the Actionscript packages is kept up to date in the <a id="y1w4" title="Adobe Actionscript 3 package summary" href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/package-summary.html">Adobe Live Docs</a>.</span></p>
<p><span style="font-family: Arial;"><strong>The Flash IDE</strong><br />
The Flash IDE was designed for designers, artists and animators. So, it is equiped with a layer system which reflects the stage display list and a hierarchical timeline which reflects the temporal nature of the runtime. The objects placed on the stage are represented by the timeline and can be &#8220;tweened&#8221; (using runtime interpolated 2D geometric transformations or custom shape morphs). The same timeline is also used for object creation and destruction. All stage instances are confined to a small set of native data types including: MovieClips, Sprites, Shapes, <span style="font-family: Arial;">TextFields, </span><span style="font-family: Arial;">Videos, and Bitmaps. The IDE also has a library that contains source objects for all stage instances and even instances that aren&#8217;t used on the stage. Flash projects often have several build targets (compiled swf files) that use parts of the project codebase. After Macromedia was purchased by Adobe, the Flash authoring environment has been updated to provide much better interoperability with the Adobe Creative Suite.</span></span></p>
<p><span style="font-family: Arial;"><strong>Adobe Flex Builder</strong><br />
Flex Builder is an Eclipse-based Actionscript IDE for writing and compiling swf files. Flex Builder is primarily designed to build &#8220;Flex&#8221; projects which can be written in an interface tagging language known as MXML. MXML is a declarative XML langauge used to define interface elements in a project. MXML files provide the &#8220;view&#8221; in the MVC software design pattern. Flex Builder also provides plenty of useful features like code completion, syntax formatting, active debugging, memory profiling, and project building that expose errors and warnings during development time. Because the Flex framework is not bundled with the Flash Player, Flex projects must statically link to all swc assets specific to Flex which amounts to greater than 500kb. This is very unnatractive for most users, thus Adobe has provided <a id="ilsr" title="means by which the download can be significantly decreased" href="http://onflash.org/ted/2008/01/flex-3-framework-caching.php">means by which the download can be significantly decreased</a>. Flex Builder is also used to deploy applications for the <a id="kwwz" title="Adobe AIR platform" href="http://en.wikipedia.org/wiki/Adobe_Integrated_Runtime">Adobe AIR platform</a>. Adobe AIR is a desktop runtime that combines <a id="ffsj" title="webkit" href="http://webkit.org/">webkit</a> with the AVM2 portion of the Flash Player. AIR can be likened to a closed sourceÂ <a id="k10e" title="Java SE" href="http://en.wikipedia.org/wiki/Java_SE">Java SE</a> runtime but provides a smaller learning curve and greater accessibility than what comes with the Java ecosystem. </span></p>
<p><span style="font-family: Arial;"><strong>Compiler</strong><br />
Since Adobe has launched the Flex platform they have provided free access to their Flex and Actionscript compiler and SDK. They have also provided open source projects under the <a id="mz0t" title="Mozilla public license" href="http://en.wikipedia.org/wiki/Mozilla_Public_License">Mozilla public license</a>. The compiler (<a id="n5hv" title="Adobe Flex 3 Help - Compilers" href="http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_13.html">mxmlc</a>) provides an impressive amount of flexibility and customization for swf compiling. It can be configured with command line options or a <a id="xwm0" title="configuration XML file" href="http://livedocs.adobe.com/flex/3/html/compilers_11.html#134938">configuration XML file</a>.</span></p>
<p><span style="font-family: Arial;"><em><strong>* </strong>correction 09-12-2009, I had previously stated that the term AVM meant &#8220;Adobe Virtual Machine&#8221;, this is a mixup. It actually means &#8220;ActionScript Virtual Machine&#8221;. Thanks dbam.</em></span></p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/calebjohnston/fast-intro-to-flash/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Using Abstract Classes in the Flash CS3/4 Library</title>
		<link>http://dispatchevent.org/mims/abstract-classes-in-the-library/</link>
		<comments>http://dispatchevent.org/mims/abstract-classes-in-the-library/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 21:38:25 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Greatest Hits]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tips, Tricks, and Hacks]]></category>
		<category><![CDATA[cs3]]></category>
		<category><![CDATA[cs4]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[symbol]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=654</guid>
		<description><![CDATA[Here&#8217;s a little trick that can help you save lots of time that might otherwise be spent creating multiple specialized classes in your Flash project. This trick makes use of the Base Class field in a symbol&#8217;s actionscript properties. (For info on creating pseudo-abstract classes in AS3, go here) By the way, this tip may [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a little trick that can help you save lots of time that might otherwise be spent creating multiple specialized classes in your Flash project. This trick makes use of the Base Class field in a symbol&#8217;s actionscript properties. (For info on creating pseudo-abstract classes in AS3, <a href="http://dispatchevent.org/mims/abstract-classes-in-as3/">go here</a>)</p>
<p>By the way, this tip may be common knowledge to Flash users. I use FlexBuilder almost exclusively these days but recently have had to dip back into the twisted world of the Flash IDE so please refrain from leaving any comments about how I shouldn&#8217;t use the timeline.</p>
<h3>The Problem</h3>
<p>Say you have several different buttons for a site that each look of behave slightly differently but all share the same underlying functionality. In this example, I&#8217;ll be using a crude set of video controls. I want each of these different controls to respond to rollovers by showing the label beneath the icon.</p>
<p><img class="alignnone size-full wp-image-656" title="picture-1" src="http://dispatchevent.org/wp-content/uploads/2009/03/picture-1.png" alt="picture-1" /></p>
<p>EachÂ  control has different icons and text so they&#8217;re going to need to be kept in different symbols. One solution might be to try to cram all the icons into one master symbol and change between the different icon frames using code. But that&#8217;s sloppy and unnecessary. Another solution might be to create 4 different classes that each implement the functionality or each extend a class with common functionality. This is a much better solution, but requires you to create 4 AS files for what functionally is just 1 type. You cannot use the same class for multiple symbols in your library though. Fortunately, Flash offers another solution that may be a bit less intuitive.</p>
<h3>The Solution</h3>
<p>If you needed to create the same sort of control components purely using code (using Flex for example), your first step would likely be to create some sort of base class that implements the common functionality of the 4 controls. Here&#8217;s an example of a base class for these 4 controls.</p>
<pre lang="actionscript3">package {

	import flash.text.*;
	import flash.display.*;
	import flash.events.*;

	public class AbstractVideoControl extends MovieClip {
		// you'll need to create this text field on the timeline
		// and set the instance name to "label"
		public var label:TextField;

		public function AbstractVideoControl() {
			label.visible = false;
			addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
			addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
		}

		protected function onMouseOver(event:MouseEvent):void {
			label.visible = true;
		}

		protected function onMouseOut(event:MouseEvent):void {
			label.visible = false;
		}
	}
}</pre>
<p>Note: In many non-ActionScript languages, there is a construct called an &#8220;<em>abstract type</em>&#8221; whichÂ  is simply a base class that cannot be instantiated on its own, only extended. In Flash, proper abstract types don&#8217;t exist, but we can consider a class Abstract if it <em>shouldn&#8217;t</em> be instantiated without being subclassed. More on that <a href="http://en.wikipedia.org/wiki/Abstract_type">at Wikipedia</a>.</p>
<p>Next, let&#8217;s make our controls extend this class. For each symbol, check the Export for ActionScript box in the symbol properties. Since Flash can automatically generate classes for symbols when an .as file doesn&#8217;t exist, the only thing you&#8217;ll need to fill in is the Base Class field (later, you can create a class for PlayButton if you need one). Make sure you use the fully qualified name if you&#8217;re using packages.</p>
<p><img class="alignnone size-full wp-image-661" title="picture-3" src="http://dispatchevent.org/wp-content/uploads/2009/03/picture-3.png" alt="picture-3" width="562" height="602" /></p>
<h3>Moar</h3>
<p>I found this technique was very useful for when I wanted to animate TextFields on the timeline. Timeline animations, as you probably are aware, only work with MovieClip symbols. That means that even simple animations on text require the text to be contained in a symbol. I created an AbstractTextFieldWrapper class so that I could easily work with animated type without having to create new classes every time the format changes.</p>
<pre lang="actionscript3">package {
	import flash.display.MovieClip;
	import flash.text.TextField;

	/**
	 * This class allows you to create an animated text field on the
	 * timeline and still set the text of the field without creating a new
	 * class for each text field that does this.
	 *
	 * @use In the flash library, create a new movieclip symbol containing the
	 * 		textField. Make sure you set the instance name for the text field to
	 * 		"textField". Make the base class for the symbol
	 * 		"AbstractTextFieldWrapper".
	 * 		In another class, use the type AbstractTextFieldWrapper insatead of
	 * 		TextField for your text field variable.
	 */
	public class AbstractTextFieldWrapper extends MovieClip
	{
		public var textField:TextField;
		public function set text(text:String):void {
			textField.text = text;
		}
		public function get text():String {
			return textField.text;
		}
	}
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/abstract-classes-in-the-library/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>New Prius Site is Hot! (Also, it uses KitchenSync)</title>
		<link>http://dispatchevent.org/mims/new-prius-site-is-hot-also-it-uses-kitchensync/</link>
		<comments>http://dispatchevent.org/mims/new-prius-site-is-hot-also-it-uses-kitchensync/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 19:54:59 +0000</pubDate>
		<dc:creator>Mims H Wright</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Site-seeing]]></category>

		<guid isPermaLink="false">http://dispatchevent.org/?p=580</guid>
		<description><![CDATA[The new Prius site by Saatchi &#38; Saatchi and Bad Assembly looks awesome, has great sound design and feels really smooth. Oh, the car looks pretty hot too. I caught word that KitchenSync was used for some of the animation! *Blush*]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.toyota.com/vehicles/minisite/prius/"><img class="alignnone" src="http://surfstation.com:7500/dev1/0/000/001/0000001280.fid" alt="" width="450" height="228" /></a><br />
The <a href="http://www.toyota.com/vehicles/minisite/prius/">new Prius site</a> by <a href="http://saatchila.com/">Saatchi &amp; Saatchi</a> and <a href="http://badassembly.com/">Bad Assembly</a> looks awesome, has great sound design and feels really smooth. Oh, the car looks pretty hot too.</p>
<p>I caught word that <a href="http://kitchensynclib.googlecode.com/">KitchenSync</a> was used for some of the animation! <span style="color: #ff00ff;">*Blush*</span></p>
]]></content:encoded>
			<wfw:commentRss>http://dispatchevent.org/mims/new-prius-site-is-hot-also-it-uses-kitchensync/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

