Preview at resources.ericd.net
Download the sources (zip).
NBC supplied iTunes 30% of iTunes TV show sales. Now supplying nothing, its going to make nothing. NBC streams their content live for free on the internet after a show airs, so why the hell would they be so stubborn and try to rape paying consumers for their content?
My TiVo will suffice. I do own a bunch of The Office scattered across iTunes accounts, but I never relied on them. Most I already have TiVo'd but I bought them anyway... now impulse purchases won't be going to NBC. Oh well... you greedy bastards. Bon voyage, bon chance. Perhaps you'll get your head out of your arse and realize what you've done and put your content back on iTunes for $1.99 an episode.
Thank you Apple. One could argue that you should have just agreed the $4.99 and take your cut (albeit much smaller as consumers would be furious & not purchase) -- but you honestly care about us.

Co-worker Zach Bolena pointed me towards Stefano Scozzese's site today and its extremely inspiring. I love sites where you know the designer took great pains in every minute detail: audio touches, animation flourishes (small and elegant), clean layouts, etc. This is some real eye candy, and the scripting seems to be very efficient and effective. Wonderful stuff for a Friday afternoon.
Included are the sources (png, psd, fla).
Download the sources (zip).
Labels: release
This week we got to find out about the H.264 announcement. That was awesome and it was really fun (and frustrating) to know that ahead of time and then see the reaction. But stuff at MAX is going to make that announcement seem like a local story about a firefighter saving a cat from a tree.I'm an Apple fanboy and an Adobe one as well. I don't see the passion for rumor and innuendo with the Adobe crowd (probably because we are too busy working), but I wonder if anyone has any ideas what might be announced?
I’ve been hearing a ton of cool things that we’re doing at MAX and I think everyone in our community as well as the wider world of Web 2.0/business/enterprise will be blown away by some of the things we’re going to announce. You should register now.
I have a few (without any prior knowledge) guesses, but would be curious what your thoughts are. Leave your opinion(s) in the comments here.
Gracias.

I just came across Ben's well-written article (August 11th) about the process of creating the Kuler widget. This is great reading as it allows one to peer into the design/coding process and not just read about how to code something up that works. If there was a book out there where each chapter was a Flash application autopsy like this, I'd buy it in a heartbeat. I love hearing about people's design processes, what they encountered along the way, and how it call came together.
Ben's approach is quite elegant and its a bit inspiring for me. I really love articles like this. Since Pixelfumes hails from Pittsburgh (the best city east of the Mississippi), I like them even more than perhaps normal.
Included are the sources (I used James O'Reilly's Timer Class stuff to implement line-by-line paragraph animation), pngs, psds, etc. Don't comment on the code, this is pretty old stuff and I would have written it differently today for sure... even in AS2. I haven't cleaned it up at all, but I checked that it works. This was based on .mp3 files. The new player allows for m4a, so take this and run with it.
Download the sources (zip).
Labels: release
Anyway, long story short, to get some of Alessandro's plugins to work properly, one needs to set up a Project. So I started working this way, and WOW... its extremely cool. And I just discovered this... after a build, it shows the SWF in the Project Panel... and you can explode it to show the classes and linkage assets in it!
Holy crap. I know we can inject class data into SWFs, etc. but I never saw this view before. Thats pretty freaking amazing. I love this editor. I wanna take this editor out to dinner, buy it some drinks, play some Yanni for it, and wake up in the morning with it.Today I changed the way I work... and its only going to get much better from here. Coding hasn't been this fun in a while. Others have been knocking around with this for some time, but as I peel the layers off this sweet onion, I discover greatness and freshness. If you aren't using FlashDevelop for AS2/AS3 development (PHP even for that matter), you should consider it if you don't have FlexBuilder for AS.

I am a bit late to this party, but I just tried Powerflasher SOS and its a pretty neat tool. What is it?
POWERFLASHER SOS (SocketOutputServer) is a XML Socket server with a graphic user interface. Connected clients can send messages to SOS. These messages are shown in SOS. Further on commands from SOS to Client can be sent.I have a tool I use myself that allows for special tracing, but also allows for the inspection of anything in the SWF containing some special methods, allows me to call methods in the SWF, etc... all runtime (opposed to using something like XRay which uses snapshots). It works great, but uses LocalConnection -- and that proves to be a bit slow to be honest. Using a socket server is super fast. And this one is purty good. I couldn't get it to work in Parallels but its working great on my work PC. I got some internal error when I launched SOS. I think my Java is up to date but I need to check on that.
Anyway, you launch SOS (which has a passable GUI), and then use some socket code in your ActionScript like this:
myXMLSocket = new XMLSocket();And your Hello World string will populate the SOS window. Nice. I haven't tried sending commands into the SWF yet, but that shouldn't be too hard. I imagine that one could set things up to be generic enough to basically request/fire whatever you wanted and have it work.
myXMLSocket.connect( "localhost",4444 );
myXMLSocket.send( "Hello World" );
SocketStatus reports:
=============SocketStatus=============
LogPort is listening on Port:4444
CommandPort is listening on Port:4445
======================================
Alessandro is awesome, and you ask him about something and hours later you're testing it for him. Coding is awesome, but its more fun with Alessandro in the mix. The FD team has already done an incredible job with things, and I know Alessandro is just going to make that team much stronger. This is a great day. How many people get this excited about a fancy text editor? ;)

Ignite Boston is a night of geekery and networking. We'll have short talks
(5 minutes, 20 slides, 15 seconds per slide), launches of interesting
projects and products, and a few surprises, plus plenty of time to hoist a
beer with your fellow Igniters. (For those of you who attended the
fun-but-noisy first Ignite Boston--we've picked a venue that will allow
everyone to hear what's being presented.)
If you plan to attend, register at igniteboston@oreilly.com. When you
register, you'll also be entered in our drawing for a chance to win $300
worth of O'Reilly books of your choosing. The drawing will be at the
event, and you must be present to win.
To connect with some of the folks who attended the first Ignite Boston, go
to the Ignite Boston social network: http://igniteboston.crowdvine.com.
If you would like do a 5-minute Ignite talk on something cool, new, and/or
exciting, submit your idea(s) here:
http://ignitenight.thirdeye.railsplayground.net/events/form/ignite_boston%2C_2
We hope you can join us and contribute to the energy and excitement of
this unique event. And remember, no cover charge!
-- Your friends at O'Reilly Media
While coding live (TextWrangler on live FTP PHP and HTML pages) I had some Guardner (Ready For Take Off) [iTunes link] and its some really mellow coding music for sure. Enough to pique your interest without getting cluttered and distracting. Top choice code floyce.
If you click on the magnifying glass, you can enter your own zipcode or city name, and when you use it, that setting is stored on your machine. However know that it won't sync across other machines... the data is not being stored in a database on my server. So you'll have to set the location for each machine you use... but generally you might only use a few and setting the location is pretty painless.
If you'd like to add my weather badge thing to your Netvibes page, you can do the following from your Netvibes page:
- Click top left "add content"
- External widgets > HTML
- Paste the code below into the window, name the widget, and add it to your page
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="300" height="175" id="2004Weather" align="middle">A cool thing about this now is when I upgrade the icons (they need a lot of work), you'll get them since you're pulling the SWF from my host. Oh, and there is a ton of data I am not displaying that I could. I might work some more in. Enjoy.
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="http://www.ericd.net/swf/2004Weather.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#000000" />
<embed src="http://www.ericd.net/swf/2004Weather.swf" quality="high" bgcolor="#000000" width="300" height="175" name="2004Weather" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>

The newest addition isn't actually here, but we got to see the cute little peanut wiggle and wave from deep within the confines of their soft sanctum. What a wonderful day :) Ryan will absolutely love having a brother or sister, as shall we.
Slap an indeterminate progress bar down on the stage, because its too early to know the value of the bMale Boolean yet :)
Currahee!
I should dig some more about this, but for now its not allowing me to deploy an AIR application that I would like to use myself. Anyone have ideas about this?
UPDATE:
I updated my app.xml file, adding height and width attributes to the application tag, no go. I then added height and width nodes (shot in the dark), and no go. Perhaps Adobe has yet to really develop this AIR extension yet. Or I am missing something pretty obvious.
Update 2:
…
…
Okay so in theory we can do:
And then the XML file could be like this:HelloApollo.xml
This has not been tested yet, and we shouldn't have to do this stuff, but if it works, it works. Hopefully it will.systemChrome="none"
transparent="true"
visible="true"
height="400"
width="600">
foo.swf
Colin really took his time and did it right with EAS3. Its not a reference book per se... its a great introduction to the workings of AS3. Its a thick tome, and its fairly dense so I am going to have to spend quality time with it instead of skimming. Which is great.
The book has been heavily technical peer reviewed, so I don't have to worry much at all about the integrity of the material. Thanks for such a great book Colin, I like the new approach and this book must have taken a long time and caused the burn of much energy. I appreciate it.
Say you'd like to use the up and down arrow keys... and onKeyDown you check if its a press & hold, run an interval & do your own thing. Do this:
- Control Panel > Accessibility Options
- Use Filter Keys (selected)
- Click on Settings for Use Filter Keys (button)
- Filter Options: check "Ignore repeated keystrokes"
- Click on Settings for Ignore repeated keystrokes
- Set to 0.5 seconds
This is a HUGE pain in the ass if you are testing and then want to code, etc. I basically need to turn it on when I want to test. And then turn it off again when I want to code again. But its a big help I have found.
You'll need to change things a little since now we have the DisplayObject:
for (var n:Number = 0; n<this.numChildren; n++)Sometimes its a little easy to get stuck thinking in AS2 terms.
{
trace(this.getChildrenAt[n]);
}
How handy is that? Basically you don't need getters and setters if you have classes in the same package and vars, etc. are created using the internal access modifier. You can have the classes communicate without a bunch of extra code.
The post is from Oct. 27, 2006... so I feel embarrassed that I didn't bump into this one earlier. Maybe I did bump into her, but my mind was somewhere else and it didn't register. Its a great article to read in my opinion.
I just tested this quickly and it seems to be working. I am not setting a buffer on this. But its working.
My RSS URL hasn't changed, but its now ATOM. Adobe's AXNA isn't picking up the feed yet, I put in a request to have it updated and hopefully it will be approved/added to the list of aggregated feeds. If you use other means you should be okay.
My podcasts have to be updated and replaced. I probably need to feedburner them again -- if anyone cares. I might however just redo the whole thing and start from scratch. Well... probably not -- people (the handful out there) might just get fresh podcasts that are the old fare come alive on them.
Chances are I am missing something else, not sure. Hopefully not. I'll button things up in short order®
Update:
Its out people. Download the new beta player (9,0,60,184 installed) here at Adobe Labs & enjoy! I am testing this all over and its awesome. Awesome.
We will now be able to sling .mov, .mp4, m4v, .m4a, and .3gp files directly into both the browser based player and Adobe AIR (as well as FLV and streamed H.264 -- licensing not withstanding). Wow. Thats even more icing on the Adobe Video cake. This is going to open a whole slew of different opportunities for designer/developers and also for the media-hungry populace.
We'll be able to use a main coding method for integration of these digital assets, instead of approaching different media sources... well... differently :) Audio and video, come on down. You're the next contestant on reinvigorating the web!
I already have a SWF ready to deploy that is encoded with H.264 and AAC. All I need is the new drop of the beta player and I can slap it online and watch it. All without a .flv extension to be seen (well... I could rename the H.264 with a .flv & it wouldn't matter since the player inspects the header and not the extension). Bring. It. On.
I am thrilled. Absolutely thrilled about Adobe's announcement. Reading Tinic's post (Tinic is a golden god), I am really excited about whats going to happen to both video and audio in the Flash Platform. Read Tinic's post for the details, and the announcement for generalities, but .h264 is coming to Flash -- which drives Blu-ray and HD-DVD. I imagine this is in response to Silverlight's major (to me anyway) differentiator to Flash: high definition video playback. Now that Flash is getting that, plus many other super nice things, we have super choices in delivering our media online and offline (remember AIR).
Flash CS3 AIR Update.
Well now, the new update to the Flash CS3 IDE brings with it an easy way to generate AIR applications. In a matter of seconds, using the IDE and the new commands, I was able to take a little something I was working on & turn it into an AIR application. I still prefer Flex Builder for this, but if you want to go older school and use the Flash IDE, you certainly can. Thanks to Grant Skinner and his hard work getting his panel going a while back, but the new way Adobe opened up is wonderful.
I think that I did find a bug when loading in a .css file into the AIR application from both local and online sources... the AIR application will crash. If anyone is interested, I can make that debug message available... its rather long. I haven't tried it from FB, but I think I've done it in the past and it worked correctly.
Hmm. I may twitter this and see if anyone else can repro. So in the AIR test file here, it did load css for the rollover states for the links, but I had to turn that off in order to prevent the application from crashing.
Update:
Instead of using Adobe's "AC_RunActiveContent.js" javascript file and seeing all that nasty object and embed garbage, use SWFObject, I used it here for this post.
Its as easy as this:
In your head: <script type="text/javascript" src="swfobject.js"></script>
Where you want your badge in the body of your page:
<div id="foo_flashcontent">
Install <a href="http://www.adobe.com/go/flashplayer">Adobe Flash Player</a>.
</div>
After the div somewhere (end of page or inline following is fine):
Easy, breezy, beautiful SWFObject. Above I had to change one of the < symbols as SWFObject was actually parsing within the pre tag content.

Now about sticks... I have a few composite sticks in my basement, I even have an old aluminum Koho (I LOVE this stick... its extra long and I can whip the hell out of it)... but I wanted to get thoughts on sticks from anyone else who is playing.
I have my eye on the Nike Bauer Vapor XXX Lite Senior stick. Haven't decided on a blade yet... not that important to me right now. Is the stick generally too light if you don't have the softest hands? $100 for the shaft and another $28 for a blade is a lot if you aren't sure how its going to handle. I suppose someone @ pickup might have one I could screw around with (but would you honestly lend someone else a nicer stick like this one?) Your thoughts on a good forward's stick would be appreciated.
P.S. www.dve.com is gonna save my bacon this year since living in Boston means not much Steelers. I can't do the sports bar thing here since I'm a family man. At least not for a few years. So I can do my internet streaming radio thing on game day, hell... I'll listen to WDVE even when the Steelers are on national television.
There are tons of utility classes that I have authored, experiments using my own code (and other's code to learn it more in-depth), and some tutorials I wrote a while back. I started up a special section sub-domained to help me keep things more organized and tidy. Hell, it could have its own RSS feed if I wanted (but I don't). I have a lot of room and a lot of sources. So from time to time I'll be updating resources.ericd.net. It will be fun, and its also a little trip down memory lane for me. I used to pump out experiments almost as fast as Keith Peters... well... maybe 1/2 as fast. But thats still a lot of experimentation. Stay tuned is all I can say for now. Oh... and my "RSS" feed is now ATOM.
Traditionally when you create a component & generate your resulting .mxp installer file, you distribute it or make it available. Then when you need to update the component, you generally make another version of the component and use that. This works, but its not very elegant. A component that when compiled into a SWF and runs online using code pulled into the SWF itself gives you the ability to update the component without distributing a new component.
Bandwidth. Yes. That is a big concern... however you can count on caching the remote SWF when its loaded, and you can change the version number of the SWF to pull in to use the code from... passing in a flash vars variable in the object/embed, etc. There are a few ways this could work, but I think you get the idea here.
So with some Live Preview magic, and a few kinks that have been worked through, a system has been developed allowing for a component to live and breathe even after installed onto IDEs everywhere. Update a single SWF or make another version of it (containing all the major code), update flash vars if going that route, etc. The component could even check a small XML file to know which SWF to pull to use for its core code. To get around the flash vars thing. A hair more bandwidth. But it works and its pretty cool to see working.

Link to Successful Software's article. Thanks for telling the world about this practice. Click-backs is pretty greedy, although hosting prices aren't cheap for sites that generate a lot of traffic and eat up a lot of bandwidth. Its still a lousy practive though and clouds the frontier of software one can trust. If it wins awards, one might assume that downloading and running it would be beneficial. However, now you have to pay special attention to the site offering the software, or else just ignore awards and look towards application comments from real-world users. I opt for that most of the time anyway.
Labels: software

Well, the DNS has snaked its way here anyway and I am now seeing the (mt) hosted version of my site. Its been a pretty painless process, except that I had to convert some of my ASP technologies to PHP. That actually gave me an excuse to learn some PHP and truth be told, its pretty sweet. There is a ton of PHP code circulating the internets now and whenever I bump into something I am unsure of, Google is a few keystrokes away from delivering me an answer.
With all of the ample room (mt) gives me, I'll be able to further enhance the site:
- More code releases
- More code and interactive examples
- More and better podcasting
- The option to videocast (this was never an option for me before)
- More robust client areas











