<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Flash Remoting for Ruby on Rails &#187; RubyAMF</title>
	<atom:link href="http://blog.rubyamf.org/category/rubyamf/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.rubyamf.org</link>
	<description>Ruby AMF - Flash Remoting for Ruby on Rails</description>
	<lastBuildDate>Tue, 25 Aug 2009 12:23:44 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Released RubyAMF 1.6.5</title>
		<link>http://blog.rubyamf.org/2009/08/25/released-rubyamf-1-6-5/</link>
		<comments>http://blog.rubyamf.org/2009/08/25/released-rubyamf-1-6-5/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 12:23:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=179</guid>
		<description><![CDATA[Hello to all,
We have a new RubyAMF release, 1.6.5, it fixes some bugs and improve stability. It has been possible thanks to the collaboration of the members of the group and their research, bug fixing and dedication.
For the complete list of changes you take a look at the CHANGELOG file.
You can check out this new [...]]]></description>
			<content:encoded><![CDATA[<p>Hello to all,</p>
<p>We have a new RubyAMF release, 1.6.5, it fixes some bugs and improve stability. It has been possible thanks to the collaboration of the members of the group and their research, bug fixing and dedication.</p>
<p>For the complete list of changes you take a look at the CHANGELOG file.</p>
<p>You can check out this new release from the repo:</p>
<p>ruby script/plugin install http://rubyamf.googlecode.com/svn/tags/current/rubyamf</p>
<p>or</p>
<p>ruby script/plugin install http://rubyamf.googlecode.com/svn/tags/1.6.5/rubyamf</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2009/08/25/released-rubyamf-1-6-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flex on Rails Book with RubyAMF!</title>
		<link>http://blog.rubyamf.org/2009/02/02/flex-on-rails-book-with-rubyamf/</link>
		<comments>http://blog.rubyamf.org/2009/02/02/flex-on-rails-book-with-rubyamf/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 06:54:02 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=114</guid>
		<description><![CDATA[Congratulations to Tony Hillerson and Daniel Wanja for finishing this book. I just received my copy, and have been skimming through it, it&#8217;s great! Iâ€™m particularly excited about seeing some RubyAMF action. Itâ€™s great to see a community around it. Congrats again Tony and Daniel!
-Aaron
]]></description>
			<content:encoded><![CDATA[<p>Congratulations to Tony Hillerson and Daniel Wanja for finishing <a href="http://www.amazon.com/Flex-Rails-Building-Applications-Developers/dp/0321543378/ref=pd_bbs_sr_1?ie=UTF8&#038;s=books&#038;qid=1233643965&#038;sr=8-1">this book</a>. I just received my copy, and have been skimming through it, it&#8217;s great! Iâ€™m particularly excited about seeing some RubyAMF action. Itâ€™s great to see a community around it. Congrats again Tony and Daniel!</p>
<p>-Aaron</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2009/02/02/flex-on-rails-book-with-rubyamf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maintenance Release: 1.6.1</title>
		<link>http://blog.rubyamf.org/2008/06/15/maintenance-release-161/</link>
		<comments>http://blog.rubyamf.org/2008/06/15/maintenance-release-161/#comments</comments>
		<pubDate>Mon, 16 Jun 2008 04:28:05 +0000</pubDate>
		<dc:creator>tony</dc:creator>
				<category><![CDATA[AMF]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=113</guid>
		<description><![CDATA[Hello all,
There was at least one bug running RubyAMF with Rails 2.1, and I fixed
that today, and all my reference apps (which are what passes for
tests) work, so I&#8217;m tagging that sucka as 1.6.1.
You can get that like:
script/plugin install http://rubyamf.googlecode.com/svn/tags/1.6.1/rubyamf

Or from the current tag:
script/plugin install http://rubyamf.googlecode.com/svn/tags/current/rubyamf

Now, for anyone interested, what was breaking was Rails 2.1&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Hello all,<br />
There was at least one bug running RubyAMF with Rails 2.1, and I fixed<br />
that today, and all my reference apps (which are what passes for<br />
tests) work, so I&#8217;m tagging that sucka as 1.6.1.<br />
You can get that like:<br />
script/plugin install <a href="http://rubyamf.googlecode.com/svn/tags/1.6.1/rubyamf" target="_blank" rel="nofollow">http://rubyamf.googlecode.com/svn/tags/1.6.1/rubyamf</a></p>
<p><a href="http://rubyamf.googlecode.com/svn/tags/1.6.1/rubyamf" target="_blank" rel="nofollow"></a><br />
Or from the current tag:<br />
script/plugin install <a href="http://rubyamf.googlecode.com/svn/tags/current/rubyamf" target="_blank" rel="nofollow">http://rubyamf.googlecode.com/svn/tags/current/rubyamf</a></p>
<p><a href="http://rubyamf.googlecode.com/svn/tags/current/rubyamf" target="_blank" rel="nofollow"></a><br />
Now, for anyone interested, what was breaking was Rails 2.1&#8217;s forgery<br />
protection, which stops cross site scripting attacks by placing a<br />
security code in HTML and Ajax forms and verifying that that&#8217;s the<br />
right code on the Rails side.<br />
My fix was just to add the AMF mime type to the list of mime types<br />
that aren&#8217;t checked for forgery protection, alongside XML and JSON. I<br />
think it belongs there, because there&#8217;s no way that I know of to hook<br />
into the Rails forgery protection.<br />
To do the same type of thing from a Flash app would be a bit of a<br />
different process, and I&#8217;m not quite sure what the best way to think<br />
about that is, nor if it&#8217;s actually a problem we need to worry about<br />
anytime soon. Any thoughts?<br />
Upshot: RubyAMF 1.6 for Rails 2, RubyAMF 1.6.1 for Rails 2.1.</p>
<p>Cross posted from (http://groups.google.com/group/rubyamf)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2008/06/15/maintenance-release-161/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>RailsConf next week!</title>
		<link>http://blog.rubyamf.org/2008/05/24/railsconf-next-week/</link>
		<comments>http://blog.rubyamf.org/2008/05/24/railsconf-next-week/#comments</comments>
		<pubDate>Sat, 24 May 2008 17:34:40 +0000</pubDate>
		<dc:creator>tony</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=112</guid>
		<description><![CDATA[Hey all, this is Tony. I&#8217;m going to RailsConf next week. Daniel Wanja (of onrails.org) and I
will be giving a hands on tutorial on Thursday about Powering AIR
Applications with Rails. We have a ton of material, and if time
allows I&#8217;ll talk a bit about RubyAMF.
If you&#8217;re not coming to the tutorials let me know if [...]]]></description>
			<content:encoded><![CDATA[<p>Hey all, this is Tony. I&#8217;m going to RailsConf next week. Daniel Wanja (of onrails.org) and I<br />
will be giving a hands on tutorial on Thursday about <a href="http://<br />
en.oreilly.com/rails2008/public/schedule/detail/1213">Powering AIR<br />
Applications with Rails</a>. We have a ton of material, and if time<br />
allows I&#8217;ll talk a bit about RubyAMF.</p>
<p>If you&#8217;re not coming to the tutorials let me know if you&#8217;re coming to<br />
the conference anyway and we can meet up and talk about RubyAMF.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2008/05/24/railsconf-next-week/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Volunteers</title>
		<link>http://blog.rubyamf.org/2008/01/14/volunteers/</link>
		<comments>http://blog.rubyamf.org/2008/01/14/volunteers/#comments</comments>
		<pubDate>Mon, 14 Jan 2008 19:40:36 +0000</pubDate>
		<dc:creator>tony</dc:creator>
				<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=99</guid>
		<description><![CDATA[There were a few volunteers that left comments on the &#8220;State of the Onion&#8221; post. Thanks! Can anyone interested leave a post at the google groups forum at http://groups.google.com/group/rubyamf/
Thanks again
]]></description>
			<content:encoded><![CDATA[<p>There were a few volunteers that left comments on the &#8220;State of the Onion&#8221; post. Thanks! Can anyone interested leave a post at the google groups forum at http://groups.google.com/group/rubyamf/</p>
<p>Thanks again</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2008/01/14/volunteers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Retiring From RubyAMF, But not AMF.</title>
		<link>http://blog.rubyamf.org/2008/01/11/retiring-from-rubyamf-but-not-amf/</link>
		<comments>http://blog.rubyamf.org/2008/01/11/retiring-from-rubyamf-but-not-amf/#comments</comments>
		<pubDate>Sat, 12 Jan 2008 04:57:04 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[AMF]]></category>
		<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=97</guid>
		<description><![CDATA[Hey Dudes!
First off, I apologize for this post being so late. It should have been about a month ago. I&#8217;m moving on from RubyAMF. It&#8217;s been such a good time talking and meeting people who supported my efforts on RubyAMF. I couldn&#8217;t say thank you enough &#8211; but I could write a loop for you.

while(true)
{
 [...]]]></description>
			<content:encoded><![CDATA[<p>Hey Dudes!</p>
<p>First off, I apologize for this post being so late. It should have been about a month ago. I&#8217;m moving on from RubyAMF. It&#8217;s been such a good time talking and meeting people who supported my efforts on RubyAMF. I couldn&#8217;t say thank you enough &#8211; but I could write a loop for you.</p>
<pre>
while(true)
{
 trace("THANK YOU");
}
</pre>
<p>Put this in Flash and try it. I know you&#8217;ll love me.</p>
<p>Anyway. I put a ton of effort toward RubyAMF, and they haven&#8217;t gone unnoticed, it&#8217;s so cool. And I&#8217;m glad I was part of helping out make strides for remoting in Ruby.</p>
<p>I&#8217;m definitely not done with AMF though. Trust me <img src='http://blog.rubyamf.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . I must say AMF is by far my favorite thing to work with when using Flex or Flash. It&#8217;s kind of awkward that I&#8217;m so passionate about AMF, but it&#8217;s an amazing creation from Macromedia with so many benefits.</p>
<p>As mentioned, I&#8217;m definitely not done with AMF, or writing / releasing cool stuff. First off. I&#8217;m sitting on PythonAMF. It&#8217;s not ready for a release yet. I need to do quite a bit of testing yet but it will happen.</p>
<p>I&#8217;ve also got another version of SSR done that I will release beginning of February. It includes great new additions. Here&#8217;s a quick breakdown of the new features.</p>
<p>Call limiting &#8211; Turning this on puts a remoting service in a state that will not allow duplicate calls to the same remoting service if a response has not been received from a previous one. Finally, this is built in so we don&#8217;t have to have scattered logic all over to handle this. This is extremely important because you can&#8217;t risk someone figuring out that you don&#8217;t limit calls made to the server, and then they smash your server. Ouch.</p>
<p>Caching &#8211; If a previous request is called again, it comes from cache instead. This includes options to expire cache after a certain time or after the cache has been hit a certain amount of times.</p>
<p>Paging &#8211; Yeah! Now there is a paging mechanism for those flashers (or flexers) who don&#8217;t get to use remote object. Or just don&#8217;t want to use remote object. Page buffering is built in, so you can set the buffer size to say 3 pages, and anytime there is only a certain amount of local pages (which you can specify) it retrieves the buffer pages. It has an iterator like interface so it&#8217;s all taken care of. As well as allowing &#8220;releaseAll,&#8221; some might remember that from Flash 8.</p>
<p>Paging is also built in a way that allows you to extend the default PageResponder (which you don&#8217;t have to touch by default). But this is nice if you want to put paging on a certain remoting service call, but the results you want to page are nested within the result object you get back.</p>
<p>I&#8217;ve also got a custom display renderer mechanism with the same iterator like interface that allows you to use a pager, (with say 50 items per page at a time), and have an interface for only displaying 10 at a time. So it&#8217;s like sub paging on the actual pager.</p>
<p>I think that&#8217;s it for new features. If I think of any others I added I&#8217;ll let you know.</p>
<p>Another issue I&#8217;m addressing is AMF stress testing. So far I&#8217;ve only seen the Flex Stress Testing framework which could possibly be used to test AMF gateways. But the amount of users it can act as to hit the server with is pretty limited, and the tool is so overwhelming to get setup.</p>
<p>AMF stress testing is exactly like it sounds. Test your AMF gateways with millions of hits. This is very important when working on something that is expected to have high volume traffic. I&#8217;ve experienced numerous sites that had high volume traffic and the server side couldn&#8217;t handle it. One in particular was remoting and just couldn&#8217;t take the hits. (Not because of AMF inefficiency, but because of server inefficiency.)</p>
<p>So as a way of spreading the word, that we can&#8217;t just blindly put up remoting gateways for a web site and not think anything of it. I&#8217;ve come up with a very simple way of stress testing AMF.</p>
<p>Here&#8217;s a quick rundown of how this all works.</p>
<p>There are a couple tools involved. First, a &#8220;capture client&#8221;, which is a simple Flex app that you fill out your service target, method name, arguments, amf version, and if it&#8217;s remote object or not. When that request is sent, it&#8217;s sent to a local &#8220;capture server.&#8221;</p>
<p>The &#8220;capture server&#8221; is a ruby webrick server that takes an incoming request and writes the raw post to a file (the AMF).</p>
<p>The next step in the process is JMeter. JMeter is an all around stress testing tool for many different web protocols. Jmeter was the only one I&#8217;ve found so far that allows for sending a POST request with &#8220;arbitrary  binary data&#8221; (<a href="http://www.faqs.org/rfcs/rfc1867.html">from RFC1867 secion 3.3</a>).</p>
<p>That&#8217;s how the Flash player sends over AMF to the server, as stated in RFC1867, AMF is just arbitrary binary. Anyway, since the AMF is just in the body, all you really have to do is send an HTTP Post request to the gateway, along with the binary captured from the capture server. And voila, you can hit the gateway as many times as you want triggering your remoting software to react and perform the same operations as what would occur when a flash / flex request comes in. This is also very important, because it&#8217;s the software you write that get&#8217;s triggered for every remoting call. We can&#8217;t just hit an index.html page and assume everything is ok, when actually none of your server software is being tested.</p>
<p>The other piece to the puzzle is validating response. So far I&#8217;ve been using a tool called PlasticSniffer. It&#8217;s a very simple packet sniffer that will allow you to see the requests / responses of AMF. Generally you can see the UTF data in the response, which is just some text so you&#8217;d be able to read most of what&#8217;s going on. With some awkward characters tossed in.</p>
<p>So Anyway, I have been very busy working on more AMF goodies and will continue to be involved with AMF. Please stand by for SSR2 and that AMF capture tool, with JMeter instructions to get that running.</p>
<p>I had a great time with RubyAMF. And hope to hear from all of you in the future.</p>
<p>-Aaron</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2008/01/11/retiring-from-rubyamf-but-not-amf/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>RubyAMF State of the Union</title>
		<link>http://blog.rubyamf.org/2008/01/07/rubyamf-state-of-the-union/</link>
		<comments>http://blog.rubyamf.org/2008/01/07/rubyamf-state-of-the-union/#comments</comments>
		<pubDate>Tue, 08 Jan 2008 01:58:51 +0000</pubDate>
		<dc:creator>tony</dc:creator>
				<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=98</guid>
		<description><![CDATA[Hello Chums,
I wanted to give everyone an update on where RubyAMF is right now.
Aaron started RubyAMF over a year ago, and he put a lot of long hours and hard work into it. A few months ago Aryk Grosz from Mixbook.com helped out with a lot of speed enhancements. We need to give mad props [...]]]></description>
			<content:encoded><![CDATA[<p>Hello Chums,</p>
<p>I wanted to give everyone an update on where RubyAMF is right now.</p>
<p>Aaron started RubyAMF over a year ago, and he put a lot of long hours and hard work into it. A few months ago Aryk Grosz from Mixbook.com helped out with a lot of speed enhancements. We need to give mad props to these guys forÂ  all the work they put in. Also, to everyone else who&#8217;s submitted patches or filed bugs, or, like Peter, written about RubyAMF.</p>
<p>I&#8217;ve spoken with Aaron about where things are going, and he&#8217;s pretty burnt out and he&#8217;s interested in moving on to some other cool projects he has in mind. It&#8217;s sad, but he&#8217;s done a lot, so no one can fault him.</p>
<p>Where does that leave RubyAMF? Well, in your hands.</p>
<p>I&#8217;ve been interested in RubyAMF for a while, and I&#8217;ve slowly come to understand how things work, but I&#8217;m certainly not as smart as Aaron, so the best I can do to help RubyAMF is to put out a call to action.</p>
<p>RubyAMF is a going to be a community effort. It&#8217;s not like we need to write it from scratch, but there are some important things that need doing to make sure this project is the best it can be.</p>
<p>Here&#8217;s what I&#8217;d like to propose as the set of values for the plugin (in order):</p>
<p>Measurable Goals<br />
1.) Stability<br />
2.) Implementation of the AMF specs (AMF3 and AMF0)<br />
3.) Speed</p>
<p>Subjective Goals<br />
4.) Invisibility<br />
5.) Good Development Workflow</p>
<p>The last two are subjective because different people will see these goals being met differently. Invisibility means that the plugin should be as easy to use out of the box as possible, while meeting the other goals. It should also stay out of the way as much as possible during execution. Offering a good development workflow is a nice to have, and the lowest priority, but it&#8217;s still nice to have. Things in that heading are generators, ease of configuration, and the power to do more complex things when necessary.</p>
<p>To meet these goals, we need a few things. We need participation from the community in these areas:</p>
<p>&#8211; Tests<br />
We need testing of all parts of the framework from serialization/deserialzation to rails integration. Test::Unit? Rspec? Mocks or no mocks? I don&#8217;t know. We need these early so that we can measure the stability of the plugin against patches or enhancements.</p>
<p>&#8211; Benchmarks<br />
Speed is important, especially since we&#8217;re working with a dynamic language and a framework like Rails that favors development workflow over raw speed. We need benchmarks to enable us to have measurable landmarks for conversations around speed.</p>
<p>&#8211; Bug Fixes<br />
Once we have the above, it becomes a lot easier to accept submissions, or more importantly reject them with solid reasoning and a goal to shoot for. Submission breaks a test? it gets rejected. Submission works but slows us down? try again.</p>
<p>&#8211; QA<br />
Anyone using RubyAMF who finds a bug and files it helps.</p>
<p>&#8211; Development Enhancements<br />
The nice touches that make it easier to work with RubyAMF.</p>
<p>&#8211; Documentation<br />
Of course it should work out of the box, and have good documentation in the config (it does), but we could use some tutorials, some walkthroughs, some complex use cases.</p>
<p>Marketing (just kidding)</p>
<p>So, I suggest if you can help in any way post on here. I&#8217;m busy too, but I&#8217;ll try and help get this effort into shape. I&#8217;m not going to say I have the power to deny anyone into the project, but hopefully everyone can get into the action. The best community code projects work when people who put in the time and effort and show good results surface around areas of the project &#8211; in this case around the areas that I mentioned above. It will take a little time for that to happen, but until then we can work as a group to discuss the merits of any descisions that need to be made.</p>
<p>So.. that was a long post, but that&#8217;s the state of the community. If anyone interested steps up we can start to talk about where the code is.</p>
<p>Thanks a lot guys!</p>
<p>-Tony</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2008/01/07/rubyamf-state-of-the-union/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Rails 2 compatability</title>
		<link>http://blog.rubyamf.org/2007/12/16/rails-2-compatability/</link>
		<comments>http://blog.rubyamf.org/2007/12/16/rails-2-compatability/#comments</comments>
		<pubDate>Mon, 17 Dec 2007 04:22:13 +0000</pubDate>
		<dc:creator>tony</dc:creator>
				<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=96</guid>
		<description><![CDATA[Hello chums,
Now that Rails 2 is out, you may want to know how things are working with RubyAMF and Rails 2. There was one bug breaking with Rails 2, where you would render =&#62; :amf and get an error. A fix to that error is in the development branch, and will hopefully be promoted to [...]]]></description>
			<content:encoded><![CDATA[<p>Hello chums,</p>
<p>Now that Rails 2 is out, you may want to know how things are working with RubyAMF and Rails 2. There was one bug breaking with Rails 2, where you would render =&gt; :amf and get an error. A fix to that error is in the development branch, and will hopefully be promoted to the trunk soon.</p>
<p>I&#8217;m also looking into a few other annoying bugs, which should be in the development branch soon, too.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2007/12/16/rails-2-compatability/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Flexible Rails  &#8211; RubyAMF Iteration Available for FREE!</title>
		<link>http://blog.rubyamf.org/2007/12/09/flexible-rails-rubyamf-iteration-available-for-free/</link>
		<comments>http://blog.rubyamf.org/2007/12/09/flexible-rails-rubyamf-iteration-available-for-free/#comments</comments>
		<pubDate>Mon, 10 Dec 2007 04:39:39 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=94</guid>
		<description><![CDATA[Just in case you haven&#8217;t heard already, or heard about Flexible Rails for that matter. It&#8217;s a great book, and there is now a RubyAMF iteration available for free! Details here. Congratulations to Peter Armstrong for putting a ton of work into Flexible Rails!
]]></description>
			<content:encoded><![CDATA[<p>Just in case you haven&#8217;t heard already, or heard about Flexible Rails for that matter. It&#8217;s a great book, and there is now a RubyAMF iteration available for free! <a href="http://manning.com/armstrong/">Details here.</a> Congratulations to Peter Armstrong for putting a ton of work into Flexible Rails!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2007/12/09/flexible-rails-rubyamf-iteration-available-for-free/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Generators in RubyAMF</title>
		<link>http://blog.rubyamf.org/2007/11/14/generators-in-rubyamf/</link>
		<comments>http://blog.rubyamf.org/2007/11/14/generators-in-rubyamf/#comments</comments>
		<pubDate>Thu, 15 Nov 2007 04:00:12 +0000</pubDate>
		<dc:creator>tony</dc:creator>
				<category><![CDATA[Generators]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[RubyAMF]]></category>

		<guid isPermaLink="false">http://blog.rubyamf.org/?p=92</guid>
		<description><![CDATA[So, after a little more discussion about generators we figured that it&#8217;d be better for folks if they were in the plugin. I&#8217;ve removed the separate google code project (you only get 10 per login yo!)
I backed off on a ClassMapping generator I was going to write to re-write the config file with ClassMappings for [...]]]></description>
			<content:encoded><![CDATA[<p>So, after a little more discussion about generators we figured that it&#8217;d be better for folks if they were in the plugin. I&#8217;ve removed the separate google code project (you only get 10 per login yo!)</p>
<p>I backed off on a ClassMapping generator I was going to write to re-write the config file with ClassMappings for each ActiveRecord. That&#8217;s now going to be a helper script that will write ClassMappings to the console for you to copy and paste and modify as needed. Non destructive, simple, and helpful.</p>
<p>One other generator will be a &#8220;Standard RubyAMF Scaffold&#8221; generator, which will be something like `script/generate scaffold &lt;model name&gt;`, but will assume that you&#8217;re only using RubyAMF and configure the generated controller accordingly.</p>
<p>One more generator will be the &#8220;RESTful Scaffold + RubyAMF&#8221; generator. That&#8217;s basically copied straight from the Rails 2.0 scaffold generator, but adds RubyAMF lines to the controller.</p>
<p>Generator scripts won&#8217;t intrude into your RubyAMF app, but they should help get your RubyAMF project up and running a little faster.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rubyamf.org/2007/11/14/generators-in-rubyamf/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
