23 May 2007
Written by
Richard Leggett (

)
Published on May 23rd, 2007 @ 04:55:59 am, using 308 words, 496 views
This affects projects that make use of FLAs and runtime shared assets, commonly sharing things like fonts or components amongst several SWFs to prevent embedding them several times in the various files that might make up a project.
The first thing to note is the "Load Order" in the settings panel in Flash. It defaults to "bottom up", and this means it streams in the contents of the bottom-most layer first, before loading and executing code that lives on any layers above it.
This is key when using runtime shared assets because if an asset is not available immediately the Flash Player will not give you a warning, it will just cease executing ActionScript contained within symbols/classes that are on layers above and may leave you scratching your head for a while. The confusing thing is that runtime shared assets *are* loaded before code on frame 1 is allowed to execute, so if anyone has extra insights here that would be appreciated.
A typical scenario for an AS2 site/app:
Frame 1 - Layer 1: Contains a runtime shared symbol that has textfields used to embed fonts
Frame 1 - Layer 2: Contains code: "com.domain.proj.Application.main(this);"
Another scenario from the same project perhaps:
Frame 1 - Layer 1: Contains a runtime shared symbol that has textfields used to embed fonts
Frame 1 - Layer 2: Contains a symbol that uses a shared asset in code or on stage
The scenarios might work, but you may find that it does not in cases where the symbol on layer 2 makes use of any shared assets during the first frame, either by using them on stage, or in code.
The simple solution is to either remove the shared asset from stage, it will still get pulled in in the library, or switch the layers around so that the shared assets are on the bottom layer.
19 May 2007
Written by
Richard Leggett (

)
Published on May 19th, 2007 @ 05:57:21 am, using 257 words, 330 views
I've posted about Buzzword before, the upcoming online (/offline with Apollo?) word processor. To me Buzzword really illustrates why I continue to back Flash and Flex over AJAX. I don't care what people use if it's a good experience, but the limitations are definitely becoming more and more apparent, and perhaps in 2007 we will begin to see the Flash apps just accelerating away from the current kings of the RIA scene, not just in demos and prototypes, but in the real world. The great thing about this game is that you don't have to compete by spreading FUD, you can just build users by building better experiences, they (/we) are a fickle bunch!
I'd recommend watching the whole screencast, there are some real innovations in there for word processors, let alone a web app. Right now I use (Neo/)Open Office because it does everything I need and more. I tried using Google Docs but it was a little too rudimentary and hardly the same experience. However if Buzzword is offered as an Apollo app, and why not, then I'll definitely give it a go, and if it isn't quite there, the limits for a version 2 using a newer release of the Flash Player should alleviate any concerns.
Ryan Stewart is asking for great examples of slick, visually impressive ("sexy"), fluid AJAX applications, so far nothing that makes me say wow. I think Buzzword might become the bar things have to live up to, at least for a couple of weeks after its release 
View the screencast.
15 May 2007
Written by
Richard Leggett (

)
Published on May 15th, 2007 @ 06:09:32 am, using 158 words, 3410 views
I'm absolutely sick of this situation. Every time I send an email to anyone in my family (who all use Hotmail because of the MSN Messenger legacy) the emails dont come through. They don't even go into their spam folders. Hotmail/Windows Live Mail is simply blocking the emails full stop, any other account I send them to works fine.
I'm slowly moving them over to Gmail as it is a better service all round, the search works (unlike Hotmail), the spam filtering actually works (almost 100% fullproof), you get more space every day, and they don't block emails from competitors' services (that should be illegal anyway imho). Anyone else had this happen? Looks like this has come up before.
(I have a feeling this has something to do with me using the Gmail Pop/SMTP service, however this is perfectly normal email usage and as I said before I can send email to any other service without problem).
08 May 2007
Written by
Richard Leggett (

)
Published on May 8th, 2007 @ 03:27:30 am, using 508 words, 665 views
Fantastic, something else to learn
Sun bloggers have been dropping hints to look toward the JavaOne conference in and around all of the Silverlight posts that have clogged up the aggregators the last week or so, and it appears the announcement for their new AJAX/RIA alternative comes in the form of "JavaFX".
JavaFX makes use of a new scripting language and utilises the Swing APIs for UI. This probably comes as no suprise, I have drummed on to my poor colleagues the last year how AJAX's days are numbered in terms of the popularity it currently enjoys, it simply cannot keep up because HTML and JS were never intended to build this "new" breed of online app, too much reliance on the browser itself naturally brings with it serious yet fully justified limitations. We're reaching the top of that particular bell-curve now. For an example of this you just need to compare Google Docs (Google being the absolute cream of the crop in AJAX scene, yes I know they use GWT), with early pre-alpha screens of Buzzword. The potential benefits of using the Flash Player are limitless in terms of real-time document editing (binary data transfer over XML refreshes, bitmap editing, video embedding, animation creation etc). Microsoft, Sun and Adobe of course are all providing better tools to craft future of the web.
There's also mention that JavaFX will work on mobile, another de-facto requirement for RIA technologies now. An introductory tool is due for release today, let's hope we see a plugin for Eclipse to give it a bit of a head start there. As with AJAX and Silverlight, I'll give it a good solid evaluation phase, I don't think it's fair to bash or criticize until you've really tried something out (and used it in a real world situation if possible). Again, I'm very much doubting the capabilities will match what Flex has to offer, but let's keep an open mind! I'll be very keen to see just how rapid UI development is with JavaFX over using Flex, as I've known people to come to Flex 2 with no previous experience, and have a fully functional app with data consumption, data binding and liquid layout working in a matter of hours.
Read the article at infoworld here.
And then there were three....
Update:
I've just been sent an example of JavaFX in action from Emmanuel Okyere, plus source-code:
Run the Java webstart demo here
The source-code reminds me of something between ActionScript and Processing. However this one-liner worried me a little:
for (unitinterval r in dur 1000 fps 40 while not ship.exploded
and livingAliens > 0) {
This looks fairly horrid, something like Lingo in terms of verbosity, but I imagine this is just someone playing around with dynamic dereferencing and you could break it down further or use more classic Java-style operands in place of "not", I hope 
See the complete source code for yourself here.
There's also a video of JavaFX being used to emulate a Flash site, it shows both one after the other about half-way through.
02 May 2007
Written by
Richard Leggett (

)
Published on May 2nd, 2007 @ 04:25:12 pm, using 235 words, 1294 views
Just watched the video of the BBC Silverlight app we created being presented at the day 2 keynote for MIX 07. There's been a lot of traffic in the last couple of days with regards to Flash/Silverlight etc, and I'm not going to get into any of that here. The feature-sets and SDKs/players for the two products are out there for you to decide yourself as a professional whether it suits your needs. I just enjoy working at a place that throws so many new challenges my way, keeps things exciting!
However it was interesting to jump into a very different technology, of course it is a challenge to stop and think about how I would attack a problem in the apps I'm used to such as Flash, and whether that was a good technique to bring to the table, or whether it would take a different approach to accomplish what I needed (in reality, a mixture of both). It was also interesting to jump back into JavaScript, it has been a few years now since I partook but it came flooding back, in particular OO and inheritance which I really solidified when I learnt AS1 (I still think this is one of the best articles ever written for ECMAScript coders full stop).
Check out the video of the app here...
(video requires Windows Media Player or VLC for us Mac folk, gotta love VLC)
01 May 2007
Written by
Richard Leggett (

)
Published on May 1st, 2007 @ 05:47:23 pm, using 122 words, 268 views
I just got sent a very interesting link to a Flex app from James Ward that runs tests on a variety of different data exchange formats. The tests include results for:
1. Server processing time
2. Data transmission time
3. Parsing time and...
4. Rendering time
Of course no real suprises that Flex/Flash Remoting performs the best in all cases (the Dojo example appears to transfer quicker, but it is actually only dealing with 500 rows instead of 5000 in the Flex tests, maybe because it is sadly let down by the incredibly long render time), "classic" AJAX performs fairly badly, with JSON and Dojo falling somewhere in between.
Anyway the execution of this app is really slick, well worth checking out...
http://www.jamesward.org/census