2.12.2008

BlazeDS = AMF/LiveCycle?

I've been lucky over the years to always have someone that can build the back-end data structure for a project. But, as a result, I've let myself become less knowledgeable as I should be on what technologies to use and work best in certain situations. So lately I've been trying to get up to speed in this area and have been playing around with RubyAMF, AMF PHP, and SWX PHP as solutions for Flash/Flex to server communication.

I've been the most impressed with technologies that use AMF (Action Message Format). AMF is a binary format for exchanging data. It's mostly used to transfer data between Flash/Flex applications and a database via a remoting request. In a remoting call, the external elements being called would be application tier services, which would likely be running on an application server such as Adobe ColdFusion, Java, PHP, or .NET.

The major benefits of using AMF for remoting requests are speed and packet size. The use of a AMF binary data transfer format increases performance, allowing applications to load data up to 10 times faster than with text-based formats such as XML or SOAP.

Adobe evangelist James Ward has a Flex application on his site that enables you to run some AMF benchmark tests. Census RIA Benchmark demonstrates various methods of loading data in RIAs and determines how those methods affect performance, bandwidth, and client memory usage.

So, where am I going with this? Well, Adobe released source code for its remoting and messaging technologies under a new open source product named BlazeDS.

An open source Java implementation of AMF, BlazeDS includes technologies that were previously available only as part of LiveCycle Data Services (LCDS) . With BlazeDS, developers can easily connect to back-end distributed data, as well as push data in real time to Flex and AIR applications, for more responsive RIA experiences.

According to Adobe, the company plans to contribute the proven technologies from LCDS to the community through BlazeDS. The two LCDS technologies included in the first release are the Messaging Service and the Remote Procedure Call (RPC) Services:

  • Messaging Service: The Messaging Service provides publish and subscribe messaging for Flex and Ajax applications. Messaging uses the Java Message Service (JMS) to provide real-time communication between connected clients and JMS-compatible application servers, such as ColdFusion. This enables you to create scalable, reliable applications for collaboration and data push, such as chat applications or real-time stock quote applications.
  • RPC Services: The RPC Services (aka Flash Remoting) are designed for applications in which the request/response model is the best choice for accessing data. It enables the use of HTTP services, SOAP-based web services, and Plain Old Java Objects (POJOs) with the efficient AMF 3 protocol. The biggest benefit of using RPC Services in LCDS is the ability to call Java services directly without needing to configure them as SOAP-compliant web services.
It keeps getting less and less expensive to develop Flex applications. The Flex SDK is free and includes a command-line compiler and the entire library of Flex framework class files. BlazeDS will be free and includes some of the functionality from LiveCycle. Its a good time to be a Flash/Flex developer.

Labels: , , , , ,

10.01.2007

Astro, Hydra, Moxie, and more: MAX Day 1

Adobe is definitely all about the experience. I must say they did a pretty swell job with the keynote experience this morning. Seemed a little Apple-esque (in a good way) and maybe even a little more rockin'. Here are some really cool things introduced at the keynote:

  • Astro. Code name for Flash player 10. They did a simple HD demo with H.264 in Flash on the big screens, it looked great. They're also adding in some elementary native 3D support in the player. Rotation and position on x, y, and z axis. Smaller stuff included Flex framework caching and bidirectional text support (along with a lot better text support in general). Pretty good post on Astro here.

  • Hyrda. Code name of application for creating custom filters. Adobe figured instead of making custom filters at the request of the community they could just turn it over to the community completely. Great idea. This one's available on labs via Adobe Image Foundation Toolkit.

  • Moxie. Code name for Flex Builder 3. Some cool features coming up, including profiling performance of your Flex app and refactoring for easy updates to code. Some more on that here. Plus, Flex 3 Beta 2 now available.

  • Other stuff (not cause it's less important). They showed off Adobe Media Player, some really cool and innovative AIR applications, Adobe Premiere Express, and talked about how the internet experience coupled with technology is changing.



It's been a great conference so far. I'd go into some of my sessions, but I am dang tired.

Labels: , , , ,

8.22.2007

H.264 Flash Video Test

If you haven't heard by now, Adobe released a beta update to the Flash Player, codenamed “Moviestar,” that adds H.264 video support to Flash. This is a big step for Adobe in securing Flash as a major choice in delivering video over the web. Flash Player developer, Tinic Uro, gave a great post on his blog explaining all the new video/audio functionality added into this latest update.

Here is my H.264 test. Along with the CS3 FLA source. It is a 165 mb MOV, so give it some time to buffer up. I renamed the extension to FLV, this was the only way I could get it to work. I did test with MP4s, which also work great. It plays pretty good if you have a decent processor. Adobe has some recommendations on what system and connection you should have to view Flash HD video properly. I'll try to keep this test up, at least until my bandwidth is used up for the month.

Next stage = streaming HD TV thru Flash?!?

Labels: , , ,

6.11.2007

Pull a free trip out of thin AIR

Wow, I should slap myself for that one, enough with the cheesy AIR references. If you haven't heard by now Adobe Apollo = Adobe Integrated Runtime (AIR). So how do you win a free trip? Well, enter Adobe's AIR Developer Derby and win a travel certificate valued at up to $100,000 to be used for the travel of your choice! The are two categories you can enter: Business Application and Community Application. Entries must be submitted by September 5, 2007.

Labels: , , , , ,

5.01.2007

Impressions of KioskCom

So while everyone cool was enjoying themselves at FTIC in Toronto, I was obligated because of current business ventures to take a week off of an incredibly busy work schedule to attend KioskCom in Las Vegas.

Although not directly Flash related, there have been an increasing number of Flash-based kiosks out there, and I thought it would be important (besides business ventures) to see what Flash's place is in the self-service industry. As of yet, Flash is still somewhat a novelty in this area, although I think it will continue to gain ground in the future for sure.

The conference was essentially two days, although it was scheduled for three. The third day consisted of a self-service tour through Las Vegas, a hotbed for pioneering technology in the self-service industry. I figured I would see enough on my own.

Although at times a little dull, the conference was actually quite useful for me. The exhibitors were many, and there were some pretty dang cool technologies on display for potential buyers--not to mention the catered lunch was surprisingly good. Some cool technologies to note:

  • an entire PC that is about the size of a small paperback book, built for heavy usage (they had it connected to chords that were constantly throwing it around as it played a DivX rip of Pirates)

  • Touch screen technologies that are starting to attract some attention, some using infrared or sound to detect touch as opposed to traditional pressure-sensitive methods

  • Displays that go above and beyond the common methods of digital signage--one was on seamlessly integrated onto a display window at a Polo retail store

  • Some crazily complex and cool remote kiosk management technologies (although ridiculously expensive, and in some cases, impractical)

  • Some cool integration of 3D and live video (one booth took a 3D model of a storm trooper's helmet and put it on the subject in the camera)

Some useful sessions focused on common kiosk problems, useful and innovative implementations of kiosks, and overall trends and issues facing the industry.

It wasn't a bad way to spend a couple of days.

Labels: , ,

4.14.2007

Flash CS3

Flash CS3! AS3, animation tween-to-actionscript conversion, AS3 UI components, new video components, AI/PSD native import, new debugger, new drawing tools, and so much more! Can't wait to get my hands on this.

I've been so busy over the last 2 months at my new job, that I lose track of whats going on in the Flash world. Cahlan and I now work for different companies, but we both still have a great passion for the new and cool stuff going on with Flash. I'm now the lead interactive developer for Sandman Studios. (Pay no attention to the old website, we've got a cool new one in the works.) Sandman does alot of Hollywood special effects, games, interactive dvds/cd-roms, and of course websites. They have their hands in alot of mediums. Its exciting to see the potential this little company has.

Lately, I've been experimenting with PaperVision3D, a powerful AS2/AS3 3D engine. Here are a few examples of PaperVision:

Cell shading
Star Wars game
Material test
Material test 2
Panorama
Tons more

PaperVision is amazing, its lightweight, very powerful, and opens the door for so many design possibilities! I can't wait until something like this is built into Flash. I will post some of my tests later next week.

Anywho, thats all I got for now.

Labels: , , ,

3.16.2007

Flash Circle Tower Defense



I was sent a link yesterday by a friend to this cool game that looked really familiar . . .

Turns out it was made by David Scott, the same guy who brought you the Flash Elemental TD.

Cool stuff, but now I have less time to work . . .

Go to game.

Labels: ,

3.13.2007

RIA Development = Software Development?

If you're like me, you are sick and tired of people treating web application development like the redheaded stepchild of website building. If you're like me, you've been handed too many projects that lack a defined scope, have inadequate analysis, exhibit poor implementation, and too often completely skip the process of evaluation and testing ("The client will test the product, right?").

It seems to me that rich application development, regardless of whether it's web-based (Flash, Flex, AJAX, server-side, etc.), needs to follow the same steps that any (efficient) software company would follow to develop its product, even if it's on a smaller scale. Too many clients that I work with think that because it's easy to use, it's easy to build. Or sometimes clients think that just because it's been done before, it should be easy to replicate quickly. Or, and this happens far too frequently, they think they can have a sweet product that is cheap and developed in two weeks. As a result, deadlines are set to allow for minimal development (not including other phases of the process), products are buggy at best, and expectations are high in contrast to the final output. Disappointment ensues, and business relationships suffer.

I'm no computer scientist, and I don't understand completely all the possible patterns and facets of software development, but I do know enough about the process of development to know when the developers are in for it because whoever is managing the project doesn't understand the process they're over.

Shouldn't web development, especially RIA development, be considered software, in a very true sense? And if that's the case, we as developers/project managers/clients should expect that some method be applied to the madness that too often is the process of throwing assets together in a Cowboy Coding fashion. Although the title works for the blog and for me personally, this absolutely is not the way we should approach a project. Use any approach you feel adequate (Waterfall, Top-Down/Bottom-Up, SDLC), but please use something.

Otherwise we'll all be Cowboy Coders.

Labels: , ,

1.24.2007

Reflection class

I'm a Web 2.0/Apple copycat today, so here is a simple class for creating a reflection below any type of displayObject in AS3. View the source here.

Labels: , ,

1.12.2007

Elemental Tower Defense

Anyone that knows me well enough, knows I'm a Wowaholic. I am addicted to all things Warcraft, all things Blizzard, and I will melt face and pwn you all with my leetness. (thats mmorpg talk for kick butt) Well, the latest time-waster around the office has become Flash Element TD by David Scott. This sweet flash game is based off the custom tower defense maps in Warcraft III. You build and upgrade towers to defend against an onslaught of peasants, lizards, greedy pigs, and even drug runners, oh my! Careful, this addicting flash game will hold you at bay for hours on end. Gratz to Cahlan on reaching level 35, now get back to work!

Labels: , , ,

Phidgets in Flash



I'm not exactly a hardware guy, and I'm definitely no electrical engineer. That's why I got pretty excited the other day when I was able to use Phidget's RFID card reader with Flash to make a card reading application.

Working on interactive kiosks in my employment has been a lot of fun, and we've been exploring using Flash and .exe wrappers to make some cool kiosk applications. This card reader presents some cool possibilities, including language switching on the fly for international users, admin access with a card swipe, the list goes on. Plus, they offer documentation, Flash API's, and examples of how to integrate their stuff with your applications. It looks like they're pushing Actionscript 3.0 as they've stopped releasing AS 2.0 versions with their updates.

So if you're in a similar line of work, go check out some of the hardware that Phidgets offers.

Labels: , ,