My Flex on Rails presentation at 360|Flex
Yesterday I gave my second presentation at 360|Flex in Seattle. The talk gave a very broad overview of Ruby as a language and then went on to give a demo of what the Rails framework brings to the table. We then moved on to take a look at generating a rails application and how we can adapt that to very easily be able to connect it to flex using HTTPService. We talked about RESTful interfaces, and the role ActiveResource plays in the upcoming versions of Rails. We then went on to talk about RemoteObject and the AMF method of communication. I demoed examples using both WebOrb for Rails, and RubyAMF. I talked about the strengths of both platforms and the differences between how they are set up.
All in all I am happy with the results of the presentation. I am very excited about Ruby and Rails (although more ruby than rails) and was really excited to give this presentation. I really wanted to bring my enthusiasm for the topic and share that with folks. I don’t feel like I was able to push my enthusiasm onto as many folks as I would have liked. I was really looking for people to have that “aa-ha!” moment when they realized how much time and effort these tools can save them.
At any rate, thanks for coming to the presentation and thanks to 360|Flex Conferences for letting rant about the things that get me excited. I am attaching a [swf of my presentation slides](http://blog.simb.net/files/FlexonRails.swf) and after the jump I am attaching my code for the HTTPService example. Both [WEBorb](http://www.themidnightcoders.com/weborb/rubyonrails/) and [RubyAFM](http://rubyamf.org) have better examples than I gave so look to their sites for more information.
< ?xml version="1.0" encoding="utf-8"?>
< ![CDATA[
import mx.collections.ArrayCollection;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
[Bindable]
private var people:ArrayCollection;
private function onList(event:ResultEvent):void
{
people = event.result.people.person;
}
private function onUpdate(event:ResultEvent):void
{
hsList.send();
}
private function onFault(event:FaultEvent):void
{
}
]]>
