r o b l o g

Flash Player Archive

This is for future reference…

Flash Players
Adobe has made the archived Flash Players available for download at the request of the Flash developer community. Adobe Technical Support does not provide support for the installation or use of the earlier versions. Refer to the readme.txt in each zipped file below for the description of files provided and platforms supported.
Archived Flash Players available for testing purposes

Release Notes
Read the Flash Player release notes for a full list of Windows and Macintosh issues that are still outstanding.
Adobe Flash Player Release Notes

Twitter API wrapper for AS3

I spent an afternoon trying to get my hands on a decent twitter API wrapper for as3. I tried the swx twitter api which is a great idea (bit concerned at how he will maintain and scale this solution) except I ran into a 40kb AMF error for large api returns for which I couldn’t find a solution. I then moved over to the Tweetr API. This has a nice api with some useful demos to help get started, but I found it’s downfall is the proxy which has too many dependencies ( .htaccess / ModRewrite, curl and php5+) for my server.

I then found Twitterscript. The lack of documentation was a bit off-putting, however with a bit of googling I found a simple demo to get me rolling, and more importantly a simple workaround to the proxy issue.

Hope this helps - if anyone is out there.

Thoughts on twitter

I first came across twitter a while ago, but I have only recently started using it on a regular basis. In recent months it has suddenly exploded in popularity and this has prompted me to make more of an effort to understand it. Watching the recent TED speech by it’s founder certainly contributer to my curiosity.

It seems that, the original idea was for it to be used to let groups of friends and colleagues know what each other is up to using status updates. I couldn’t really see the benefit of this and quickly passed it off as nonsense. But it has matured from that point where it is now a fascinating informal communication channel. By following friends and people I’m interested in, I have found a lot of interesting links and opinions, passively by scanning through the feeds.

People’s opinions of twitter seem polarized - I don’t think the silly name helps. I also find the open nature of the system promotes a casual dialog to interesting/famous people who would otherwise be distant and unapproachable.

Gaia framework

I’m always open to new approaches to the flash workflow. The worst aspect of a flash build is the tedious nature of stage layout, page build animation and asset loading. So to speed up a website build, I recently used the Gaia framework to help build a website. The Gaia framework is not only a package of classes to handle page and asset loading, but some rather lovely JSFL files that automate the creation of all the template files of a website. After defining a page structure in an xml file you hit a button and an entire folder structure, class package, fla files and swf’s are created. It is quite remarkable and you can get a ‘white site’ built in a few minutes.

That is the good part. For a first-timer there is then a rather steep learning curve to get the site configured to your requirements and understanding how the framework can be manipulated. I quickly found some rather startling undocumented ‘features’ of the template files that really threw me. First, I found that the fla files had a rather obscure setting: “Automatically declare stage instances” unchecked in the publish settings. This is a setting I have never come across and took a while to discover. Secondly, the preloader was coded in such a way to cancel mouse events bubbling through to the Display Objects below. Again, bazaar and unexpected behavior that takes a while to resolve. In fact the live site has an issue with firefox where the initial entry-point swf loads twice. Gaia has a feedback forum but if you look closer a lot of queries are either left unanswered or are grossly lacking in detail.

So all these unexpected quirks probably took longer to debug than it would have taken to create my own navigation and page load model. In conclusion I might use it for some extremely quick-and-dirty builds but not for more comprehensive site builds. I’m quite happy with my own flavor of MVC which I have been refining.

House of Cards - stereoscopic

I downloaded the animation data from Radiohead’s House of Cards music video from google code and rendered a frame in papervision. It took me about 10 attempts to download one of the zip files, but when I did manage to download it, you get a csv file for each frame of the music video. I open the csv in excel, and it show four columns of data, x; y; z; and intensity. I then formatted the data so I could dump it straight into actionscript as array data: p.push({x:X, y:Y, z:Z, c:C}); . I had to extend the ParticleField Object Class to allow me to drop the 3D data points from the animation Data. I then rendered two scenes side by side, each with a different camerax position to create a stereoscopic view. If you cross your eyes it really does look 3D.

I have added it as an experiment at robshearing.com

AMFPHP vs MediaTemple

I just set up AMFPHP on mediaTemple (gs) and I ran into a bit of a problem where I couldn’t get any messages back from AMFPHP. I’d get an error of NetConnection.Call.BadVersion which apperas as faultCode:INVALID_AMF_MESSAGE in the service broswer.
It turned out to be an incompatability with php 5.2 on the MT server. The solution was simple and elegant, I had to make an entry in the .htaccess file to enforce a specific php version. The answer is on knowledgebase:

AMFPHP incompatibilty with PHP 5.2

Pay Calculator

Paycalculator.com.au
I have put up a new site, paycalculator.com.au that will calculate your net pay. It works for Australian incomes (single) and has the latest tax brackets. It also shows 2006-2007 and 2007-2008 financial years so you can see how the tax system has changed over the years. My pay is going up by $50 a month!

I used the same css as this blog but updated the header swf feature. I also added a more information section to help explain how the calculations work. There is a links page too, but it’s a bit dry.

I built this in responce to a lack of a good, simple, accurate online tax calculator. During my research, I became a bit suspicious of the calculator on the ATO website, as the numbers just don’t add up! I think there is a rounding problem that causes the calculations to drift. Moreover, all their calculators are awkward to use and often not complete or out of date. Having said this e-Tax rocks.

I’m also thinking of building a google gadget for it. I have a resized version ready to go. Building a google gadget is a pain. During the build I found that their API documentation was out of date and I also get a “can’t publish” error without explanation for no logical reason. At that point I gave up.

Arithmetic

I have just finished my first proper AS3 site (about time).
I inherited some work done by another developer, but it was left in a state - I think it got a bit too overwhelming for him. So I decided to rebuild the site structure and add a layer of logic behind the code. I used a simple form of mvc where the control and view were grouped. I also built it with swfAddress in mind. This added considerable complication as I have to have a single point of entry from which I could build the site from. The site structure was also described in xml so that it could be content managed - currently manually. I decided not to use E4X as the xml data’s structure was required. I have used E4X back in AS2, it is good for pulling data out of xml, but not so useful as a way of simply parsing xml into object data. I build a rock-solid XML parser in AS2 which would deserialise xml data into object/array structure. It has been used on hundrends of little jobs over the years and saves hours of development time. But as soon as I step into AS3 all my AS2 libraries are made redundant.
I learnt alot about AS3 whilst building the site. The hardest part was probably dealing with errors - in my case errors which occurred when I had to deal with a dynamic menu structure which may have 0, 1 or n nodes. In AS2 you can get away with using an undefined state as a valid condition, but in AS3 it will trigger a nasty error that will only express itself at runtime. Ouch.

Arithmetic

The next phase of development will involve building a fileshare component to allow files to be uploaded/downloaded and commented upon by an administrator and client.

movember

Movember - Sponsor Me

i ♥ etsy

Etsy
Buy Handmade
shearing

Next Page »

Mexico