Archive by Author

Flash CS3 hates After Effects’ PNG files

Apparently I’m not the first person to have experienced this ongoing issue, but Flash CS3 borks when importing png’s that are exported from After Effects CS3. The symptoms of this problem are black pixels where the alpha channel is supposed to be and/or seeing a really high width/height when you drag the png onto the stage.

The workaround is simple enough though. Just open up old reliable, Flash 8, and import your PNG sequence. Save out the imported Fla and open it in CS3. Once open you can convert the flash version to 9 and the ActionScript version to 3 with no negative effects. Unfortunately, once you convert the file to CS3 it can no longer be opened in Flash 8 anymore, so I would recommend just one sequence per fla that you can export as a SWF to compose inside a class that loads that SWF. That way if the png sequence changes its no big deal to import it again.

A few tight Flex shortcuts

While playing with the new flex beta 2, I ran into some sweet shortcuts. The first is to put a standard function header code on top of a function. Just press the command + shift + d keys at the same time where you want the code placed. Whats really cool about this shortcut is that automatically puts @param and @return statements inside the comments! Remember that this style is readable by ASDoc too, so there are even fewer excuses to not comment your code properly (and yet somehow most of us continue to have this problem).

Comment Insertion Shortcut

The comment inserting function I found by accident, but the debug shortcut I intended to come across. To debug the project, just press the alt + shift + d keys, then press the f key and the app will start debugging. You can press it almost directly after you press the first sequence even though the bottom right menu may or may not show up. I’m not too sure how excited I am at the two separate required key entries, but after using it for a bit it gets faster and more comfortable.

Flex debug shortcut

Live remote debugging feature built right into Flex

I just ran into a very sexy Flex Builder feature for debugging live remote code. Previous to finding that Flex can actually debug live remote applications, I used the Flash Tracer plugin. Not that Flash Tracer isn’t a great plugin, its just that debugging by printing a crap load of trace statements is kind of like trying to wash your car with a toothbrush. Yeah, you can do it; but it sucks.

Anyways, to debug a remote SWF all you need to do is upload it to your site, then enter the uploaded URL link (to the HTML page that is the front end to the SWF) in the run configurations properties of Flex Builder. You can navigate in the Run menu item at the top and click on the Run or Debug sub menu, followed by clicking the option named Other.

One method of accessing build paths

Or you can click either the Run, Debug or Profile options from the icon bar directly below Run menu, and click the option named Other.

Alternative method of accessing build paths

Then in the launch paths section, uncheck the use defaults check box and paste in the URL to your remote application in the debug URL text box.

Enter in the URL of your remote swf and html to be debugged

Its helpful to have an ftp program running in the back end as you update your code, since every time you update your SWF locally, even if its just new debug points, you’ll need to re-upload it. One of the cool aspects of Flex is that you don’t actually have to hit the Debug button to update the SWF, after you change it you’ll notice that the SWF is updated. This will actually show trace statements to the Flex console and catch debug points on a remote SWF, way nicer than Flash Tracer, so long as you’re working on a Flex project. Happy debugging!

New Analytics beta is Pimpin’ some Flash

More and more Flash is appearing in Google’s stuff. First, Google Finance adds a sexy Flash chart. Now Google Analytics openly uses Flash for its charting. Others follow where Google leads…

Is Silverlight really a good thing for the RIA industry?

It seems like every single blog in the world is welcoming the imminent arrival of Silverlight, and everyone seems to be predicting an increase of competition from its arrival. I’d like to offer an alternative viewpoint though…

Right now, in the RIA space there is a monopoly. AJAX doesn’t really count as a legit RIA platform, and Open Laszlo is propped (at least for the moment) on top of the Flash platform. There are lots of other little players too, some offering more than others, but none of them really live up to the abilities of Flash or the (promised) abilities of Silverlight.

The successful entry of Microsoft would form a duopoly. I believe that this will lead to an arms race of sorts, with each of the key players racing to get companies on board with their platform. Instead of an increased amount of innovation from competition, the two main players would simply fight tooth and nail to get the majors on their platform. No new innovation is likely to result here, as the two products have separate advantages and areas where the other cannot go. Adobe doesn’t make high performance Windows desktop API’s. Microsoft does not make design tools for the Mac, or more accurately, Microsoft doesn’t make design tools. For an example of how nasty this will look, just take a look at the two new DVD “standards”. That whole situation is just stupid, and nobody wins. XBox is HD-DVD, PS3 is blue ray, the studios are split on which formats. The main backers of each platform are pushing studios to do their platform exclusively. Innovation? Yeah, right. More like two giants taking turns smashing each other over the head with big bags of money and the last one left standing wins.

Still, there is no guarantee that this will be what happens in the RIA space. Because one player has a key advantage, what would normally happen is that Microsoft will fall in lock step with Adobe, cloning their features and trying to compete on price. Except Microsoft can’t do that. They can’t follow into the cross platform space and have tools that work on platforms other than windows and deliver on platforms on other than Windows. Microsoft Office and Windows still form the lion share of the companies revenue, and you just know they aren’t going to risk screwing that up to enter into a fledgling field that has no guarantees of being the next big thing. Ray Ozzie said in a dinner interview he had during the Mix’07 conference that they could focus and be really great on one platform (aka the standard Windows strategy), or they could focus on all platforms(aka Apollo) and be mediocre. So they really can’t clone Adobe completely because their biggest advantage, the Windows platform, is also their heaviest burden.

They say when competition happens, the customer wins. But in this case, the customers (developers), and end users could all lose. There will be two main plugins that will have no interoperability and will require separate installs and separate code bases. The last thing we need is an arms race between only two competitors, with end users being the ones that get tugged on like a wishbone. They don’t care about Silverlight versus Flash, they just want a better experience, and they want it to be seamless.