<?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: ActiveRecord: the Visual Basic of Object Relational Mappers</title>
	<atom:link href="http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/</link>
	<description>Jamie Flournoy's Software Development Blog</description>
	<lastBuildDate>Fri, 19 Mar 2010 02:13:16 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: On Anthropomorphizing Code at Pervasive Code</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-9902</link>
		<dc:creator>On Anthropomorphizing Code at Pervasive Code</dc:creator>
		<pubDate>Wed, 27 Aug 2008 17:13:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-9902</guid>
		<description>[...] hunk of information &#8220;needs&#8221; something, but I fail sometimes. For example, I said &#8220;I just think that ActiveRecord needs to support the low-level and middle-level abstractions better.&#8221; This is silly; of course, code doesn&#8217;t need anything per [...]</description>
		<content:encoded><![CDATA[<p>[...] hunk of information &#8220;needs&#8221; something, but I fail sometimes. For example, I said &#8220;I just think that ActiveRecord needs to support the low-level and middle-level abstractions better.&#8221; This is silly; of course, code doesn&#8217;t need anything per [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jamie Flournoy</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-4091</link>
		<dc:creator>Jamie Flournoy</dc:creator>
		<pubDate>Sat, 26 Jan 2008 08:46:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-4091</guid>
		<description>&gt;Try Genome

A .NET ORM? Please read the article before posting. Thanks.</description>
		<content:encoded><![CDATA[<p>>Try Genome</p>
<p>A .NET ORM? Please read the article before posting. Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan Arnold</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-4088</link>
		<dc:creator>Dan Arnold</dc:creator>
		<pubDate>Sat, 26 Jan 2008 07:03:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-4088</guid>
		<description>Try Genome http://www.genom-e.com. It isn&#039;t perfect, but it has unique features that no other .net orm has.</description>
		<content:encoded><![CDATA[<p>Try Genome <a href="http://www.genom-e.com" rel="nofollow">http://www.genom-e.com</a>. It isn&#8217;t perfect, but it has unique features that no other .net orm has.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: allan miller</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-2840</link>
		<dc:creator>allan miller</dc:creator>
		<pubDate>Wed, 28 Nov 2007 19:51:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-2840</guid>
		<description>Ouch, I&#039;ve been struggling with unit tests that load and use fixtures - and also rely on callbacks - for the past couple of days.  I just read this part of your post:

&quot;...A secondary issue with Fixtures is that they go directly from YAML text files to SQL INSERT statements, bypassing the ActiveRecord Model classes....this model-skipping fixture loading implementation means that any code in your model object (validations, before_save filters, etc.) will not be executed when loading fixtures&quot;

In my case, there are no foreign key dependencies, but I&#039;m using a legacy database that doesn&#039;t include autoincrement or support sequences, so I need to generate primary key id&#039;s in the before_create callback.  Since fixtures bypass the model, can&#039;t use them in the tests.

Very informative post.  Thanks.</description>
		<content:encoded><![CDATA[<p>Ouch, I&#8217;ve been struggling with unit tests that load and use fixtures &#8211; and also rely on callbacks &#8211; for the past couple of days.  I just read this part of your post:</p>
<p>&#8220;&#8230;A secondary issue with Fixtures is that they go directly from YAML text files to SQL INSERT statements, bypassing the ActiveRecord Model classes&#8230;.this model-skipping fixture loading implementation means that any code in your model object (validations, before_save filters, etc.) will not be executed when loading fixtures&#8221;</p>
<p>In my case, there are no foreign key dependencies, but I&#8217;m using a legacy database that doesn&#8217;t include autoincrement or support sequences, so I need to generate primary key id&#8217;s in the before_create callback.  Since fixtures bypass the model, can&#8217;t use them in the tests.</p>
<p>Very informative post.  Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomas</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-1759</link>
		<dc:creator>Tomas</dc:creator>
		<pubDate>Tue, 09 Oct 2007 19:19:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-1759</guid>
		<description>Jamie: There are of course lots of different opinions about AR, especially now that Rails has become so popular and there are countless of groupings and opinions on the matter.

Perhaps it is no longer even possible to speak of any &quot;groupthink&quot; pertaining to the Rails-community as a whole, on any topic whatsoever. That is, unless one refers to the _core_ of the Rails community, in which case there definately are no &quot;SQL is dirty&quot; sentiments.</description>
		<content:encoded><![CDATA[<p>Jamie: There are of course lots of different opinions about AR, especially now that Rails has become so popular and there are countless of groupings and opinions on the matter.</p>
<p>Perhaps it is no longer even possible to speak of any &#8220;groupthink&#8221; pertaining to the Rails-community as a whole, on any topic whatsoever. That is, unless one refers to the _core_ of the Rails community, in which case there definately are no &#8220;SQL is dirty&#8221; sentiments.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jamie Flournoy</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-1756</link>
		<dc:creator>Jamie Flournoy</dc:creator>
		<pubDate>Tue, 09 Oct 2007 16:00:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-1756</guid>
		<description>&gt;This is what DHH wrote:
I have that book (Agile Web Development with Rails) and I&#039;ve read that section too. I agree with it.

Maybe it&#039;s a vocal minority who are anti-RDMBS and/or anti-SQL - it&#039;s hard to tell. I can change the wording to something other than &quot;groupthink&quot; if it&#039;ll help.

The issue that matters to me is the API and how it could be better. If there are people who would reject patches to make using SQL with Rails easier due to an ideological disdain of SQL, that needs to be addressed in order to make the API better. if not, well, joy and celebration.</description>
		<content:encoded><![CDATA[<p>&gt;This is what DHH wrote:<br />
I have that book (Agile Web Development with Rails) and I&#8217;ve read that section too. I agree with it.</p>
<p>Maybe it&#8217;s a vocal minority who are anti-RDMBS and/or anti-SQL &#8211; it&#8217;s hard to tell. I can change the wording to something other than &#8220;groupthink&#8221; if it&#8217;ll help.</p>
<p>The issue that matters to me is the API and how it could be better. If there are people who would reject patches to make using SQL with Rails easier due to an ideological disdain of SQL, that needs to be addressed in order to make the API better. if not, well, joy and celebration.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomas</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-1752</link>
		<dc:creator>Tomas</dc:creator>
		<pubDate>Tue, 09 Oct 2007 08:55:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-1752</guid>
		<description>This is what DHH wrote:

But Isn&#039;t SQL Dirty?

Ever since developers first wrapped relational databases with an object-oriented layer, they&#039;ve debated the question of how deep to run the abstraction. Some object-relational mappers seek to eliminate the use of SQL entirely, hoping for some object-oriented purity by forcing all queries through an OO layer.

ActiveRecord does not. It was built on the notion that SQL is neither dirty nor bod, just verbose in the trivial cases. The focus on removing the need to deal with the verbosity in those trivial cases (writing a 10-attribute insert by hand will leave any programmer tired) but keeping the expressiveness around for the hard queries -- the type SQL was created to deal with elegantly.

Therefore, you shouldn&#039;t feel guilty when you use find_by_sql to handle either performance bottlenecks or hard queries. Start out using the object-oriented interface for productivity and pleasure, and then dip beneath the surface for a close-to-the-metal experience when you need to do so.</description>
		<content:encoded><![CDATA[<p>This is what DHH wrote:</p>
<p>But Isn&#8217;t SQL Dirty?</p>
<p>Ever since developers first wrapped relational databases with an object-oriented layer, they&#8217;ve debated the question of how deep to run the abstraction. Some object-relational mappers seek to eliminate the use of SQL entirely, hoping for some object-oriented purity by forcing all queries through an OO layer.</p>
<p>ActiveRecord does not. It was built on the notion that SQL is neither dirty nor bod, just verbose in the trivial cases. The focus on removing the need to deal with the verbosity in those trivial cases (writing a 10-attribute insert by hand will leave any programmer tired) but keeping the expressiveness around for the hard queries &#8212; the type SQL was created to deal with elegantly.</p>
<p>Therefore, you shouldn&#8217;t feel guilty when you use find_by_sql to handle either performance bottlenecks or hard queries. Start out using the object-oriented interface for productivity and pleasure, and then dip beneath the surface for a close-to-the-metal experience when you need to do so.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomas</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-1751</link>
		<dc:creator>Tomas</dc:creator>
		<pubDate>Tue, 09 Oct 2007 08:48:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-1751</guid>
		<description>DHH does not think any such thing. He explicitly says in the Rails-book that SQL is great for what it&#039;s for (which is why dropping down to find_by_sql should not be frowned upon), SQL is just a bit too verbose in the simplest cases.</description>
		<content:encoded><![CDATA[<p>DHH does not think any such thing. He explicitly says in the Rails-book that SQL is great for what it&#8217;s for (which is why dropping down to find_by_sql should not be frowned upon), SQL is just a bit too verbose in the simplest cases.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: links for 2007-10-08 &#171; Mike Does Tech</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-1728</link>
		<dc:creator>links for 2007-10-08 &#171; Mike Does Tech</dc:creator>
		<pubDate>Mon, 08 Oct 2007 00:28:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-1728</guid>
		<description>[...]  ActiveRecord: the Visual Basic of Object Relational Mappers at Pervasive Code (tags: activerecord sql toread) [...]</description>
		<content:encoded><![CDATA[<p>[...]  ActiveRecord: the Visual Basic of Object Relational Mappers at Pervasive Code (tags: activerecord sql toread) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mister Fingers</title>
		<link>http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/comment-page-1/#comment-1713</link>
		<dc:creator>Mister Fingers</dc:creator>
		<pubDate>Sun, 07 Oct 2007 01:06:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/10/04/activerecord-the-visual-basic-of-object-relational-mappers/#comment-1713</guid>
		<description>Good luck, considering das fuhrer DHH thinks SQL is a hack.

I kid you not.</description>
		<content:encoded><![CDATA[<p>Good luck, considering das fuhrer DHH thinks SQL is a hack.</p>
<p>I kid you not.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
