Categories Displayed in Flash

Archive for October, 2007

Flash CS3: Debugging getting line numbers.

It's helpful in debugging code to get the line number and the name of the file. This is easy if your using the MXML compiler, via the -verbose-stacktraces and -debug but what about using Flash CS3?  At least on my system by default null errors during runtime look like:

Error #1069: Property null not found on ...your class and there is no default value

at com.yourclass.::MyClass$someFunction()

Which isn't particularly easy to trouble shoot. But if you go File>Publish Settings and checkmark Permit Debugging you can get the far more useful, where 138 is the line number

at com.yourclass::MyClass$someFunction()[C:\\com\yourclass\MyClass.as:138]

Adobe Max 2007: Sneak Peeks

This message brought to by the letters A and B. A for Adobe kicks ass and Blooz Brothers...doing a faithful rendition of the blues brothers.
3rd grade easy for drag and drop, multi-camera, green screen support, video streaming live or output to AVI. No timeline, simple tray metaphor. Anybody can now be their own video blog reporter/news station.
Skype killer? Voip, P2P data streams, *in the flash player*, completely brandable, activity detection of audio, PSN connections (e.g. cellphone), directory service.

Flash Home, integrated into the mobile device on the hardware level, not a browser, meaning you can directly boot into it.  API's to get photos, contact lists, call lists, web data, Highly optimized serverside data, RIA development metaphors on the mobile platform. Actionscript api's. e.g.

function onIncomingCall(...){

switch(incomingCall.areaCode)

case 650

//load up bay area graphics

case 310

//load up  Los Angeles graphics
}

Photoshop LE. Consumer online version of Photoshop, amazingly easy to edit images online.  Flex based UI, tree based controls, real time client side flash previews of image transforms. Clone tool. Command based implementation with a full history (non-destructive).

Fireworks with MXML aware wireframing easily skinnable, publishable to Flex and AIR. Looks like Fireworks is turning into the skinner for Flex apps. Hotspots and Javascript for some interactivity.

Coldfusion is now a targetted language to AIR, with offline online synchronization of data (think outbox, inbox), with only a few tags/lines. Seems like .Net targetting one runtime, tight web integration, multiple incoming paths to creating content....except. I seriously hope this put the nails into Vista/Microsoft.
It's interesting to hear the applause as related to the crowd interests, photoshop, coldfusion.
Web to Print: Indesign server for RIA as the front end, output to print. Online verison of the offline product used for layout, upload a template with multiple themes, live preview wysiwyg, nice side bar for task flow, accordion flow. Once data is captured reflow it into other designs. Output PDF for local or printers.

10 years of flash, what's in the next 10?  Flash IDE is having another major update, live video during editing (duh!), pick colors of the playing video etc. Better WYSIWIG = less hitting test/preview (yes!).  3d transforms, live filters in. Graphical path on the stage for animating paths...no more keyframes. Tweens aren't a part of the timeline, and can have replaceable targets. BONES!! on the shapes!!! and MovieCLips with runtime IK. *and the crowd goes WILD!!!!!*

Flash Runtime integrated inside the Acrobat Runtime.  PDF == portable media format, think of it as zipped secure packages of the web emailable anywhere. e.g. H264 video or AAC video/sound embedded. Say capture a website and make it a PDF.  Bridging the Javascript of PDF and Actionscript of Flash with the webaccess, so dynamic, so a PDF link jumps a flash map browser. Real time collaboration on the document when using the CocoMo product, including server side push.

Flex on linux. I didn't realize that wasn't possible...eh isn't that what Java was supposed to do run anywhere? vi + shells scripts.... nah Flex 3 Builder Alpha on Linux (on the labs!). code hinting, debug, code hinting, etc...no design view though yet.
C/C++ -> Flash AS3 Conversion.  Meaning you can translate C libraries (e.g. XSLT, PHP) to Flash, and then wherever swf can go, e.g. AIR.  They demoed converting quake 1.0 into flash.  You can think of Flash virtual machine increasingly simialr to the a virtual OS, that's portable.

Seam Carving, the engineer Shair was hired by Adobe and I can imagine his tech will be used anywhere that images get output in the Adobe. Interestingly it's only 20 lines of code, and the metadata is compact so it can go wherever the image goes and can be reflowed, this seems similar to wavelets minus the ability to retarget.

Adobe Max 2007 Keynote Day2

Adobe is rolling a whole bunch of features, services primarily: Sharing, Dynamic Image Rendering, P2P video chat service. They are reducing the content creation barrier to entry for people using rich media, and extending it towards the backend 'behind the (monitor) glass' so to speak with LifeCycle and some other things.
The services are very cool but some of the presentations...are um. Painful. You can tell some of the geeks don't like the spotlight.

One of the final pieces, was well received. A new product inbetween PhotoShop+Illustrator+Flash and Flex named Thermo. is the first time I've heard of it. Seems similar in some aspects to the tight integration between Designer and Visual Studio for the .Net family.
Thermo is Designer centric, pushing the design (interactive) towards the programmer:, RIA Design tools, import any asset, convert it to skins on components, wire up interactivity without any code. Using mockup data with similar schema, outputs to Flex.  MXML with extentions for designers...any shapes that Flash supports, so that Thermo seems to be positioned as a compositor of assets from flash, photoshop, etc that outputs to flex compatible.   Dynamic conversion of types, like taking a Photoshop image  into a Flash Textfield, for punching/dynamic holes into the app.  With code view....shudder maybe designers might eventually learn some xml.

Adobe Max 2007 Day 1.5

So last night was the event kickoff.  I felt the presentation I gave at Ignite went well. Though I didn't do any beatboxing, the mic handling skillz came in handy. The entire event is being video'ed and I imagine will end up on the blog or related sites.
Day1:

The Keynote tipped off many new features across the Macro...er Adobe product line. There is a strong push to Desktop/Internet integration with AIR. The most inspiring consumer example was the anthropologie catalog where you can drag a user photo in and then select a pixel to see what in the catalogue match...accessories and clothing in a semi radial view. I could imagine pairing this with the Kuler to come up with themed sets.   Then the semi obvious business cases of dragging a vcard/excel from the desktop having it import or render in the air, and then synch with web services, and output the custom thing to PDF.  Which got applause, but..back in 2000 we were working with  variable postscript for this, sad to see it's taken near a decade before it's viable.    Another eye opener, was since AIR has a full web browser you can point it to *any* URL, and then 'snip' an area of that screen, that live feed into a component, turning it into a widget in just a few steps, this is a new type of mashup.
Flex3 supports refactoring..which is great. So comparing to the flash timeline, we're about they year 2000 in Java (VisualAge anyone?) ;) I wonder how long it will be before the FlashVM supports hotcode recompiles on live code. Flex finally supports profiling so you can see the biggest code hogs and memory useage, which I'm hoping will also be available to people developing with Flash first workflows.
The highlight for me came at the very end when they discussed the upcoming Flash player feature changes. Key is text, and intrinsic 3d transforms, custom blend filters.  Text has always been an achilles heel of Flash especially when getting into international charactersets, and editing which is where Flash is heading, from a predominately sit back to more interactive.   This is HUGE. In Flash8 ...not that long ago, (having attempted to build a rich text editor) it simply wasn't possible due to textfield and player limitations, so it wasn't the imagination that was limited it was flash, and generally.    Understandably this is a complex topic, as every local has their own rules for line breaks and such, and editing text with nested formatting is complicated...even after a decade Word hasn't gotten this right. Multi-column text fields and auto flowing is now possible using the new (yet undisclosed api's). Also Adobe has acquired the Buzzword text editor...which I haven't played with yet but have heard much about, smooth ui, inline photo resizing, wrapping of photos, tables etc. This is great to hear, and congrats to the Buzzword team. While normally I'm wary of small companies getting gobbled up by bigger ones,  in this case Buzzword gaining Adobe's muscle benefits us all, this might mean that Flex and Flash might eventually get the kick ass editing tools, and we can all play with in our own apps instead of reinventing them.
The intrinsic 3D transforms I've been suspecting would come for awhile, especially given the degree of 3d expression in the Afterfx video, and many OS exploring.  While papervision has great 3d, it comes at a cost, everything on the stage is a bitmap projection of a component, meaning that interactivity is generally compromised.  In addition papervision is in Actionscript, which is fast..but still way slower than using native hardware for these operations, With the new 3d you can rotateX, rotateY, rotateZ, with perspective transforms (which currently have to be approximated by subdividing into triangles). One demo they showed was a video player rotating in 3d, still maintaining it's standard player controls for scrubbing etc. It's as yet unclear what percent of the 3d will be in the player versus script.
One thing that people fail to realize that much of this web driven stuff could have only happened about ...now. Mac and Windows finally share a common processor so the player can start to unify native instructions, and the multi-core allows for hardware fullscale streaming HD interfaces with or without dedicated video card support.
Also if your going to a conference I strongly suggest getting new and two batteries. My dell so far has been going for about 3.5 hours on the first battery and have a spare for the second half of the day.