<?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: Rewriting a (large) PHP application in Rails, part 1</title>
	<atom:link href="http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/</link>
	<description>Andy Lo-A-Foe&#039;s blog</description>
	<lastBuildDate>Thu, 01 Sep 2011 02:55:44 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
	<item>
		<title>By: Rewriting a (large) PHP application in Rails, part 2 at LoLoCoJr</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-576</link>
		<dc:creator>Rewriting a (large) PHP application in Rails, part 2 at LoLoCoJr</dc:creator>
		<pubDate>Fri, 13 Mar 2009 16:28:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-576</guid>
		<description>[...] my previous post on this topic I described the method we used to convert a legacy MySQL PHP database to a Rails [...]</description>
		<content:encoded><![CDATA[<p>[...] my previous post on this topic I described the method we used to convert a legacy MySQL PHP database to a Rails [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: krueger</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-227</link>
		<dc:creator>krueger</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-227</guid>
		<description>Elegant conversion routine!</description>
		<content:encoded><![CDATA[<p>Elegant conversion routine!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: matt</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-228</link>
		<dc:creator>matt</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-228</guid>
		<description>Very nice, we work on several legacy projects and this will be handy.</description>
		<content:encoded><![CDATA[<p>Very nice, we work on several legacy projects and this will be handy.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-229</link>
		<dc:creator>Bob</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-229</guid>
		<description>Yes, but why are you doing this? PHP is way faster. PHP is in more environments. What motivated you to move a &quot;large&quot; PHP application to a Ruby one?

I am neither a PHP user nor a Ruby user so that info would be interesting to me as well.</description>
		<content:encoded><![CDATA[<p>Yes, but why are you doing this? PHP is way faster. PHP is in more environments. What motivated you to move a &quot;large&quot; PHP application to a Ruby one?</p>
<p>I am neither a PHP user nor a Ruby user so that info would be interesting to me as well.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jacob Atzen</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-230</link>
		<dc:creator>Jacob Atzen</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-230</guid>
		<description>Bob: I believe the reason you&#039;re looking for is hidden in the word &quot;crappy&quot; ;-)</description>
		<content:encoded><![CDATA[<p>Bob: I believe the reason you&#8217;re looking for is hidden in the word &quot;crappy&quot; <img src='http://www.railsguru.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jocelyn</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-231</link>
		<dc:creator>Jocelyn</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-231</guid>
		<description>Bob - Ruby can be installed on pretty much every environment that PHP is on. It&#039;s actually faster than PHP, far more eligant, easier to code in, more logical, more... Well, the list goes on.

PHP = years of hacks piled one ontop of another, it is not an object orientated language, it doesn&#039;t have nearly the same amount of usability as Ruby.

Ruby = built and updated properly, logical, and... Well, it&#039;s just the best out there. The framework is amazing.</description>
		<content:encoded><![CDATA[<p>Bob &#8211; Ruby can be installed on pretty much every environment that PHP is on. It&#8217;s actually faster than PHP, far more eligant, easier to code in, more logical, more&#8230; Well, the list goes on.</p>
<p>PHP = years of hacks piled one ontop of another, it is not an object orientated language, it doesn&#8217;t have nearly the same amount of usability as Ruby.</p>
<p>Ruby = built and updated properly, logical, and&#8230; Well, it&#8217;s just the best out there. The framework is amazing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Silvester</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-232</link>
		<dc:creator>Silvester</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-232</guid>
		<description>Hi;

I think everyone has his own idea regarding php or ruby.

As written in the article the project which is going to be rewritten has no db-layer, template or mvc and might not be even written oop. It is a mess of the programmer who wrote it. This does not mean that php is bad, it means only the programmer suck.

Php is not object oriented but can be, it just depends on the programmers skills. It can also be a plus not to force always the oop.

Basicly all of the pluses or minuses of a scripting are relative. You just have to chose the right language which works for you.

And there is no way that ruby is faster than php if you write php correctly. You can get trough always without object which will be faster and less memory and resource of the system will be used.

It is true that you can make more mistakes with php than ruby but if this yould be an argument than ansi c wouldnt exist anymore.</description>
		<content:encoded><![CDATA[<p>Hi;</p>
<p>I think everyone has his own idea regarding php or ruby.</p>
<p>As written in the article the project which is going to be rewritten has no db-layer, template or mvc and might not be even written oop. It is a mess of the programmer who wrote it. This does not mean that php is bad, it means only the programmer suck.</p>
<p>Php is not object oriented but can be, it just depends on the programmers skills. It can also be a plus not to force always the oop.</p>
<p>Basicly all of the pluses or minuses of a scripting are relative. You just have to chose the right language which works for you.</p>
<p>And there is no way that ruby is faster than php if you write php correctly. You can get trough always without object which will be faster and less memory and resource of the system will be used.</p>
<p>It is true that you can make more mistakes with php than ruby but if this yould be an argument than ansi c wouldnt exist anymore.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Evan</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-233</link>
		<dc:creator>Evan</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-233</guid>
		<description>Wow! What a cool way to migrate data.  I&#039;m beginning to think I&#039;m going to have to learn Ruby.  I keep seeing all these great features the language and frameworks support.</description>
		<content:encoded><![CDATA[<p>Wow! What a cool way to migrate data.  I&#8217;m beginning to think I&#8217;m going to have to learn Ruby.  I keep seeing all these great features the language and frameworks support.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: p3t0r</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-234</link>
		<dc:creator>p3t0r</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-234</guid>
		<description>I hardly ever use &#039;for&#039; statements in ruby ever... I really prefer passing blocks:

&lt;pre&gt;
&lt;code&gt;
old_venues.each{ &#124;o&#124;
   ...
}
&lt;/code&gt;
&lt;/pre&gt;

And how do you handle relations?</description>
		<content:encoded><![CDATA[<p>I hardly ever use &#8216;for&#8217; statements in ruby ever&#8230; I really prefer passing blocks:</p>
<p>&lt;pre&gt;<br />
&lt;code&gt;<br />
old_venues.each{ |o|<br />
   &#8230;<br />
}<br />
&lt;/code&gt;<br />
&lt;/pre&gt;</p>
<p>And how do you handle relations?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: andy</title>
		<link>http://www.railsguru.com/articles/2006/12/13/rewriting-a-large-php-application-in-rails-part-1/comment-page-1/#comment-235</link>
		<dc:creator>andy</dc:creator>
		<pubDate>Wed, 13 Dec 2006 02:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.railsguru.com/2007/04/16/rewriting-a-large-php-application-in-rails-part-1#comment-235</guid>
		<description>@p3t0r: this article is a bit geared towards the PHP coder, hence the for construct. Blocks are much cooler! Relations are dealt with manually. Simply defining the other classes in the relations like above and adding the connecting logic in Ruby (unavoidable if you also change the relations in the new model). Of course you can always try and co-erce the legacy db structure and naming conventions to ActiveRecord&#039;s world view. See the class_name stuff above, same can be done for defining for example the :foreign_key in :belongs_to and :habtm constructs.&lt;br/&gt;
&lt;br/&gt;
@Bob: forget PHP vs. Rails speed debates. With proper tweaking both PHP and Rails applications can fly! The biggest reason for the switch were &#039;maintainability&#039; and &#039;Test Driven Development&#039;. I&#039;m not saying you cannot get these with PHP, but Rails IMHO gives you a lot of these things practically free! &lt;a href=&quot;http://wiki.rubyonrails.org/rails/pages/UsingMigrations&quot; target=&quot;_blank&quot;&gt;Rails migrations&lt;/a&gt; literally saved me hours of manual database administration cruft. It also enabled me to quickly rollback changes to the DB structure, not to mention achieving further DB abstraction! But the biggest reason to rewrite it for me personally is that it&#039;s waay more fun developing (and even maintaining) a Rails app!! If it&#039;s fun, it doesn&#039;t feel like work :-)&lt;br/&gt;
&lt;br/&gt;
The next installment of this &quot;series&quot; will be posted this coming week.&lt;br/&gt;
&lt;br/&gt;
-andy</description>
		<content:encoded><![CDATA[<p>@p3t0r: this article is a bit geared towards the PHP coder, hence the for construct. Blocks are much cooler! Relations are dealt with manually. Simply defining the other classes in the relations like above and adding the connecting logic in Ruby (unavoidable if you also change the relations in the new model). Of course you can always try and co-erce the legacy db structure and naming conventions to ActiveRecord&#8217;s world view. See the class_name stuff above, same can be done for defining for example the :foreign_key in :belongs_to and :habtm constructs.&lt;br/&gt;<br />
&lt;br/&gt;<br />
@Bob: forget PHP vs. Rails speed debates. With proper tweaking both PHP and Rails applications can fly! The biggest reason for the switch were &#8216;maintainability&#8217; and &#8216;Test Driven Development&#8217;. I&#8217;m not saying you cannot get these with PHP, but Rails IMHO gives you a lot of these things practically free! &lt;a href=&quot;<a href="http://wiki.rubyonrails.org/rails/pages/UsingMigrations&#038;quot" rel="nofollow">http://wiki.rubyonrails.org/rails/pages/UsingMigrations&#038;quot</a>; target=&quot;_blank&quot;&gt;Rails migrations&lt;/a&gt; literally saved me hours of manual database administration cruft. It also enabled me to quickly rollback changes to the DB structure, not to mention achieving further DB abstraction! But the biggest reason to rewrite it for me personally is that it&#8217;s waay more fun developing (and even maintaining) a Rails app!! If it&#8217;s fun, it doesn&#8217;t feel like work <img src='http://www.railsguru.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> &lt;br/&gt;<br />
&lt;br/&gt;<br />
The next installment of this &quot;series&quot; will be posted this coming week.&lt;br/&gt;<br />
&lt;br/&gt;<br />
-andy</p>
]]></content:encoded>
	</item>
</channel>
</rss>

