Get up and running with SWX Beta 1.3!

This video requires Flash.

I released SWX Beta 1.3 today and recorded a new screencast to get you up and running with it.

The screencast covers installing and using the SWX MAMP Bundle but it applies equally if you're using your own development server.

The SWX MAMP Bundle contains everything you need to get up and running with SWX on a Mac (a full development server that contains Apache, PHP, MySQL, and, of course, SWX.)

If you already have a web server with PHP, you can download the much smaller zip file that just contains SWX and unzip it under your web folder and follow along with the screencast from there.

I hope you enjoy the screencast and the latest version of SWX. As always, your feedback is invaluable. Feel free to leave a comment here or join the SWX mailing list.

If you want to download the video, here's a direct link to the FLV.

Download SWX Beta 1.3 from swxformat.org.

17 Responses to “Get up and running with SWX Beta 1.3!”


  1. 1 Steve

    For those of us who are reading about SWX somewhat late in the game here, is there somewhere you might have explained the value of SWX versus just plain XML?

    And if you have the time to do so, could you explain how delivering data dynamically in the SWX format would be prefered to delivering fast-uncompiled XML dynamically (from, say, PHP or .NET) into flash.

    Specifically, if you have the time, if Flickr and others are providing web services to their data (assuming web service calls are all in XML) what are the advantages of working with your API rather than just using the web service controls already in Flash?

  2. 2 Andy MacLaren

    Aral, just caught a recording of the eSeminar - very useful! Looking forward to giving SWX a whirl as it looks especially useful for FL..

    Well done and thanks,
    Andy

  3. 3 admin

    Hi Andy,

    Glad you enjoyed it and looking forward to hearing of your experiences with SWX. It seems like the audio in the recording is out of sync with the video. Not sure if anything can be done about that in Acrobat Connect.

  4. 4 Geoff

    I’ll be using this!
    Thnx alot, the video is very usefull!
    Keep up the good work!

  5. 5 Respiro Media

    I am not sure why, I can’t view the screencast… Any idea why?…

    Thank you for your assistance!
    Zoltan Sebestyen

  6. 6 darki777

    Thanks a lot for the usefull video tutorial, i hope that in the future come out also german & multilanguage video’s.

    Greetings, darki

  7. 7 Doccie

    Saw your presentation at Multi-Mania several weeks ago, only now beginning to experiment with SWX, but I’m very excited about it, now that I’ve started :)

  8. 8 Tomo Atlacatl

    Aral, Great work. Not to rush ya or anything, but how soon is a Java version in the horizon? :)
    Not to start any arguments here, but have you ran any performance testing against more traditional remoting services? I’m all willing to give your SWX a try, in fact, I will, but for savy clients is a tuff a sell without vs. reports and java support, at least in my line of work. Great stuff duh, I know my Rails buddies are waiting w/open arms for their port.

  9. 9 Tomo Atlacatl

    One last thing. Given that u’re using flex for your analyzer, are there any tutorials using flex yer latest release? just wondering….

  10. 10 admin

    Hi Tomo,

    I am in the process of writing IPs for SWX and SWX-RPC that I want to see become informational RFCs. Also, I am preparing a guidance document for ports to ensure that the various ports work seamlessly for someone who knows how to work with SWX-RPC and its PHP implementation, SWX PHP.

    There will definitely be SWX Python, SWX Ruby, SWX J2EE and SWX .Net implementations of SWX-RPC but my current focus is on getting the initial implementation and technical documents in place.

    The current roadmap has SWX PHP 1.0 being released at the end of August/start of September. I see this as a good time to start concentrating on orchestrating the various ports.

    Regarding performance: SWX PHP currently is blisteringly fast for small data sets. For complex data sets with 1,000 complex objects, it slows down far more than Remoting, etc. However, beyond this size (and I would argue, far before it), you should implement paging and I haven’t run into a performance issue yet in the apps that I am building with it to warrant time spent in optimizing it further. The first real-world performance-related issue that is reported will lead me to undertake further optimizations.

    Currently, the only way to use it from Flex is to hijack the debugging LocalConnection that debug SWX files use. This is not recommended as it won’t work if multiple SWX files are loaded on the same machine. I’m working on a native Flash 9 version of the SWX assembler for SWX PHP that will allow use of SWX in AVM2. I plan to have this for launch.

  11. 11 Tomo Atlacatl

    Aral,

    Great, I really appreciate the heads up. I know your blog must gets tons of crazy requests. I know everyone was talking about swx on the last AIR bus tour seminar I went to. I know my Ruby friends are just itching to give this a try.

    It’s interesting you touch on the pagination subject, that’s one of my biggest hurdles @ work, we deal w/calls w/10k records everytime. The RecordSet object is a blessing, but it has it’s drawbacks, I guess if your architect things right, you can just make more calls to save bandwidth. I know that the comparing swx w/Remoting has been talked in some other channels, and argued to no end. I just want to be able to show my clients, “See this new cool thing is just as fast, just as simple, any designer can implement this”.

    One last thing, touching on pagination. From your examples, I see how data comes in as a custom object, wouldn’t it be possible to mimic what RecordSet does? say you don’t put all records in memory, just your max…and let the user consume as much as they want up to the 1k, then on the next request the object mimics another request for 1k-2k, so the client wouldn’t have to make more requests. I might sound like i’m on crack here, but is just a very good idea you got here, I hate to see it die for sm excuses.

  12. 12 admin

    Hi Tomo,

    Wow, that’s amazing to hear (about everyone speaking about SWX at the AIR bus tour seminar).

    And I’m going to treat your comment about the 10k requests as my first real feature request for optimization on this.

    I like your idea about recordset-like behavior. It should not be too difficult to allow the developer to specify a certain number of pages to receive for a call and to do this behinds the scenes on subsequent calls.

    Going to look into optimization as well as AS3 then before launch. And screencasts and docs. And sleep. Maybe :)

    By the way, could you tell me where SWX is being discussed at the moment — I think I must have missed some of the channels you’re mentioning.

    And thanks again! :)

  13. 13 Tomo Atlacatl

    Arial,

    Hey, sleep is always good :)
    Well, I went to the LA AIR seminar a few weeks back. One of my good friends, who happens to be a Ruby Masta went w/me, and amongst many discussions, I kept hearing “Well, for something like that, u’re better off using SWX…”, or “Remoting is overkill, just stick w/SWX or phpobject…”. I’ve read about your blog from time to time, honestly,I haven’t tried it yet since work only deals w/java, but I’m always keeping an eye open for new and exiting stuff. My buddy @ “Vixiom Axioms” commented about how cool your stuff is, here is the link: http://blog.vixiom.com/

    Regarding the RecordSet object, well I don’t want to get into who’s good/not, but we’re currently using openAMF for Java, and for someone like me is kinda of frustrating to see a lack of support and updates on such front. Yes, I am aware of other solutions, such as the weborbs, and other languages, but that’s a battle I lost already w/the suits @ work. One cool thing about the RecorSet from Remoting is that you can query the total number of records without pulling them from the server, and without issuing another remoting call. So you call a method, method queries the DB, generates the RecordSet Object, Flash can subsequently query this object for more pages. It works great, specially while querying tons of records. I’m not too sure how your solution could handle this, my thought was that since you already seem to be creating a custom object w/a set of properties, why couldn’t you create a new Object that mimics RecordSet. The roundtrip would be something like this:
    - flash makes the call to phpclass.phpmethod which would query the DB. This would return 10k records.
    - flash gets an object w/the first set of records, say the first 1k (since that’s your current limitation), but “object.length” yields 10k, so for all other requests, flash would simply ask the original object for records 1k therefore creating the next set/page. So flash wouldn’t have to call the phpmethod. The swx can simply make another call for records 1k>.

    Regarding the comparison, I read some stuff RE: phpamf and swx a while back: http://www.5etdemi.com/blog/archives/2007/03/swx-still-a-bad-idea/

    I’m not here to say who’s the best of not, but each solution has it’s merits and advantages, yours I like for it’s simplicity, so my fellow flashers that never got to use remoting ’cause of fear or lack of knowledge could benefit tremendously from what u’re doing here.

  1. 1 devolution » flash remoting.
  2. 2 SWX RPC is so simple, it fits onto a QR Code! at Aral Balkan
  3. 3 What is SWX, how does it work, and where is it going? at Aral Balkan
  4. 4 blog.geturl.net

Leave a Reply




Bad Behavior has blocked 2996 access attempts in the last 7 days.