Yesterday, Max Carlson and I were finally able to get together on the direction of this project and the related ropenlaszlo Rails plugin. Max has been instrumental in writing significant portions of OpenLaszlo, so it is a big deal that he agrees with my assertion that Rails can be the ultimate combination with OpenLaszlo for delivering Rich Web applications. He totally 'gets' Ruby and Rails and the potential of Laszlo on Rails.
I was quite impressed with the amount of code and work that went into the ropenlaszlo plugin and the contacts demo. There is a lot there, but we agreed that the following would make the Rails conference presentation, and the core functionality of the project, simply killer.
First, we need to be able to have a model retrieve its children, or child in the case of a 1:1 relationship. So, this means dynamic discovery of ActiveRecord relationships and retrieval, or not, of related models for all 4 AR relationships. See the most excellent Rails Reference for a rundown of those relationships. So, for example, the Rest controller will pull the addresses for a customer, or whatever other child elements belong to the customer, and put them into the XML dataset. We also briefly discussed schema retrieval in relation to this.
Secondly, an implementation of pub/sub using polling would allow all kinds of interesting distributed computing and communication options — everything from chat to collaboration on documents and data. If the persistent connection stuff is possible long term — and it is already in Java, so why not? — that is fine, but polling works for now.
Finally, the RailsConf demo must include video as the 3rd act reveal, the big crescendo, etc. I asked Max to give me a realistic assessment of OL's audio and video capabilities. Clearly, Pandora shows that audio on a massive scale is very doable, but I have not seen or heard much about Laszlo's video capabilities. Some of the langauge that surrounded the 3.3 release lead me to believe that there may be some deficiencies, but apparently Laszlo is capable of HTTP streaming of FLV's out of the box, and could also leverage open source video servers like Red 5 pretty trivially.
"I don't want to tell people, 'Hey, you could write Google Video this weekend,' if that is not the case," I said to Max.
"Yeah," Max said, "but you could!"