<?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>UnitZeroOne &#187; Random Thoughts</title>
	<atom:link href="http://unitzeroone.com/blog/category/random-thoughts/feed/" rel="self" type="application/rss+xml" />
	<link>http://unitzeroone.com/blog</link>
	<description>by Ralph Hauwert, Creative Developer, Consultant</description>
	<lastBuildDate>Mon, 21 Nov 2011 09:31:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>The Particle Sessions : Prologue</title>
		<link>http://unitzeroone.com/blog/2011/01/14/the-particle-sessions-prologue/</link>
		<comments>http://unitzeroone.com/blog/2011/01/14/the-particle-sessions-prologue/#comments</comments>
		<pubDate>Fri, 14 Jan 2011 21:24:13 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Particles]]></category>
		<category><![CDATA[Random Thoughts]]></category>
		<category><![CDATA[2d]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[alchemy]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[particles]]></category>
		<category><![CDATA[pixelbender]]></category>
		<category><![CDATA[video particles]]></category>

		<guid isPermaLink="false">http://unitzeroone.com/blog/?p=431</guid>
		<description><![CDATA[Last week I reveiled my plan to revive this blog and start getting regular posts on here again. It had been cooking for a while and I had decided that the first thing to do to revive the blog was &#8230; <a href="http://unitzeroone.com/blog/2011/01/14/the-particle-sessions-prologue/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a title="Pi : Math vs Numerology" href="http://unitzeroone.com/labs/particleVideo/#YldowmD89ng" target="_blank"><img class="alignnone size-full wp-image-432" title="max" src="http://unitzeroone.com/blog/wp-content/uploads/max.jpg" alt="We've got the gun Max!" width="620" height="273" /></a></p>
<p>Last week I reveiled <a href="http://unitzeroone.com/blog/2011/01/06/reviving-this-blog/" target="_blank">my plan</a> to revive this blog and start getting regular posts on here again. It had been cooking for a while and I had decided that the first thing to do to revive the blog was to start with a long overdue post about particles, mainly sparked because of the interest in the Bloom Particles (<a href="http://unitzeroone.com/labs/bloom/" target="_blank">mirror without preloader</a>) I did for the unfortunately cancelled <a href="http://www.letitbloom.com/" target="_blank">Bloom conference</a>. The other part was that I really wanted to get it out and get particles out of my system for a while. I had promised to post about this for quite some time, but with the blog not being used, it was a daunting task. It turns out I find it much harder to make blogposts then little experiments. This post is about that. I apologize up front for it being a bit of a personal story before anything else. It is however, the start of &#8230;</p>
<p><span id="more-431"></span></p>
<p><strong>The Particle Sessions</strong></p>
<p>I decided I wanted to take and expand and continue on what I explained in my Skunkworks talk (video of that talk <a href="http://vimeo.com/14935297">at FFK here</a>), where I used this example to show how simple these systems work in ActionScript and how something can create seemingly visual complexity with fairly simple and atomic code. But since this is not a 1 hour long session, but a blog, I can dive much deeper in the technical parts. Never truly 100% happy about the code in the Bloom piece, I had since then already done a couple of new things which particles. I slightly elaborated on that  and my other distractions in my session titled <a href="http://www.flashonthebeach.com/sessions/index.php?pageid=2188" target="_blank">&#8220;The Discontinuity&#8221; at Flash on the Beach</a> in a combination of Cinder and Flash Experiments (experiments one and two). That session was taped and will hopefully find it&#8217;s way online as a video soon, in the mean time <a href="http://vimeo.com/18618285" target="_blank">watch some of the fantastic speakers here</a>. I wanted to include the newer things in that talk. I&#8217;ll be posting multiple things here, and bundle them under the name, the Particles Sessions.</p>
<p><strong>The Discontinuity</strong></p>
<p>As I stated in my previous post, I&#8217;ve decided to take it easy with the conferences this year. The title I chose for that Flash on the Beach talk, was indeed pre-concieved. Taking a bit off from that would free up some time for the blog and experiments too; I have been thinking about what I want to communicate through this blog and how it can substitute what I normally talk about at conferences. I had decided that for the first particle post, I wanted not only to use another simple example of particles to explain particles, but to explain many facets of Flash, ActionScript, Pixelbender, Alchemy and creative development in general.</p>
<p><strong>The Distractions</strong></p>
<p>So I set out writing a new version of the fairly simple particles for the blog. In a fractal-like twist, what happened is that I for the 4th time I started exploring particles by writing code for this &#8220;tutorial&#8221; and then getting entirely distracted with just playing around with it. It&#8217;s the creative part about development I truly love. Play, learn and play. The side effect of toying around with ideas is that mostly you fail and every now and then find something interesting and new to play with. But in both instances you learn valuable lessons. This time this play lead me to something similar, yet new. What I failed at was the original goal of getting the blog post finally done.</p>
<p><strong>Quasimondo : &#8221; Have you tried it with video yet ? &#8220;</strong></p>
<p>After writing the new example code, I felt it was missing something and I showed it to <a href="http://www.quasimondo.com/">Mario Klingemann</a>, who while discussing it said : &#8220;Have you tried it with video yet ?&#8221;. The code wasn&#8217;t well suited for that, and I didn&#8217;t think much of it, but as a quick distraction and experiment, I started hacking the nicely clean particle code to do some video. It didn&#8217;t work well in the first instance, but after a little bit more of code cluttering and quick hacks it worked nicely. Then I added in some of <a href="http://www.bit-101.com/blog/" target="_blank">Keith Peters&#8217;s</a> <a href="http://www.minimalcomps.com/" target="_blank">minimalcomps</a> way to quick (they&#8217;re so easy to put in, I didn&#8217;t really do it nicely) and put it online and <a href="http://twitter.com/unitzeroone" target="_blank">tweeted it</a>. I then started looking at my blog and found it was broken. Who thought digital things would break out of lack of maintenance ?</p>
<p><strong>Even more distractions</strong></p>
<p>What happened with the particles experiment somewhat surprised me. I didn&#8217;t see it as a particular different thing of what I normally play around with and execution could have been way better. But the particle video experiment quickly got some strangely high amounts of hits. Most of them from Twitter, StumbleUpon, Reddit and Hackernews. At this point, my website has trafficked near 1Tb worth of data of that experiment, and amassed a for this site truly staggering amount of visitors. I started checking the comments out.</p>
<p>With very positive reviews, one thing stood out; I had preselected 3 videos and put those in, to show the effect on different video&#8217;s. But based on the feedback of above mentioned blogs, people wanted to be able to select their own videos. In my mind I had a small part of the following Saturday aside to actually write the particles post, but instead used that time to add in quick, hacked and <a href="http://unitzeroone.com/labs/particleVideo/#oHg5SJYRHA0">experimental support for YouTube</a>. It&#8217;s been working pretty stable. But again I failed at finishing the particles post.</p>
<p><strong>The Fail, not again.</strong></p>
<p>So after mutilating the code yet more I had now running a bandwidth eating experiment on my website, but no blogpost, the goal which started this to begin with. The normal work week hit and I do also enjoy working on <a href="http://www.aviary.com/" target="_blank">Aviary</a>, which has priority. I ended up using pieces of time normally wasted on <a href="http://www.callofduty.com/" target="_blank">CoD:BO</a> to write snippets of code and chunks of explanatory text. It became apparent one post wouldn&#8217;t be enough alone, and I&#8217;ve decided to make it into a series. This is to be thorough and an actual reference towards the technologies and ideas used, rather then quickly touching upon something. The prologue alone had almost become to long for one post and had been going to a couple of revisions.</p>
<p>Yesterday I had a quick peek at compiling a WebM decoder for Flash using Alchemy and the opensource <a href="http://www.webmproject.org/code/" target="_blank">libvpx</a>, which contains the VP8 codec. Although it does work in the form of a very early form of their examples running using swfbridge, it&#8217;s quite slow at this point in time. I was tempted to not post anything about the particles again and play with it more this night. But I decided I didn&#8217;t want to fail again, so particles first. WebM can wait.</p>
<p>Next Monday you can expect the first post surrounding the technical details of a simple but fast particle system in Flash. I&#8217;ll start out explaining the bloom particles, it&#8217;s working and it&#8217;s flaws. And then we&#8217;ll start looking at (yet again) combining Alchemy and Pixelbender to make a faster version of that. We&#8217;ll dive deep into the details of Alchemy and some experiments to combine them with Pixelbender.</p>
<p>This post is also way of forcing myself to get Part 1 of this multipart part series neatly together this weekend. And finally get particles of my todo list and out of my system for a while&#8230;unless I get distracted. My apologies for the delay.</p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2011/01/14/the-particle-sessions-prologue/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Reviving this blog</title>
		<link>http://unitzeroone.com/blog/2011/01/06/reviving-this-blog/</link>
		<comments>http://unitzeroone.com/blog/2011/01/06/reviving-this-blog/#comments</comments>
		<pubDate>Thu, 06 Jan 2011 21:38:28 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Random Thoughts]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/blog/?p=364</guid>
		<description><![CDATA[Hello there, and welcome again. So, this blog post at the beginning of 2011 is a result of my New Years resolution, which is to revive my blog to a fully functional and lively place. I apologize for it being &#8230; <a href="http://unitzeroone.com/blog/2011/01/06/reviving-this-blog/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://unitzeroone.com/blog/wp-content/uploads/317BCM-welcome-doormat-lg2.jpg"><img class="alignnone size-full wp-image-422" title="317BCM-welcome-doormat-lg" src="http://unitzeroone.com/blog/wp-content/uploads/317BCM-welcome-doormat-lg2.jpg" alt="" width="614" height="378" /></a></p>
<p>Hello there, and welcome again. So, this blog post at the beginning of 2011 is a result of my New Years resolution, which is to revive my blog to a fully functional and lively place. I apologize for it being mostly deserted. I left it alone since May 2010. Most of the reason behind the blog falling behind was that year&#8217;s fault really, not mine.</p>
<p><span id="more-364"></span></p>
<p>It was a good year. I started doing a project for <a href="http://www.aviary.com/">Aviary</a> and was honored to speak at many great conferences of the web industry. One of the most note worthy events for me personally was also to be part of <a href="http://tv.adobe.com/show/flash-camp-tokyo/">Adobe<strong> </strong>FlashCamp<strong> </strong>Tokyo</a> and <a href="http://www.fitc.ca/events/about/?event=108">Seoul</a>. It was a great trip and a privilege to hang out with such heroes as <a href="http://www.mikechambers.com/blog/">Mike Chambers</a>, <a href="http://www.quasimondo.com/">Mario Klingemann</a>, <a href="http://blog.theflashblog.com/">Lee Brimelow</a> and <a href="http://jot.eriknatzke.com/">Erik Natzke</a>. You can see Lee&#8217;s video report of that trip in <a href="http://vimeo.com/11147444">Flasher Magazine 3 on Vimeo</a>. (<a href="http://dougmccune.com/blog/">Doug McCune</a> is alive and well, despite what that video says).</p>
<p>Looking ahead, this year promises to be an equally great year. In the Flash space, one of my long time wishes, <a href="http://labs.adobe.com/technologies/flash/molehill/">GPU support for Flash</a> is on the shortlist for a public beta in this year. More on that in a later blog. Privately, many things are happening and I&#8217;m loving it. Let&#8217;s just say that good times are ahead.</p>
<p>As for the reasoning for why this year my blog will get updated on a regular basis; this year I&#8217;ll take it easy on the conferences. I&#8217;m not saying I won&#8217;t be speaking or going to any, but this year has so many things going on for me (both work and private) that I decided to at least take it easy for a while. How long that &#8220;while&#8221; is, I haven&#8217;t decided.</p>
<p>I&#8217;ll miss all the great people, but at the same time this will give me more time to focus, work and enjoy life. Also for this reason, I&#8217;ve decided the blog will be the main form of sharing information and hopefully share useful work and thoughts.</p>
<p>As I started thinking about topics, I realized I still had quite a backlog of things still to put out there publicly and decided to tackle them one by one. My last talk, aptly named <a href="http://www.flashonthebeach.com/sessions/index.php?pageid=2188">&#8220;The Discontinuity&#8221;</a> at <a href="http://flashonthebeach.com/">Flash on the Beach in Brighton</a> has ran exactly one time, with some still in progress work, which I&#8217;d like to talk about. Also, things like <a href="http://unitzeroone.com/labs/flashModPlug/">FlashModPlug</a> and my <a href="http://sourceforge.net/projects/rocket/develop">GNURocket</a> implementation are still to be publicized. About that GNURocket client implementation, 2010 was also the year of a true demoscene contribution, in the form of <a href="http://vimeo.com/16126716">Area Unstable (video)</a> <a href="http://pouet.net/prod.php?which=56106">(pouet download)</a>. This was made together with <a href="http://www.sanderfocus.nl/v4/">Sander.Focus (graphics)</a> and <a href="http://twitter.com/gloom303">Gloom303 (music,sync)</a>.</p>
<p>I&#8217;ve also branched out to doing iOS development and working on experiments using both <a href="http://www.openframeworks.cc/">OpenFrameworks</a> and <a href="http://libcinder.org/">Cinder</a>. So there&#8217;s many things still to blog about this year. But, one thing at a time, so I decided to work through a backlog and start with some Flash particle experimentation. My next post, due tomorrow, will outline the working and technicalities about this thing; <a href="http://unitzeroone.com/labs/particleVideo/">Rendering Video with White Particles (Flash)</a><strong>.</strong></p>
<p><strong>[Update, the blog gave up on me, and I had to reinstall it. Here's my blog in it's new form].</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2011/01/06/reviving-this-blog/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dear Steve,</title>
		<link>http://unitzeroone.com/blog/2010/01/27/dear-steve/</link>
		<comments>http://unitzeroone.com/blog/2010/01/27/dear-steve/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 22:57:17 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Random Thoughts]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[jobs]]></category>
		<category><![CDATA[letter]]></category>
		<category><![CDATA[letterfromafriend]]></category>
		<category><![CDATA[steve]]></category>
		<category><![CDATA[stevejobs]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/blog/?p=330</guid>
		<description><![CDATA[Long time no see! I&#8217;ve been busy, sorry. First off all, I want to congratulate you on the great show today. Wow, that iPad is truly one of those things everyone is going to want to have, like your previous &#8230; <a href="http://unitzeroone.com/blog/2010/01/27/dear-steve/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="Apple Fail" src="http://www.unitzeroone.com/images/appleFail.jpg" alt="" width="430" height="252" /></p>
<p>Long time no see! I&#8217;ve been busy, sorry. First off all, I want to congratulate you on the great show today. Wow, that iPad is truly one of those things everyone is going to want to have, like your previous successes with the iPod and iPhone. I take my hat off for that! And wow, what a lead up to the show. Probably the first hype of 2010. And do you guys know how to keep a secret and then give a great show unveiling it.</p>
<p>That being said, I felt as an avid Apple products user as well as your friend, (you know I own a total of 3 Macbooks, a plethora of Airports and have converted nearly my entire family to buy one of those nice machines of yours) (actually it was <a href="http://www.gskinner.com" target="_blank"><strong>Grant</strong></a> who got me into buying one) it&#8217;s my duty to inform you that I think something went wrong during your presentation. When you were showing the web capabilities of the iPad, something was missing in it&#8217;s browser (see screen-shot above). As your keynote and product presentations are normally flawless (ah, well, maybe not always), I think you might have missed this one.</p>
<p>You touted the iPad&#8217;s (great product name, btw) web capabilities as being <a href="http://www.youtube.com/watch?v=Nx7v815bYUw" target="_blank"><strong>amazing, perfect, you know, the regular Apple thing</strong></a>. But during the presentation I couldn&#8217;t help but notice that little &#8220;missing plugin&#8221; logo we all know from the iPhone. Now, I was thinking that this might have been one of those very exotic plugins of back in the day, like Director or Realplayer. But, as it turned out, the missing plugin was the Flash Player.<br />
<span id="more-330"></span></p>
<p>As you&#8217;ve started the introduction to the iPad with a reference to Netbooks, and we can safely say that most netbooks support Flash, I think we are both safe to assume that to be on par with those netbooks, the minimum you should have is a fully featured browser?<br />
I mean, this is not some kind of small screen device with limited capabilities in terms of performance and graphics. It&#8217;s a fully featured machine ? Be it with that amazing iPhone touch interface. And be it in a slightly new package intended for true casual and business use. (Honestly, you kind of confused me, games and reading books ? I thought the gaming generation didn&#8217;t read and vice-versa, ah we&#8217;ll talk about that after you write me back on this letter).</p>
<p>Anyway, I think it must have been a demonstration error, because it seemed like the iPad didn&#8217;t support Flash?</p>
<div class="wp-caption alignnone" style="width: 440px"><img src="http://www.unitzeroone.com/images/myHeroes.jpg" alt="" width="430" height="211" /><p class="wp-caption-text">Mythhackers.</p></div>
<p>Ok, now, who am I kidding. I know you&#8217;re a perfectionist. And you&#8217;re a man of subtle remarks too. Between you and me, you can admit it. We both know that little missing plugin logo wasn&#8217;t an accident. I think we both know why you did it. It must have been your kind of humor, getting back at that little prank  <a href="http://www.youtube.com/watch?v=ZNtTfFDena4" target="_blank"><strong>Kevin and Johnny of Adobe pulled on you at Adobe MAX</strong></a>. (see picture above too). You have to admit, that was funny. Man, we all laughed about that one. But hey, I always think that if they&#8217;re teasing you, they must want your attention. All in all, they didn&#8217;t mean any harm.</p>
<p>(I do agree with you that they should&#8217;ve spent some more cash on the explosion effect in the video, being the maker of some of the most premiere video effect software out there, but hey, it was a good prank video, executed very well).</p>
<p>Now, given some of the <strong><a href="http://www.eeggs.com/tree/1141.html" target="_blank">easter eggs in Mac OS X</a></strong>, which essentially is your baby, through that other thing you did, with that next-cube thing you were so enthousiastic about back in the day, I take it you have a fair amount of subtle humor in you. It always reflects in your letters and I always have to laugh when I think about how you made that joke about a mouse only needing one button. But, as always, there&#8217;s a time for fun and a time for seriousness. And you seriously can&#8217;t mean that the full featured web browser doesn&#8217;t support the biggest plugin out there?</p>
<p>If you do mean it, I can understand why. I&#8217;ve never really bought that, &#8220;Flash is too slow for the iPhone&#8221; story you told everyone at that party. I also know for a fact that <a href="http://www.openscreenproject.org/partners/current_partners.html" target="_blank"><strong>RIM, Nokia, Samsung, NVidia and all those guys</strong></a> also didn&#8217;t believe it.</p>
<p>And yeah, I know that little stunt Adobe pulled with compiling directly from Flash to iPhone isn&#8217;t the same as running it in the browser, but hey, it is the output of Flash running on an iPhone. And surely there&#8217;s a lot of content which can now be readily available in the App store. And if that puny little ARM processor in an iPhone can, then surely that incredible piece of custom silicon you so proudly called the Apple A4 can. (it&#8217;s ARM too, right?).</p>
<div class="wp-caption alignnone" style="width: 440px"><img src="http://www.unitzeroone.com/images/flashOnIphone.jpg" alt="" width="430" height="264" /><p class="wp-caption-text">Your nightmare ?</p></div>
<p>Ahh, going off track, I was saying that I understood why you would not want Flash. I know having rich, web enabled apps which don&#8217;t go through the App store can be a scary thought, food for nightmares. I know you&#8217;ve had a thing for nightmares, especially after Monster&#8217;s inc. But Steve, I have to tell you. A device which is intended for casual and easy use with all the slickness Apple always brings, but doesn&#8217;t support so much web content? Come on, what will the people think? Those netbooks you called slow and PC-ish, can run Flash, but Apple&#8217;s state of the art technology can&#8217;t?</p>
<p>Yeah, I know it&#8217;s hard to have that piece of proprietary software running so much content essentially being a separate platform, while having no control over it. But that&#8217;s why Kevin and Johhny where throwing those jokes at you. They want to help you, really. And again between you and me, isn&#8217;t it true that you&#8217;re always selling computers when those guys at Adobe come up with a new version of their creativity software?</p>
<p>I would like to also come with a more serious note, as your friend, I know I can remind you of this one. Do you remember that when I was still using a PC, we were always talking sh*t about those guys at Microsoft for dominating the market? About how they pulled that monopoly thing on Netscape with that &#8220;lovely&#8221; (I still remember the word you had for it) browser we all still despise, Internet Explorer. And what they did to Real by bundling that Mediaplayer? Well, as it turns out, they kind of ran into some <a href="http://en.wikipedia.org/wiki/European_Union_Microsoft_competition_case" target="_blank"><strong>anti-trust issues with the European Union</strong></a>. I hear it was quite costly for Bill. While I agree the iPhone was a completely different thing, you can&#8217;t bring out a computer and expect everyone to think it&#8217;s just a big iPhone and then pull all that stuff off that our friend at Microsoft once did, right?</p>
<p>Yeah, yeah, I know what you&#8217;re going to say. Flash is proprietary too and there should be an open alternative to it. But honestly, in terms of open initiatives competing with it, it seems those HTML5 guys are still not ready for it, and although having H.264 video support native to the browser is nice, it hardly replaces what Flash can do right now. Not to mention all that content already being offered by Flash, people can&#8217;t see on the magnificent iPad. If pure HTML5 content is even 1% of that, we both know that would be a lot. I do feel you should be open to any plugin, honestly, so the guys at MS/Silverlight and Unity3D, for instance, also get a shot. All in all, it&#8217;s your product&#8217;s users who are going to suffer for it otherwise. Now, as I&#8217;ve made my living building Flash apps, of course I am biased, but doesn&#8217;t every developer deserve a fair shot?</p>
<div class="wp-caption alignnone" style="width: 440px"><img class=" " src="http://www.unitzeroone.com/images/steveAsIRememberYou.jpg" alt="" width="430" height="414" /><p class="wp-caption-text">You&#39;re the man!</p></div>
<p>You were always this idealist, but this thing is making you look like you are just plain greedy, at the cost of your end users, not being able to access all web content. Give me back the idealist Steve, I love that guy! (I&#8217;ve included an old picture of you to remind you of that man).</p>
<p>Now, you know I do admire that you&#8217;re not like all those others and you&#8217;re doing things your way (and it seems to work), I think you&#8217;re going down the wrong path on this one, or this might have been just an error. If it was, just fix it before release, and we&#8217;ll keep it between you and me.</p>
<p>Sincerest Regards, your friend,<br />
Ralph.</p>
<p><em>(quick note, can you make Johnathan stop saying the word Magical, every time he&#8217;s talking about one of the products he designs ? Frankly, it&#8217;s a bit annoying. And he&#8217;s not designing unicorns or leprechauns.)</em><br />
<em><br />
(quick note 2 : if you do manage to talk to Kevin or Shantanu at the next party, ask them if their engineering people can talk to your engineering people about that video hardware support and performance issues, I think it would make many of our friends happy).</em></p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2010/01/27/dear-steve/feed/</wfw:commentRss>
		<slash:comments>46</slash:comments>
		</item>
		<item>
		<title>Help me test! Flash VSync and Screen Tearing.</title>
		<link>http://unitzeroone.com/blog/2009/11/30/help-me-test-flash-vsync-and-screen-tearing/</link>
		<comments>http://unitzeroone.com/blog/2009/11/30/help-me-test-flash-vsync-and-screen-tearing/#comments</comments>
		<pubDate>Mon, 30 Nov 2009 13:55:40 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Examples]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Random Thoughts]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[tearing]]></category>
		<category><![CDATA[vsync]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/blog/?p=311</guid>
		<description><![CDATA[So, here&#8217;s a post where I am asking you, the Flash community, for a hand. Any of it is truly appreciated and will hopefully get some attention and maybe even a solution to a problem which has been in around &#8230; <a href="http://unitzeroone.com/blog/2009/11/30/help-me-test-flash-vsync-and-screen-tearing/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" src="http://www.unitzeroone.com/images/tearing.jpg" alt="" width="430" height="294" /></p>
<p>So, here&#8217;s a post where I am asking you, the Flash community, for a hand. Any of it is truly appreciated and will hopefully get some attention and maybe even a solution to a problem which has been in around in Flash since as long as I can remember; screen tearing.</p>
<p>First, what does tearing mean in this context ? <a href="http://en.wikipedia.org/wiki/Screen_tearing" target="_blank"><strong>Read this wikipedia article</strong></a>. In this case, it&#8217;s a visual split along a vertical line in a Flash movie. It&#8217;s been a known issue with Flash since quite some time (always as far as I know), with improvements over several Flash player versions, but I haven&#8217;t had to deal with it much lately&#8230;.until now. I&#8217;m in a project where this visual artefact is a major distraction from the content and the experience.</p>
<p>All in all, this seems to be the cause (at least, my analysis of it) of tearing in this case; Flash internally rasterizes a screen, and pushes it to the screen buffer. Internally, this should be synced to your display refresh (60hz or 72hz, for instance), so that the buffer doesn&#8217;t get updated halfway through the videocard building up the frame. But on some browsers and platforms it does update during the video card frame refresh, resulting in two rendered frames being displayed at once (or better; 1 frame being updated to the next while drawing to screen), with an optically visible vertical split visible between the two frames. This problem has been around for a long time. It&#8217;s more prone to show up in content with &#8220;tall&#8221; items in it, fast frame rates with large portions of the screen moving, and during horizontal scrolling of displayobjects.</p>
<p>The picture above shows the problem in action. It&#8217;s a picture taken using a regular camera pointed at the screen, as this problem doesn&#8217;t show up in screencapture software. It shows two different frames of the testing movie; both a black and white square, updated halfway through the screen. While the position of where the slicing happens changes, in many single frames, 2 frames will be displayed at the same time.</p>
<p>I&#8217;m seeing problems with the latest 10 Player on Windows XP (Firefox), Mac OS X (Firefox, safari doesn&#8217;t but &#8220;stutters), and Windows 7. All in all, this is a graphical issue which has been around for a long time and should be solved. It&#8217;s definitely a Flash Player bug and with FlashPlayer 10.1 around the corner, I would really love to see this fixed. As well as being hopeful for finding a solution for current player/browser configurations. But testing results are varying and that&#8217;s where I am asking you for help, by running 2 flash movies and posting the results to my comments.</p>
<p>Over the last days I&#8217;ve been frantically testing several configurations and options, I would hope force vsync with the flash screen buffer, amongst which the following :</p>
<ul>
<li>Adding a video at 30fps to the stage (no result)</li>
<li>Adding system text to the display list (seems to work on windows xp)</li>
<li>Several configurations of stage.invalidate() and Event.RENDER (no result)</li>
<li>Different drawing / caching methods.</li>
<li>Wmode=&#8221;direct&#8221; for flash player embed options. (result across the board!)</li>
</ul>
<p>The last option is the only thing which seems to work on all testing configurations, but comes at a cost. Switching to wmode=&#8221;direct&#8221; seems to force vsyncing and this would adhere to what has been said about direct wmode:</p>
<p><strong><em>&#8220;This mode tries to use the fastest path to screen, or direct path if you will. In most cases it will ignore whatever the browser would want to do to have things like overlapping HTML menus or such work. A typical use case for this mode is video playback. On Windows this mode is using DirectDraw or Direct3D on Vista, on OSX and Linux we are using OpenGL. Fidelity should not be affected when you use this mode.&#8221; </em><a href="http://www.kaourantin.net/2008/05/what-does-gpu-acceleration-mean.html" target="_blank"><em>[Link to Tinics blog]</em></a></strong></p>
<p><em><strong>&#8220;Hardware offscreen buffer<br />
Software renderer, perfect fidelity&#8221; <a href="http://web.me.com/jeroendendunnen/downloads/max2008/documents/develop/Flash_Player_Internals-Jim_Corbett-final_v2.ppt" target="_blank">[link to Jim Corbett's presentation (ppt)]</a></strong></em></p>
<p>As opposed to the wmode=&#8221;gpu&#8221; flag, which moves rasterization to the videocard (at a hight cost in most content cases, also altering the appearance of your content depending on the videocard), this option still uses the Flash Software Rasterizer to build up content for the screen. But on both my Mac and PC testing this comes at a performance cost of several frames per second, up to about 15fps on larger screens (1280&#215;768). Also, I&#8217;m not sure about the results of this on machines with no gpu. (mostly, cheap on board graphic chipsets, which share system memory). While most of the time, your content type might vary in terms of results with either GPU enabled wmodes, in this test that shouldn&#8217;t be an issue.</p>
<p>Obviously, abusing wmode=&#8221;direct&#8221; to force vsyncing on the Flash Player isn&#8217;t ideal, but it seems to work. In an effort to survey the results of this, I&#8217;ve built a very simple test swf. What I&#8217;d like you to do is run both swfs and copy the text field of both and paste them in my comments. Although I&#8217;m already in contact with Tinic about this, there&#8217;s currently no JIRA bug describing the problem. With the results you have, I&#8217;d like to put up an official bug there, and use your results to describe what systems are impacted.</p>
<p>Firefox seems to be the main culprit. Since FF 3 there have been a number of big issues with Flash and Firefox; for instance, in some cases a right click on the flash player will cause the updated areas in the Flash movie to render as an opaque rectangle with the background color. In another case, Flash doesn&#8217;t respond to rollover events and doesn&#8217;t even render without a mouse click occuring.</p>
<p>Please help me and hopefully Adobe identify and fix this problem, by running these tests. Here&#8217;s what you should do :</p>
<ul>
<li>Run both movies</li>
<li>Look for tearing. Typically, in these test, instead of steady flickering, you&#8217;ll see a moving vertical tear between the black and white area. It is essentiall you identify tearing correctly, so make sure you know what it looks like (picture above is a still). The effect of tearing shows even better on my mac, when you move the firefox window so that the flash movie intersects your screenborder, halfway splitting vertically through the flash movie).</li>
<li>Copy and paste the textfield contents when the test is done, on both tests to my comments. Fill in the required 2 fields, and if you can, what type of graphics hardware your machine has.</li>
<li>Send this link to other people who are willing to test (and be part of the solution, making Flash a better place!).</li>
</ul>
<p><a href="http://unitzeroone.com/labs/tearing/opaque/FlashTearing.html" target="_blank"><strong>Test with wmode opaque</strong></a></p>
<p><a href="http://unitzeroone.com/labs/tearing/direct/FlashTearing.html" target="_blank"><strong>Test with wmode direct</strong></a></p>
<p><strong>[WARNING : if you are prone to visually induced epileptic fits, this might induce one. Don't run it then]</strong></p>
<p>(don&#8217;t forget to post to the comments).</p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2009/11/30/help-me-test-flash-vsync-and-screen-tearing/feed/</wfw:commentRss>
		<slash:comments>250</slash:comments>
		</item>
		<item>
		<title>Playing with Alchemy : C64 Music Playback on Flash 10.</title>
		<link>http://unitzeroone.com/blog/2009/02/12/playing-with-alchemy-c64-music-playback-on-flash-10/</link>
		<comments>http://unitzeroone.com/blog/2009/02/12/playing-with-alchemy-c64-music-playback-on-flash-10/#comments</comments>
		<pubDate>Thu, 12 Feb 2009 17:15:58 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Cool Sites]]></category>
		<category><![CDATA[Examples]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Random Thoughts]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[alchemy]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[c64]]></category>
		<category><![CDATA[opcodes]]></category>
		<category><![CDATA[sid]]></category>
		<category><![CDATA[virtual machine]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/blog/?p=176</guid>
		<description><![CDATA[It&#8217;s been silent here. Next to tripping to Tokyo to speak at Adobe MAX in Januari and doing some small jobs, I&#8217;m doing a very, very cool Flash 10 Project utilizing the upcoming Papervision for Flash 10. For some optimization &#8230; <a href="http://unitzeroone.com/blog/2009/02/12/playing-with-alchemy-c64-music-playback-on-flash-10/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.unitzeroone.com/labs/tinysidflash/" target="_blank"><img class="alignnone size-full wp-image-180" title="6581" src="http://unitzeroone.com/wordpress/wp-content/uploads/6581.jpg" alt="6581" width="430" height="195" /></a></p>
<p>It&#8217;s been silent here. Next to tripping to Tokyo to speak at Adobe MAX in Januari and doing some small jobs, I&#8217;m doing a very, very cool Flash 10 Project utilizing the upcoming Papervision for Flash 10. For some optimization parts I&#8217;ve been looking into using Alchemy as an easy way to write optimized bytecode. As opposed to what some people took from my previous post on Alchemy, I don&#8217;t hate Alchemy. My point there was that if Alchemy can perform that well, so should ActionScript be able to, with the standard compiler.</p>
<p><span id="more-176"></span></p>
<p>Now, that being said, all work and no play makes jack a dull boy. With no time to spare during the morning, daytime and evening, I took the laptop with me to bed last night, and decided to do something I didn&#8217;t do before, port something with <strong><a href="http://labs.adobe.com/technologies/alchemy/" target="_blank">Adobe Alchemy</a></strong>. I decided upon a long time thing on my wish list; SID Playback in Flash. <strong><a href="http://en.wikipedia.org/wiki/MOS6581" target="_blank">What is SID ?</a></strong> Well, SID stands for Sound Interface Device, referring to the MOS6581 and it&#8217;s a programmable audiochip as used in the Commodore 64 and Commodore 128. I grew up with the Commodore 64, and the audio it produces is still something I hold dearly. You are quite likely to have heard a SID chip before, if you listen to the radio, as it is quite a possible you&#8217;ve heard one of these baby&#8217;s scream. Good recent examples are :</p>
<p><strong><a href="http://www.youtube.com/watch?v=8cWL89fjfUU" target="_blank">Bastian &#8211; You&#8217;ve got my love.</a></strong> (the beat in this song comes from Jeroen Tel&#8217;s Rubicon).</p>
<p><strong><a href="http://www.youtube.com/watch?v=zusMLb44qXE" target="_blank">Nelly Furtado &#8211; Do It</a></strong> (controversy all around, <strong><a href="http://en.wikipedia.org/wiki/2007_Timbaland_plagiarism_controversy" target="_blank">Timbaland blatantly stole Glenn Rune Gallefoss&#8217;s version of Acid Jazzed Evening</a></strong>).</p>
<p><strong><a href="http://www.youtube.com/watch?v=1teWn-HDUv4" target="_blank">De Jeugd van Tegenwoordig &#8211; Hollereer</a></strong> (Produced by Bastian, C64 lover himself).</p>
<p>My interest was more playing back the old C64 tunes from games and demos. Keep in mind, an average SID file is about 2kilobyte to 10kilobyte; a perfect Small Web Format for all your music during preloading needs <img src='http://unitzeroone.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . Now, this is something I have been working on before in Flash 9, using the <strong><a href="http://osflash.org/fc64" target="_blank">FC64 project</a></strong>, the amazing Flash C64 emulation effort by Claus Wahlers and Darron Schall. Last year, I even made a start with porting FC64 to Flash 10, but that needed to be dropped in favor of actual client work. SID Playback is something different from playing back .mod .xm or .mid files, as the SID chip doesn&#8217;t do much on it&#8217;s own. Essentially, a .SID file is an executable meant to be ran on the 6510, the Commodore 64&#8242;s CPU. So to playback the file, you not only need to emulate the SID chip, but also the 6510 and the needed registers / memory.</p>
<p>Software emulation of the SID chip has been around for a while, and all modern platforms have a way of playback SID files. Winamp plugins, command line utilities for conversion, it&#8217;s all there. As is there opensource code to do this. There&#8217;s libraries for most major languages. So, after a bit of research, I decided upon the <strong><a href="http://www.rsinsch.de/?id=7298b" target="_blank">Linux version of TinySid</a></strong>. This library is small enough and well optimized. It looked simple to port, so I went at it. All in all, 4 hours later, I had this baby up and running! (And an unhappy girlfriend who isn&#8217;t into the nerd thing, nor is she into listening to chiptunes whilst trying to sleep). Considering my very rusty C and a little hack around I had to do for the audio output, Alchemy shows off it&#8217;s feathers here. Many kudo&#8217;s to the Alchemy and Flash Player team for this effort. Just now I spent half an hour building a tiny interface using <strong><a href="http://www.bit-101.com/blog/?p=1217" target="_blank">Keith Peter&#8217;s Minimal Components</a></strong>, and collected some songs; and here it is.</p>
<p><strong><a href="http://www.unitzeroone.com/labs/tinysidflash/" target="_blank">TinySidFlash (open link, requires Flash 10).</a></strong></p>
<p>My favorites : Politik and Science (A C64 version of Coldplay&#8217;s the Scientist), Morphing and Turbo. Yes, I love Dane&#8217;s tunes!</p>
<p>There&#8217;s no code yet, as this is still very rough and unfinished work. I&#8217;m pretty sure that when I get time again, I&#8217;ll have a go at LibSidPlay instead, since the overall emulation in that library is a lot better.</p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2009/02/12/playing-with-alchemy-c64-music-playback-on-flash-10/feed/</wfw:commentRss>
		<slash:comments>43</slash:comments>
		</item>
		<item>
		<title>Adobe Alchemy, is it ActionScript heresy ?</title>
		<link>http://unitzeroone.com/blog/2008/11/28/adobe-alchemy-is-it-actionscript-heresy/</link>
		<comments>http://unitzeroone.com/blog/2008/11/28/adobe-alchemy-is-it-actionscript-heresy/#comments</comments>
		<pubDate>Fri, 28 Nov 2008 15:31:56 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Papervision3D]]></category>
		<category><![CDATA[Random Thoughts]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[alchemy]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[haxe]]></category>
		<category><![CDATA[opcodes]]></category>
		<category><![CDATA[virtual machine]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/blog/?p=167</guid>
		<description><![CDATA[Take your time, this is a lengthy post. Before I jump in the matter, I want to go back a bit. The magic of C64 Assembler One of my first experiences with computer programming was on the C64. My dad &#8230; <a href="http://unitzeroone.com/blog/2008/11/28/adobe-alchemy-is-it-actionscript-heresy/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-169" title="smallalchemist1" src="http://unitzeroone.com/wordpress/wp-content/uploads/smallalchemist1.jpg" alt="" width="430" height="221" /></p>
<p>Take your time, this is a lengthy post. Before I jump in the matter, I want to go back a bit.</p>
<p><strong>The magic of C64 Assembler</strong></p>
<p>One of my first experiences with computer programming was on the C64. My dad bought my uncles C64&#8230;&#8230; Of course we played games at first, but at some point I started to look at all the books that my uncle had gaven with it. One of the first books I opened up and started playing with was called &#8220;Basic for Beginners&#8221;. I remember thinking, wow, so this is how you make games ? I started playing with existing programs and later on began writing my own, such brilliant programs as &#8220;My cassette collection&#8221; and &#8220;Adding Numbers&#8221;. But what I really wanted was to write my own games.</p>
<p>How come my C64 basic programs where always so slow ?  Surely, there must be something I was doing wrong. With nobody around to teach me, or tell me anything about this machine, I dived in the pile of books that came with the computer once again. Two books took my interest. &#8220;C64 Programmers Reference Guide&#8221; and a home printed &amp; binded book that had written on it &#8220;C64 Kernel listing&#8221;. I had two problems with these, being 1, my ability to read english and understanding the magic listings this book had. It took me a long, long time to grasp what these books where saying, but these 2 books, together with a dutch book on C64 programming, I slowly learned how to do 6510 assembly language for the C64.</p>
<p><span id="more-167"></span></p>
<p>This was the realm of pure magic. All of a sudden things went a lot faster. Moving a sprite along the screen could be done fast and smooth. But things where a lot more complicated. 6510 (or actually 6502, for the purists) asm, although especially now a days, quite simple, isn&#8217;t exactly humanly readable, nor was it clear to me how to structure full programs or games. I learned how to do a lot of tricks, like getting more then the 8 hardware supported sprites on screen at the same time (something then called multiplexing), playing sound while still having being able to do other things at the same time, getting sine waving color bars on screen and screen border, but I never managed to build a full game. What I learned about that was that interpreted basic was a lot slower then assembler and if you wanted to get real speed you&#8217;d have to target the platforms native code. Assembler wasn&#8217;t magic, it was just a better way to target the platform.</p>
<p><strong>Back to current day. </strong><br />
I&#8217;ve been working with Flash for almost 9 years now. I dare to say I know quite a lot of Flash as a platform, and have been doing many projects and experimentation with it. Last year at MAX, when FlaCC or now, Alchemy was shown it looked like pure magic! Sure, I understood the basic principles, but running Quake in the Flash VM was nothing short of magic. Running Quake within the Flash VM using a port of the C code was quite an achievement, but the speed was more incredible. This was nothing short of pure magic, like turning lead into gold!</p>
<p>It&#8217;s an ironic name Adobe chose for FlaCC. Let&#8217;s look at the word and dabble into the occult. There&#8217;s a clear distinction between alchemy and science. Alchemy is most known for trying to create noble metals from otherwise less-valuable materials. Even Sir. Isaac Newton spent a lot of time in the field, surprisingly, even more time then he spent working on subjects such as optics and physics, for which he is most known. In a way, Alchemy is the forerunner for what now is chemistry. From the occult to exact sciences. So, with that name, is Adobe suggesting Alchemy is pure magic ? Turning lead into gold ?</p>
<p><strong>Is it witchcraft ? </strong><br />
After the initial amazement I had with seeing Quake run within Flash, I started to question some things and started asking around with people who might know more of this witchcraft. Was this really Flash Player 9 running this ? From multiple sources I heard it was a slightly modified version of the Flash Player 9. Something to do with reserving a block of memory. Later on, after finding<a href="http://llvm.org/devmtg/2008-08/Petersen_FlashCCompiler_Hi.m4v" target="_blank"> <strong>Scott Petersen his LLVM session on this subject</strong></a>, this was confirmed. In this session, Scott also shows an emulator running on top of the Flash VM. Having some experience in the FC64 (a commodore 64 emulator for flash) project, again, the speed was pure magic.</p>
<p>What I ended up finding most interesting about Alchemy, wasn&#8217;t the ability to take C code and compile it to Flash (although that&#8217;s an incredible achievement on itself), but the pure raw speed it seemed to harness. And with that, I also got a bit disappointed in Flash. It boils down to this.</p>
<p>The first magic bullet in Flash speed came in the form of the ActionScript Virtual Machine 2. With JIT compilation of ActionScriptByte code the platform just became a whole lot faster. With the coming of the AVM2, lot&#8217;s of things have changed. For me personally, one of the displays of the game changer was <a href="http://blog.papervision3d.org"><strong>Papervision3D</strong></a>, in which I got involved quite early on. <a href="http://rockonflash.wordpress.com/2007/01/10/macworld-as2as3-speed-comparision-demo/"><strong>John Grden&#8217;s early demo using Papervision3D running on AS3</strong></a> was an incredible testament to the speed of the AVM2. Now, that demo was built using ActionScript 3 as the language to be compiled down to ABC. ActionScript 3 is the language which was intended to run on top of this platform and one might thus derive that the language and it&#8217;s compiler is most optimized for the AVM2. So logically, one might asses that the best way to write code for the AVM2 is using ActionScript.</p>
<p><strong>Heresy I say! Heresy! Burn the witch!</strong><br />
Alchemy is proof that this is not the case. Here&#8217;s a bit of pure heresy in the Adobe church : Alchemy is a testament to the underachievement of the ActionScript compiler. Ouch. Surely, this can&#8217;t be the case, right ? Well, yes and no.</p>
<p>Let&#8217;s start with the &#8220;no&#8221; part. That reference of a modified player running Quake was partially true. This was an early demo of Flash 10, in a way. As Nicolas Canasse points out in this blog post about <a href="http://ncannasse.fr/blog/virtual_memory_api"><strong>Alchemy virtual memory opcodes</strong></a>, it seems like Alchemy is cheating a bit. Cheating ? While, yes. This part of the API is not available from within ActionScript itself. So, the platform (AVM2) now has features which are not supported by the language which is native to it ? Wow. I find this a very significant move by Adobe. Moving to a more flexible compiler makes total sense, but is this the first symptom caused by the <a href="http://whydoeseverythingsuck.com/2008/08/ru-roh-adobe-screwed-by-ecmascript.html"><strong>EcmaScript4 draft debacle</strong></a> ?</p>
<p>To achieve the speed as displayed by Alchemy, I have thus have to move to using C code, or <a href="http://haxe.org/"><strong>HaXe</strong></a> to compile for the AVM ? This is odd, to say the least. Nicolas his work on HaXe is nothing less then brilliant. The features this compiler has are those which would greatly help the development of a 3D engine, such as Papervision3D. I&#8217;ve always had a great deal of interest of porting Papervision3D to HaXe, purely to be able to implement things like inlining easily, which will safe us function calls and thus speed up the process of rendering 3D to the screen. The downside to that is, that the code base would have to change to HaXe, and thus become incompatible with the compilers of Flash and Flex. We (Papervision3D) could provide with a SWC built with HaXe, but in a way, I&#8217;m still a bit weary of that.</p>
<p>Now we come to the yes part, of my earlier &#8220;yes and no&#8221;. Next to the virtual memory opcodes that are currently unsupported from within the AS3 language, Branden Hall states something very disturbing on his blog about Alchemy, &#8220;<a href="http://www.automatastudios.com/2008/11/21/understanding-adobe-alchemy/"><strong>Understanding Adobe Alchemy</strong></a>&#8220;.</p>
<p><em>&#8220;In fact, because LLVM does a lot of optimizations, whereas Flash and Flex have no optimization step built into their compilers, Alchemy code manages to overcome a lot of it is overhead just on its own.&#8221;</em></p>
<p>Ok, that is down right disturbing. The AVM2 was built with ActionScript in mind and visa versa. But compiling C using LLVM with ActionScript as a target produces <span style="text-decoration: line-through;">better</span> faster ActionScript (that&#8217;s actionscript, not bytecode) then the actual compiler built for the platform does ? Ouch. Now, moving to C development for the ActionScript platform to utilize this &#8220;magically&#8221; acquired speed seems somewhat illogical to me ? <strong><a href="http://blog.joa-ebert.com/2008/02/28/flex-compiler-open-source-the-logical-consequences/" target="_blank">Joa Ebert already showed us</a></strong> some work he had done on the compiler, allowing for inline bytecode to be used. Nicolas shows us he can harnass the new Virtual Memory Opcodes, and his work on HaXe also shows us that <strong><a href="http://haxe.org/ref/inline">inlining is very, very nice</a></strong>.</p>
<p>I&#8217;d love someone from adobe shedding some light on this issue. I love the Flash Platform, I love the work all the people at Adobe do, but this leaves me somewhat confused on how to develop for the platform I hold so dearly. If we have to let go of ActionScript to harness the pure speed Alchemy proofs is possible, then tell us. What is the future of our beloved language and our compilers for it ?</p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2008/11/28/adobe-alchemy-is-it-actionscript-heresy/feed/</wfw:commentRss>
		<slash:comments>33</slash:comments>
<enclosure url="http://llvm.org/devmtg/2008-08/Petersen_FlashCCompiler_Hi.m4v" length="424159663" type="video/x-m4v" />
		</item>
		<item>
		<title>Mind-bending puppets, FlashPlayer 10, conferences, the past and the future&#8230;</title>
		<link>http://unitzeroone.com/blog/2008/05/06/mind-bending-puppets-flashplayer-10-conferences-the-past-and-the-future/</link>
		<comments>http://unitzeroone.com/blog/2008/05/06/mind-bending-puppets-flashplayer-10-conferences-the-past-and-the-future/#comments</comments>
		<pubDate>Tue, 06 May 2008 14:13:26 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[FITC]]></category>
		<category><![CDATA[FITC Toronto 2008]]></category>
		<category><![CDATA[Multimania]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Random Thoughts]]></category>
		<category><![CDATA[rephlex]]></category>
		<category><![CDATA[Singularity 2008]]></category>
		<category><![CDATA[bender]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[hydra]]></category>
		<category><![CDATA[pixelbender]]></category>
		<category><![CDATA[puppet]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/blog/?p=153</guid>
		<description><![CDATA[&#8220;Pixel Bender&#8221; ? Really ? [Fill in my excuse for not posting in such a long time]. There&#8217;s so much to tell, hence the weird title. Let&#8217;s start of with todays news; Adobe renames Hydra to Pixel Bender. They actually &#8230; <a href="http://unitzeroone.com/blog/2008/05/06/mind-bending-puppets-flashplayer-10-conferences-the-past-and-the-future/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://unitzeroone.com/wordpress/wp-content/uploads/pixel_bender.jpg"><img class="alignnone size-full wp-image-154" title="pixel_bender" src="http://unitzeroone.com/wordpress/wp-content/uploads/pixel_bender.jpg" alt="" width="430" height="250" /></a></p>
<p><strong>&#8220;Pixel Bender&#8221; ? Really ? </strong></p>
<p><em>[Fill in my excuse for not posting in such a long time]</em>. There&#8217;s so much to tell, hence the weird title. Let&#8217;s start of with todays news; Adobe renames Hydra to Pixel Bender. They actually did it&#8230;.now&#8230;it might be me&#8230;but wasn&#8217;t Hydra a way cooler name then &#8220;Pixel Bender&#8221; ? At least we&#8217;ll be able to make <a title="Bender on Wikipedia." href="http://en.wikipedia.org/wiki/Bender_(Futurama)" target="_blank">Bender</a> references all the time now&#8230;adding to nerd-status. The cool thing ? Bender&#8217;s brain is a <a href="http://en.wikipedia.org/wiki/MOS_Technology_6502" target="_self">MOS6502</a> &#8230; the same cpu which for instance, also powered the <a href="http://en.wikipedia.org/wiki/Commodore_64" target="_blank">best machine of all times</a>.</p>
<p><strong>Puppet Interview</strong></p>
<p>So, moving on from that news. Over the last months I&#8217;ve done several interviews. I was reluctant to post them, but come to think of it, why ? You are reading this page so you&#8217;re at least interested in what I have to say. <a href="http://youtube.com/watch?v=DIyVhz4x4FU" target="_blank">The best interview as of yet was with Gideon, one of the worlds best designers</a>. In all honesty, &#8220;jet-lagged&#8221; as I was, I wasn&#8217;t at my best, so these interviews might entertain you more; <a title="Gideon Interviews Joshua Davis" href="http://youtube.com/watch?v=taqPEf6U_rM&amp;feature=user" target="_blank">Joshua Davis</a>, <a href="http://youtube.com/watch?v=_xpgbnlrY_A&amp;feature=PlayList&amp;p=6A3436102D559B76&amp;index=2" target="_blank">Hugh Elliot</a>, <a title="Gideon talks to Gideon &amp; Gmunk" href="http://youtube.com/watch?v=fpO5TEAsyqI&amp;feature=PlayList&amp;p=6A3436102D559B76&amp;index=4" target="_blank">Moock&amp;Gmunk</a>, <a title="Gideon talks to Seb-Lee Desisle" href="http://youtube.com/watch?v=5NGCJ8IQgLI&amp;feature=PlayList&amp;p=6A3436102D559B76&amp;index=5" target="_blank">Seb-Lee Delisle</a>.</p>
<p><strong>FITC</strong> &amp; <strong>rePhlex and Flash Player 10</strong></p>
<p>Of course, all of this was recorded at the <a title="FITC Site." href="FITC Toronto 2008 conference" target="_blank">FITC Toronto 2008 conference</a>. First off all, thanks to the FITC Organisation&#8230;you guys did an awesome job. The conference had an excellent vibe &#8230; (except for that annoying drunk dude at the front door on Tuesday&#8230;you know who you are), and I had a great time hanging with you all. I did a sold-out workshop on day 1, day 2 a panel, with Adobe&#8217;s <a href="http://justin.everett-church.com/" target="_blank">Justin</a>, <a href="http://blogs.adobe.com/rgalvan/">Richard</a>, <a href="http://www.theflashblog.com" target="_blank">Lee</a>, <a href="http://blog.je2050.de/" target="_blank">Joa</a> from <a href="http://www.hobnox.com/index.914.en.html">Hobnox</a> and Mr. Paperworld: <a href="http://paperworld3d.com/">Trevor</a>.</p>
<p>On day 3 I did my session&#8230;I was shocked to find the room literally packed with people&#8230;.and was somewhat nervous throughout some moments in my session, but as it seems by the feedback, people really enjoyed it. The reviews I found in my incoming links are at least very positive.During this session I also got to talk about rePhlex again, my new toy project. rePhlex is meant to be a lightweight, realtime image processing and syncing/eventing library for site/example and demo purposes. It&#8217;s been overgoing some heavy changes and refactoring&#8230;you&#8217;ll all just have to wait a bit more.</p>
<p>Another thing I really enjoyed doing in my session was that I was allowed to show some <span style="text-decoration: line-through;">hydra</span> Pixel Bender running inside Flash Player 10. Yes&#8230;.you missed a sneak of Flash Player 10&#8242;s awesome power. <img src='http://unitzeroone.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>On day 4 of the conference I had a taped conversation with <a title="Keith Peters blog." href="http://www.bit-101.com/blog/" target="_blank">Keith Peters</a>, which, next to the obligatory joke he made at my cost, to get back at me for sleeping a bit to long, we both hoped won&#8217;t bore you too much&#8230;you put to actionscript / math / graphic nerds on a couch&#8230;what do you think happens ?</p>
<p>I saw some sessions myself, but was really unlucky with my taste vs the schedule. Things I can quickly remember seeing; <a href="http://www.sebleedelisle.com/" target="_blank">Seb-Lee Delisle</a>, <a href="http://www.quasimondo.com/" target="_blank">Mario Klingemann</a>, <a href="http://www.bit-101.com/blog/" target="_blank">Keith Peters</a>, <a href="http://www.flight404.com/blog/" target="_blank">Robert Hodgin</a>, <a href="http://jot.eriknatzke.com/" target="_blank">Erik Natzke</a> and many others. Robert&#8217;s session (the last of the conference) absolutely blew me away. And I do love <a href="http://www.vimeo.com/935317?pg=embed&amp;sec=935317" target="_blank">Radiohead</a>!</p>
<p>So, that would wrap up FITC Toronto (and Amsterdam too).</p>
<p><strong>Upcoming Conferences</strong></p>
<p>I&#8217;m looking forward to speak at this months <a href="http://www.multi-mania.be/2008/" target="_blank">Multimania</a>. In June there&#8217;s going to be <a href="http://www.fitc.ca/event_detail.cfm?festival_id=19">FITC Chicago</a>&#8230;later on this year many more, amongst which for instance; <a href="http://singularity08.com/" target="_blank">Singularity 08</a>. I&#8217;m really unlucky to have to miss out on this years <a href="http://flashbelt.com/" target="_blank">FlashBelt</a>&#8230;..hope you all have a good time there anyway.</p>
<p><strong>Goodbye Earthmine ! Hello new works ?<br />
</strong></p>
<p>As some of you, attending one of my sessions or workshops earlier this year might know, most of my commercially available time went to the <a href="http://earthmine.com/" target="_blank">Earthmine</a> project. That work ended for me last week and after working on one project for such an extended period of time (7 months+) and some rest, I&#8217;m now really looking forward too and open for new jobs and work..I&#8217;m not sure what I&#8217;ll do yet and am still contemplating on what I really want to do as the &#8220;next&#8221; thing. In the mean time I&#8217;ll be working on smaller freelance jobs. And if you have something you&#8217;d like me to work on&#8230;.<a href="http://www.unitzeroone.com/blog/contact/" target="_blank">ping me</a>.</p>
<p><strong>Playing with Hydra and image algorithms</strong></p>
<p>Another post coming up today will explain some more. With my work on rePhlex and Hydra, I&#8217;m having a blast doing image manipulation algorithms&#8230;.one of my experiments was image dithering and half-toning&#8230;with as a result a new open source project. More on that in my next post&#8230;which will appear on the all new and revamped <a href="http://feeds.adobe.com/" target="_blank">AXNA / Adobe Feeds</a>! Welcome back !</p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2008/05/06/mind-bending-puppets-flashplayer-10-conferences-the-past-and-the-future/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Today : 3D Girl freaking me out, isometric engine &amp; Gnash beta.</title>
		<link>http://unitzeroone.com/blog/2008/03/10/today-3d-girl-freaking-me-out-isometric-engine-gnash-beta/</link>
		<comments>http://unitzeroone.com/blog/2008/03/10/today-3d-girl-freaking-me-out-isometric-engine-gnash-beta/#comments</comments>
		<pubDate>Mon, 10 Mar 2008 19:06:19 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Cool Sites]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Random Thoughts]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[cool]]></category>
		<category><![CDATA[freaky]]></category>
		<category><![CDATA[girl]]></category>
		<category><![CDATA[gnash]]></category>
		<category><![CDATA[isometric]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/blog/2008/03/10/today-3d-girl-freaking-me-out-isometric-engine-gnash-beta/</guid>
		<description><![CDATA[Ok, so I wanted to post this one earlier; an extremely realistic looking 3D interactive portrait of a girl&#8230;.it&#8217;s kind of weird looking and a bit spooky, don&#8217;t look at her too long It&#8217;s impressive though. So, what is this &#8230; <a href="http://unitzeroone.com/blog/2008/03/10/today-3d-girl-freaking-me-out-isometric-engine-gnash-beta/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://unitzeroone.com/wordpress/wp-content/uploads/freakygirl.jpg" alt="Cubo.cc Freaky Girl." /></p>
<p>Ok, so I wanted to post this one earlier; an extremely realistic looking <strong><a href="http://cubo.cc/" target="_blank" title="Cubo.cc ... freaky girl.">3D interactive portrait of a girl</a></strong>&#8230;.it&#8217;s kind of weird looking and a bit spooky, don&#8217;t look at her too long <img src='http://unitzeroone.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  It&#8217;s impressive though.</p>
<p>So, what is this ? Well, a bit of simple research (read, firebug) led me too <strong><a href="http://www.motionportrait.com" title="Motion portrait." target="_blank">motionportrait.com</a></strong>. Unfortunately, that&#8217;s in japanese. That site has the same girl on it, as well as links to several other implementations of the technology&#8230;including this hilarious one : <strong><a href="http://www.hige-chen.com/index.html" target="_blank" title="Hige Chen">hige-chen</a></strong> (love that tune). But also, to the still very cool <strong><a href="http://blog.papervision3d.org/2007/10/20/rec-you/" target="_blank">Rec-You campaign</a></strong>. I&#8217;m betting we&#8217;ll see a couple of more implementations of this in the near future.</p>
<p>Another thing that caught my attention today was a mail from the creator of the isometric engine <strong><a href="http://www.ffilmation.org/website/">ffilmation</a></strong>. Very nice work indeed! The name is derived from the <strong><a href="http://en.wikipedia.org/wiki/Filmation_engine" title="Filmation at wikipedia." target="_blank">old-skool filmation engine</a></strong>, used to create various gaming titles for the old 8-bit platforms. Looking forward to see progress on it. Related : also, make sure you check out the <strong><a href="http://blog.alternativagame.com/en/" title="Alternativa3D" target="_blank">Alternativa3D</a></strong> engine which was previously isometric only also, but now &#8220;full 3D&#8221;..impressive stuff.</p>
<p>A bit late, but I didn&#8217;t see any <strong><a href="http://weblogs.macromedia.com/mxna/" title="MXNA" target="_blank">MXNA</a></strong> post on this; the first beta for Gnash is out. <strong><a href="http://lwn.net/Articles/272206/" title="Gnash release post." target="_blank">From the release post :</a></strong> &#8220;<em>Gnash is a GPL&#8217;d SWF movie player and browser plugin for Firefox, Mozilla, and Konqueror. Gnash supports many SWF v7 features and ActionScript 2 classes.</em>&#8220;.</p>
<p>Gnash already made the news last year, but this time they&#8217;ve got a beta&#8230;</p>
<p>Honestly, I&#8217;m not really impressed. One of the goals for this release seems to be to make youtube work on it. I don&#8217;t think this means that good to the Flash community. Even if Gnash grows up (and eventually supports SWF9 / AS3), I don&#8217;t really like the idea of &#8220;another&#8221; player. In my opinion, if it becomes a broader supported version of the player, it will just cause rips in the ubiquity and cross-platform nature of Flash&#8230;.something which is undeniably one of the biggest strenghts of the platform.</p>
<p>What Gnash might provide is a deeper insight of the workings of the Flash Player, which might eventually enable us to optimize our code for it more and more. It might also inspire Adobe to make the Flash Player available on more os&#8217;es ? Let&#8217;s hope so. Maybe someone will port it to the Iphone <img src='http://unitzeroone.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2008/03/10/today-3d-girl-freaking-me-out-isometric-engine-gnash-beta/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Pushing technology with porn&#8230;sounds familiar ?</title>
		<link>http://unitzeroone.com/blog/2007/04/11/pushing-technology-with-pornsounds-familiar/</link>
		<comments>http://unitzeroone.com/blog/2007/04/11/pushing-technology-with-pornsounds-familiar/#comments</comments>
		<pubDate>Wed, 11 Apr 2007 21:05:03 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Random Thoughts]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/wordpress/?p=86</guid>
		<description><![CDATA[A little offtopic, but I found this one interesting. Everybody knows the VHS/Betamax story. Sony bigshots didn&#8217;t want to publish porn on their superior format Betamax and as an result the public fled to VHS. Or so the story goes. &#8230; <a href="http://unitzeroone.com/blog/2007/04/11/pushing-technology-with-pornsounds-familiar/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A little offtopic, but I found this one interesting. Everybody knows the <a href="http://www.mediacollege.com/video/format/compare/betamax-vhs.html">VHS/Betamax story</a>. Sony bigshots didn&#8217;t want to publish porn on their superior format Betamax and as an result the public fled to VHS. Or so the story goes. Now here&#8217;s a bunch of geeks &#8216;turning the trick around&#8217;. How would you get the world to start using <a href="http://en.wikipedia.org/wiki/Ipv6">IPv6</a>? Well, maybe if we offer some free pr0n ? (I&#8217;m guessing comment spam will skyrocket on my blog, after this post).<a href="http://www.ipv6porn.com/">The Great IPv6 Experiment</a> promises that after a user converts his good trusty old IPv4 protocol based connection to the newer superior IPv6 variant, the users will be offer some (10Gb) porn content. Why ? Because they want you to move to IPv6. Not that long ago IPv6 would be mentioned in one breath with that other &#8216;new&#8217; tech : Web 2.0. While that&#8217;s still going strong, the buzz around IPv6 is kind of out&#8230;.tired, so to say. This stunt will surely at least get the technology some renewed attention, and <em>maybe</em> even accelerate the implementation of it. We&#8217;ll have to go IPv6 one day anyway,<a href="http://simple.wikipedia.org/wiki/IP_address">since IP adresses will be running out</a>, especially now all these new little devices like mobiles and such are going to need their own unique ip too.As a sidenote to this story; my ISP <a href="http://www.xs4all.nl/">XS4ALL</a>, has been offering free IPv6 access to their huge binary news-server (can you spell out <a href="http://en.wikipedia.org/wiki/Warez">w-a-r-e-z</a>), <a href="http://www.xs4all.nl/allediensten/experimenteel/newszilla.php">newszilla</a> for a long long long time, presumably for the same purpose (getting IPv6 used, that is).Surely not all new technology can leverage pr0n as the main content / marketing trick. Turns out, &#8220;actors&#8221; in these &#8220;nature movies&#8221; might not be flattered by the <a href="http://slate.msn.com/id/2094788/">HDTV revolution</a>. Also, <a href="http://www.macworld.com/news/2006/05/02/pornhd/index.php?lsrc=mwrss">some believe</a> that the battle between Blu-ray and HD-DVD will be fought and won in exactly the same way that age-old VHS/Beta story went.To keep this post at least a little flash related; here&#8217;s my thought on that in relation to our industry&#8230;..I&#8217;ve always thought that after the initial usage as banner phase Flash would be one of the most used content delivery platforms for the worlds internet p-i-m-p-s. But as to date I can&#8217;t remember receiving or seeing a porn site solely based on Flash technology. Do they even exist ? Searching for Flash + Porn on google will be like looking in a NSFW / raunchy haystack. As the flesh-entertainment industry is probably to be considered the real early adopters, are they using Flex yet ?  But for Flash being used in that sector, I was really a bit afraid this would happen, and flashers would be come the <a href="http://www.ichlache.com/porn-production-assistent-914-out.html">production assistants (not NSFW, but if you&#8217;re at an uptight office, it is)</a> of the online sex industry&#8230;So will WPF/e start the porn battle against Flash ? Will the battle between Apollo and WPF be settled in which desktop app will deliver the most offline enabled XXX? Yes, phun intended. Don&#8217;t take this post too serious. Feel free to comment, but keep it SFW.</p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2007/04/11/pushing-technology-with-pornsounds-familiar/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>OT : moving to mediatemple&#039;s Grid Server (lite)&#8230;</title>
		<link>http://unitzeroone.com/blog/2006/10/23/ot-moving-to-mediatemples-grid-server-lite/</link>
		<comments>http://unitzeroone.com/blog/2006/10/23/ot-moving-to-mediatemples-grid-server-lite/#comments</comments>
		<pubDate>Tue, 24 Oct 2006 05:14:30 +0000</pubDate>
		<dc:creator>UnitZeroOne</dc:creator>
				<category><![CDATA[Random Thoughts]]></category>

		<guid isPermaLink="false">http://www.unitzeroone.com/wordpress/?p=56</guid>
		<description><![CDATA[After doubting for a bit and a call to Mediatemple&#8217;s customer service desk, I&#8217;ve decided to move to their new Grid Serve r setup. They&#8217;ve made it pretty easy, but tomorrow the DNS will be changed; I expect some downtime. &#8230; <a href="http://unitzeroone.com/blog/2006/10/23/ot-moving-to-mediatemples-grid-server-lite/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>After doubting for a bit and a call to Mediatemple&#8217;s customer service desk, I&#8217;ve decided to move to their new Grid Serve r setup. They&#8217;ve made it pretty easy, but tomorrow the DNS will be changed; I expect some downtime. Well, cross my fingers and hope it won&#8217;t be too much work to setup my movabletype install (this is a self-install, I&#8217;m not going to be paying MT 5.95 per month for it).If all does go well and quickly, I am looking at more storage space (was 2GB, GS will be 5GB), a higher data-limit (was 30Gb will be 500Gb) and hopefully, that thing I&#8217;ll need the most; more bandwidth.To be honest, I&#8217;ve been looking into dreamhost.com for a bit, and their offer looks pretty good. Jabber, svn, RoR, etc&#8230; I&#8217;m hoping the GS server will bring me the bandwidth; unitzeroone.com is pretty slow sometimes, and uploads at 30Kbyte/ps are pretty slow now-a-days; for now I won&#8217;t go through the hassle and stick with MT.</p>
]]></content:encoded>
			<wfw:commentRss>http://unitzeroone.com/blog/2006/10/23/ot-moving-to-mediatemples-grid-server-lite/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

