August 25, 2005

Flash vs DHTML: Round 2

Filed under: Flash — Steve @ 1:25 PM

Writing about web page http://www.hive-brain.com/archives/000043.php#more

There are two main types of applications where I think Flash is a big lose compared to HTML:
1. Anything with a fair amount of textual content
2. Anything with heavy use of forms/ standard UI controls. My initial post mentioned a couple of missing HTML tags whose absence cause me problems, but those individual examples are not the point. The bigger point is, Flash (as a vector animation tool) is never going to be nearly as good at presenting text as a real browser.
I’ve come up with clever (and bandwidth-heavy) solutions for things like sub- and superscripts. I’ve embedded symbol fonts so I can present the quivalent of HTML entities. But isn’t it a waste of my development time to be solving problems like the presentation of subscripts, when there already exists an environment that can handle that easily? And if I’m presenting lots of textual content to a client, wouldn’t it be better if the experience they had with that content was like their experience on every other site they visit (Things like “select all”, scrolling, resizing, etc.)
Another big issue with presenting text in Flash (and one I’m grappling with right now) ha to do with accessibility and exposure to crawlers. Sure there are things you can do, and I’m sure Macromedia has some spiffy ideas on their site somewhere, but again, isn’t that a big waste of a developer’s time?

I’m with you, Charlie :-)

August 22, 2005

Mobile device development realities

Filed under: Uncategorized — Steve @ 8:53 PM

Writing about web page http://news.com.com/Write+once%2C+run+anywhere+not+working+for+phones/2100-1037_3-5788766.html

Though the cell phone industry has made tremendous strides in the last two years, it’s becoming clear to engineers at Sun that the ultimate goal of “write once, run anywhere” may never be fully realized because the cell phone market is simply too diverse, said Eric Chu, a Sun senior director who played a role in much of the early MIDP development.

Via Flash Devices:
Interesting article on CNET, about fragmentation of Sun’s Java Mobile Information Device Profile (MIDP). The article attributes the problem to the diversity and growth of mobile platforms, and the resulting difficulties that Sun is having in maintaining the core ‘write-once, run anywhere’ strength of Java.

August 18, 2005

Flash Influences: Tokyoplastic

Filed under: Animation,Flash — Steve @ 11:02 PM

Writing about web page http://www.tokyoplastic.com

The first in my series of ‘inspirational and aspirational’ uses of Flash, or as I prefer to think of it, ‘Flash stuff that I think ROCKS‘. The quality and fluidity of the animation, the wonderful artwork style, and in particular the use of sound by the Tokyoplastic team had my jaw open all the way through. Turn up the volume (especially if you have big speakers) and try Drum Machine or Music Box.

Apparently this stuff is created using something called a timeline . Never seen one myself…

August 11, 2005

FPAD Day 4

Filed under: Uncategorized — Steve @ 9:24 PM

Lots more on creating effective OO-based Flash today, including the development of custom behaviours that can be re-used easily and lots more practice on creating and extending class files linked to Flash elements – screens, components, objects etc. However, scope is a real problem when coding classes, because the scope of function literals, timeline and movie paths can really confuse unless you have a clear idea of how the framework operates. The problem is that Flash has several added complications to the conventional inheritance tree – the timeline, nested movie clips, _root, function literals, screens and several interpretations of the this keyword means that you have to be very careful about what relates to what.

Tip re the Zoomify app – AS1 uses prototypes, so one way to list all methods attached to the prototype is to trace back a for/in/typeof command that will list everything in the prototype. Also, after a brief dig in Livedocs, it would appear that the reason why the app in IE isn’t resizing the components is down to an ActiveX-based timing problem; after checking, the Stage.width property is always passed as 0, which is why the resize never occurs – I can recreate this easily using the debugger, so I need to force a delay onto the object size calculations.

August 10, 2005

Flash 8 accessibility

Filed under: Uncategorized — Steve @ 9:35 PM

Jon H noted that Flash 8 doesn’t appear to have made any major steps forward in accessibility. There are measures that were available in version 7 that have been enhanced in 8, although it’s still a long way off being standardised, relying heavily on Microsoft’s MSAA technology.
From the Macromedia site then…

Users will also need a screen reader that has integrated the Macromedia Flash Player implementation of MSAA. As Macromedia Flash Player 8 is released, these include Window-Eyes from GW Micro and JAWS from Freedom Scientific. More information about the Window-Eyes screen reader and a demo version are available at www.gwmicro.com. Finally, screen reader users will need to access Macromedia Flash content using the Microsoft Internet Explorer browser. This is the only browser with support for MSAA. When a screen reader encounters Macromedia Flash content, it typically announces the beginning and end of each Macromedia Flash movie. Otherwise, the content functions the same way as HTML content on a web page.
An improvement has been made to the Macromedia Flash Player 8 that makes it easier to assign a specific reading order for content using a screen reader. An author now need only specify values for the relevant objects on the screen and not every object in the movie. The player will reorder the objects into the desired reading order. By default, Macromedia Flash Player reads text elements, buttons, and input text in Macromedia Flash content. Using Macromedia Flash 8, designers and developers can assign text equivalents for movie clips and even entire movies.With the new accessible components, designers and developers can easily create accessible web applications. Even the most complex movies can be made accessible quickly and easily.

So, a step in the right direction, unless you prefer Firefox to IE, or use a Mac, or you do use Windows and and unwilling to swop your tried and tested screen reader to one with MSAA (all 2 of ‘em currently although JAWS is popular). It’s worth noting that unless you are exclusively using a screen-reader, it’s likely that you wouldn’t even notice that accessibility functionality is even enabled within a Flash movie. The counter-argument also says that Flash applications are primary visual anyway and that providing you can offer users some form of alternative (albeit one that needs a proprietary technology) this represents ‘reasonable provision’, but I’m unconvinced that this would stand up to legal scrutiny. 8 does however make it much easier to include accessibility functionality so there’s no excuse for omitting it entirely. If however you are a partially-sighted OSX or Linux user, I’m afraid you might have to wait until Flash 10 to really enjoy Strongbad or 2advanced

FPAD Day 3

Filed under: Uncategorized — Steve @ 9:10 PM

A really interesting and informative session; we rejigged the try/catch work done yesterday into proper error handling classes, and moved onto converting all work done so far into a single class file. We then converted this into an .mxp packaged Flash component, complete with UI parameters, default values and installer – very cool.

August 9, 2005

FPAD Day 2

Filed under: Uncategorized — Steve @ 9:45 PM

Today primarily covered event handling, lockroot and scope, and once again this was mixed with interesting tips and tricks on development workflow and the Flash IDE; while scoping is usually fairly simple to understand, Flash has added complications related to the nesting of movies and the scope of the this keyword. Using _lockroot and relative paths is the usual way to avoid this. We also covered includes, static members and object instantiation.

Following up my note to self yesterday (to find a suitable versioning plug-in) – looks like many Flash developers have tried Eclipse and the Sourceforge AS2 Editor plug-in, taking the workflow out of the Flash IDE almost entirely.

August 8, 2005

FPAD Day 1, Flash 8 announced

Filed under: Uncategorized — Steve @ 8:05 PM

Day one of the Flash Professional Application Development course went well today – mainly a recap of what we’ve done already, plus some interesting new odds and ends; a limited set of version control functionality is available if Dreamweaver is installed and there are ways of using CVS or similar (mental note: look for a suitable plugin). We also looked at some of the built-in classes and went over some definitions (static methods, anonymous functions etc.).

The format is slightly different to the last courses – no tedious lab exercise to do and we are working from a proper book. The material will get more complicated later in the week, to include development of components.

..which is all quite timely, because today being 08/08, Macromedia announced Flash 8 as promised, and it looks very nice indeed, with a range of new features for designers, animators and developers. In addition to the new optimised engine, the video alpha effects look especially nice.
Can’t wait to get my hands on it, if John will let me pre-order it :-)