Flash (via Flex or AIR) allows developers to open connections to servers (binary sockets), much like XHR in Web applications. And, just as frameworks like DWR and JSON RPC allow for remoting objects via XHR, a number of frameworks allow for remoting objects in Flex. One of the most popular has been Flex LiveCycle Data Services, but it’s also a commercial product with a big enough price tag to cause many developers to steer clear.

Not anymore.

Adobe just announced that they are open-sourcing the remoting and HTTP messaging features of Flex LiveCycle Data Sources in a new product called Blaze DS, which will be LGPL licensed. In addition, they are taking a page from Comet and making it easy to create a persistent connection for “server push” functionality for the HTTP messaging. The “data management” features (i.e., keeping a client and server model in sync) remain payware.

In addition, they are publishing the spec to their object remoting protocol (AMF), making it easy for others in the community to create remoting servers (previously, folks had to reverse-engineer the protocol). This opens the door for other non-Java platforms to provide middle tiers in the Flex stack (i.e., Flex doesn’t include any public database drivers, so you have to write a middle-tier to transfer data to Flex apps, and right now Java is the only first-class option).

Many folks wonder why Ajax developers don’t just use Flash; as Adobe open-sources more and more of their stack, it’s going to be very interesting to see the reaction of the community. We at Ajaxian aren’t in the “Open Web or Else” crowd, but a fully open Flash stack would sure make the world a touch more interesting.

>Many folks wonder why Ajax developers donâ€™t just use Flash
Perhaps because Flash isn’t Ajax? Doesn’t run too well on the iPhone either :-P

Open sourcing around the edges does not change the fact that the player and its format are still proprietary and that there is only a single provider of that technology. Some folks are comfortable with that, some aren’t.

It’s an interesting move, I looked into the AMF 3 Specification and from what I understand, it’s a binary format (with limitations) highly tied with flash and adobe based technologies. I think their hope is too see browsers support AMF natively! The binary data exchange sounds like an open call for hackers to have even more fun on the Web!

AMF3 is an object serialization protocol that is optimized for the flash client meant to shuttle data from server to flash client and vice versa without lengthy marshalling times (faster than JSON or XML). There’s no point to “support” in the browser.

Their hope with opening it up is to see flash become more attractive as a development platform by defocusing their server solutions. They’ll simply have to open source the client to really gain a foothold though.

Comment by Joeri — December 13, 2007

Or if there is going to be a single provider who open sources their stuff, it’s still their responsibility to see it ported to more platforms IF THEY WANT TO SEE MORE PEOPLE USE IT. Open sourcing something to try to get someone else to do your porting for you (or whatever we’re calling Microsoft letting Novell (or whoever) write Moonlight as the portable version of Silverlight) may follow the letter of open source, but not the spirit.