<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Coldfusion On Wheels, the forgotten framework</title>
	<atom:link href="http://adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/feed/" rel="self" type="application/rss+xml" />
	<link>http://adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/</link>
	<description>Rants on technology, Ruby on Rails, Javascript and UI Design by Adam Fortuna</description>
	<lastBuildDate>Tue, 20 Apr 2010 08:57:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Adam Fortuna</title>
		<link>http://adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-43179</link>
		<dc:creator>Adam Fortuna</dc:creator>
		<pubDate>Sun, 21 Oct 2007 05:32:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-43179</guid>
		<description>Definitely worth another look! I haven&#039;t been doing much CF lately unfortunately, but it&#039;s definitely at the top of the list. Why there&#039;s not a million active CF developers swarming around CoW (or any rails ColdFusion framework) is still a question mark for me.</description>
		<content:encoded><![CDATA[<p>Definitely worth another look! I haven&#8217;t been doing much CF lately unfortunately, but it&#8217;s definitely at the top of the list. Why there&#8217;s not a million active CF developers swarming around CoW (or any rails ColdFusion framework) is still a question mark for me.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike Haggerty</title>
		<link>http://adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-42328</link>
		<dc:creator>Mike Haggerty</dc:creator>
		<pubDate>Wed, 17 Oct 2007 13:33:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-42328</guid>
		<description>You guys should take another look at Wheels if it&#039;s been a while.  Per has been working pretty hard as of late, the documentation&#039;s starting to come together, and the ORM system is rocking.  hasMany(), belongsTo(), etc. work right out of the box.  I think this can help the CF community out a ton...consider giving it another look and chipping in some time to help out.</description>
		<content:encoded><![CDATA[<p>You guys should take another look at Wheels if it&#8217;s been a while.  Per has been working pretty hard as of late, the documentation&#8217;s starting to come together, and the ORM system is rocking.  hasMany(), belongsTo(), etc. work right out of the box.  I think this can help the CF community out a ton&#8230;consider giving it another look and chipping in some time to help out.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ron Phillips</title>
		<link>http://adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-311</link>
		<dc:creator>Ron Phillips</dc:creator>
		<pubDate>Mon, 12 Feb 2007 11:53:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-311</guid>
		<description>Well, Adam, I&#039;ve said right along that CF is still unequaled for producing Web PAGES. I find that Rails is superior, though, for producing a Web SITE. 

Without a framework, CF&#039;s strength becomes its weakness: too many pages get flirted out without regard to structure and maintainability. Rail&#039;s strength (site structure) becomes its weakness when you really do just need a few static or nearly-static pages. 

One other built-in weakness of Rails is that it really, really wants to be the root. If it isn&#039;t, you&#039;re constantly fighting the structure, I find.

Anyway, my hope for CF on Wheels is that it will combine the best of both: not only the elbow-room to slap a few pages out there fast, but also the wisely-chosen conventions to put rigor into the site design.</description>
		<content:encoded><![CDATA[<p>Well, Adam, I&#8217;ve said right along that CF is still unequaled for producing Web PAGES. I find that Rails is superior, though, for producing a Web SITE. </p>
<p>Without a framework, CF&#8217;s strength becomes its weakness: too many pages get flirted out without regard to structure and maintainability. Rail&#8217;s strength (site structure) becomes its weakness when you really do just need a few static or nearly-static pages. </p>
<p>One other built-in weakness of Rails is that it really, really wants to be the root. If it isn&#8217;t, you&#8217;re constantly fighting the structure, I find.</p>
<p>Anyway, my hope for CF on Wheels is that it will combine the best of both: not only the elbow-room to slap a few pages out there fast, but also the wisely-chosen conventions to put rigor into the site design.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Per Djurner</title>
		<link>http://adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-309</link>
		<dc:creator>Per Djurner</dc:creator>
		<pubDate>Mon, 12 Feb 2007 08:55:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-309</guid>
		<description>The reason the controllers are created on each request and not placed in the application scope is because anything you want available to the view should be set in the variables scope of the controller. The reason we do this is to make the code really simple and readable (as it is in Rails). Using this technique there is no need to pass variables out of the controller method for example (a bonus is you don&#039;t have to worry about forgetting to var scope!).

I do have plans to use object pooling for the controller (as we currently do with model objects) but so far it&#039;s not been a high priority.

Rails/Wheels is all about re-using code and keeping DRY. As Adam mentioned helpers and partials are some of the ways you can use to achieve this goal.

The fact that you only fire one controller/action per request also makes things simple (you can tell exactly where to find your code by looking at the URL bar for example)</description>
		<content:encoded><![CDATA[<p>The reason the controllers are created on each request and not placed in the application scope is because anything you want available to the view should be set in the variables scope of the controller. The reason we do this is to make the code really simple and readable (as it is in Rails). Using this technique there is no need to pass variables out of the controller method for example (a bonus is you don&#8217;t have to worry about forgetting to var scope!).</p>
<p>I do have plans to use object pooling for the controller (as we currently do with model objects) but so far it&#8217;s not been a high priority.</p>
<p>Rails/Wheels is all about re-using code and keeping DRY. As Adam mentioned helpers and partials are some of the ways you can use to achieve this goal.</p>
<p>The fact that you only fire one controller/action per request also makes things simple (you can tell exactly where to find your code by looking at the URL bar for example)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adam Fortuna</title>
		<link>http://adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-308</link>
		<dc:creator>Adam Fortuna</dc:creator>
		<pubDate>Mon, 12 Feb 2007 00:18:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.adamfortuna.com/2007/02/08/coldfusion-on-wheels-the-forgotten-framework/#comment-308</guid>
		<description>Hey Javier, thanks for the kudos.

I&#039;m not too sure there&#039;s a way to reuse controller without redirecting, but at least that&#039;s an option. You can use redirectTo() to forward the user onto another URL in a nice way for one. 

The other option is to put that reusable code in your helper -- either the application_helper, or the controller specific helper. Seems like they&#039;re basically local functions at that scope you can reuse code in. It does complicate reading over code having it in that many places, especially when there are model/service layer calls in both, but at least it can be centralized.

As for reusing views there is some mechanism in there for it at the moment. For instance, if in you&#039;re making a form for adding/edit users you might create that form in the views/user directory and call it _form.cfm. That file can be included from other views using something like &lt;cfset render(partial=&quot;form&quot;)&gt;, which will output that page. This is one great way to make the code from those add/edit forms reusable.

Another option is from inside your controller.  Say for instance you access the /post/list page in an application and it generates the html list of blog posts. Now assuming you add the necessary route, you could go to post/list.xml and it would go to that same controller function with that &quot;xml&quot; defined as matches your routes. Inside your post/list controller you could add a line like &lt;cfset render(file=&quot;post/listxml.cfm&quot;, usefullpath=&quot;true&quot;)&gt; and that&#039;ll output the xml equivalent. I think there are a few more render() options like &lt;cfset render(&quot;actionview&quot;,&quot;controller&quot;)&gt;, so if you wanted to render a different view within the current controller you could do so with &lt;cfset render(&quot;listxml&quot;)&gt;. That won&#039;t stop page processing of the rest of the controller, but the default post/list.cfm page won&#039;t be included in that case.

Definitely think it&#039;d be great for a frameworks presentation. I bet with more people supporting them there might be a call for a talk on them.</description>
		<content:encoded><![CDATA[<p>Hey Javier, thanks for the kudos.</p>
<p>I&#8217;m not too sure there&#8217;s a way to reuse controller without redirecting, but at least that&#8217;s an option. You can use redirectTo() to forward the user onto another URL in a nice way for one. </p>
<p>The other option is to put that reusable code in your helper &#8212; either the application_helper, or the controller specific helper. Seems like they&#8217;re basically local functions at that scope you can reuse code in. It does complicate reading over code having it in that many places, especially when there are model/service layer calls in both, but at least it can be centralized.</p>
<p>As for reusing views there is some mechanism in there for it at the moment. For instance, if in you&#8217;re making a form for adding/edit users you might create that form in the views/user directory and call it _form.cfm. That file can be included from other views using something like <cfset render(partial="form")>, which will output that page. This is one great way to make the code from those add/edit forms reusable.</p>
<p>Another option is from inside your controller.  Say for instance you access the /post/list page in an application and it generates the html list of blog posts. Now assuming you add the necessary route, you could go to post/list.xml and it would go to that same controller function with that &#8220;xml&#8221; defined as matches your routes. Inside your post/list controller you could add a line like </cfset><cfset render(file="post/listxml.cfm", usefullpath="true")> and that&#8217;ll output the xml equivalent. I think there are a few more render() options like </cfset><cfset render("actionview","controller")>, so if you wanted to render a different view within the current controller you could do so with </cfset><cfset render("listxml")>. That won&#8217;t stop page processing of the rest of the controller, but the default post/list.cfm page won&#8217;t be included in that case.</p>
<p>Definitely think it&#8217;d be great for a frameworks presentation. I bet with more people supporting them there might be a call for a talk on them.</cfset></p>
]]></content:encoded>
	</item>
</channel>
</rss>
