<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>cfis : Making Rails Go Vroom</title>
    <link>http://cfis.savagexi.com</link>
    <atom:link rel="self" type="application/rss+xml" href="http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom?format=rss"/>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Charlie Savage's Blog</description>
    <item>
      <title>Comment on Making Rails Go Vroom by Paul</title>
      <description>&lt;p&gt;Great write up. Nice to see that there is a lot of room for speeding things up with a bit of work.&lt;/p&gt;

&lt;p&gt;Of course everyone&amp;#8217;s app will be different but some key bits of info everyone can apply.&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 14:20:08 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:f9bdba69-42ed-45b2-bb7c-60b0e8a6ce8b</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1919</link>
    </item>
    <item>
      <title>Trackback from MapBuzz Blog: Performance Improvments on Making Rails Go Vroom</title>
      <description>Last week we spent a a day combing over MapBuzz's map rendering performance. With just a bit of work, we were able to improve it over 700 percent! If you're interested in the details, I wrote a full post about it on my personal blog.</description>
      <pubDate>Wed, 18 Jul 2007 14:28:26 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:388896a5-dea4-4b36-914a-e5d22a16ce83</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#trackback-1920</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by tom</title>
      <description>&lt;p&gt;Hmm&amp;#8230; seems like Rails optimizations often boil down to removing syntactical sugar and bringing things out of the cozy Rails nest.&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 14:54:31 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:618a43d2-f518-454f-8772-fc04dd74868b</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1921</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Nick Kallen</title>
      <description>&lt;p&gt;Using include can vastly slow things down depending on the context. The problem is Rails has to generate these very sophisticated queries&amp;#8211;the &lt;code&gt;t0_c0&lt;/code&gt; stuff&amp;#8211;and extract that data out into the different models. I&amp;#8217;ve done lots of profiling on :include and these numbers are misleading. It really depends on context.&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 14:59:23 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:e3d09548-6a84-455a-a669-ca476fe7164f</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1922</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hey Nic,&lt;/p&gt;

&lt;p&gt;Thanks for the comment.  I&amp;#8217;d like to hear more about your findings with :include.  I&amp;#8217;ve haven&amp;#8217;t seen them slow down our application, but I&amp;#8217;m sure they are cases where it could happen.&lt;/p&gt;

&lt;p&gt;But are you sure the slowdown really comes from generating queries?  That code is conceptually simple and its implementation isn&amp;#8217;t that complex (I had to dive through it for the select parse plugin).&lt;/p&gt;

&lt;p&gt;It seems more likely to me that the slowdown you see would happen either because 1) the query gets complex enough that database performance suffers or 2) parsing of the results gets complicated enough it slows down the query.&lt;/p&gt;

&lt;p&gt;Or is this not what you saw?&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 15:16:56 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:64968e33-915d-4812-95b1-9a09da8bf027</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1923</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hi Paul,&lt;/p&gt;

&lt;p&gt;I definitely agree that everyone&amp;#8217;s application is different - what we see is most likely not same thing that others  see. So grab a copy of ruby-prof and find out for sure (or DTrace if on Solaris).&lt;/p&gt;

&lt;p&gt;Charlie&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 15:20:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:452b7017-01f4-4266-96d6-3ace01364c92</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1924</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hey Tom,&lt;/p&gt;

&lt;p&gt;Suppose it depends on what you mean by syntactical sugar.  Is url_for syntactical sugar?  I&amp;#8217;d say no - its more a Rails API. So its more about knowing which apis to avoid - or as you say, getting out of the cozy Rails nest when necessary.&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 15:23:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:7fa0f7b4-5b37-46fc-a965-c4ef6dbfa3a3</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1925</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Michael Koziarski</title>
      <description>&lt;p&gt;If you&amp;#8217;re interested in helping out with an improved implementation of Active Record&amp;#8217;s attributes, you should drop us a line on the rails core list.&lt;/p&gt;

&lt;p&gt;Some of those issues, especially the repeated-parsing of dates etc, would be nice to fix for 2.0.&lt;/p&gt;

&lt;p&gt;As for url_for, how were you using it?  Named routes or hash arguments?&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 15:34:59 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:8eafcd10-b113-4ba0-9489-2823923acbcf</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1926</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hey Michael - I&amp;#8217;ve been meaning to write up my thoughts on ActiveRecord and attributes for a while now&amp;#8230;.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;ll definitely drop a line to the core list when I do - hopefully they&amp;#8217;ll add some value.&lt;/p&gt;

&lt;p&gt;As far as routes, we just use 5 regular routes, not named routes. I can post them if you&amp;#8217;d like - but its pretty simple stuff.&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 15:59:43 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:aeab0855-4aad-4178-ba67-bd68c06fbf3c</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1927</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Michael Koziarski</title>
      <description>&lt;p&gt;Optimising regular old routes will be challenging,  however I do think that there&amp;#8217;s the possibility of significantly increasing the speed of named routes.  After all, they don&amp;#8217;t have to search to find the possible matches, there&amp;#8217;s only one.  So each of the foo_url() methods could instead just be a string mashing method like you use above.&lt;/p&gt;

&lt;p&gt;We&amp;#8217;re definitely interested in hearing any thoughts from people who&amp;#8217;ve taken the time to profile their applications and have some ideas / patches to speed things up.&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 17:00:38 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:e487bd4c-ede8-40b1-9453-663474b91c0c</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1928</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Michele</title>
      <description>&lt;p&gt;Great tips! We&amp;#8217;ll definitely look into this in the future. Thanks for sharing&amp;#8230; :)&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 17:32:16 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:bd05c09d-b335-45f6-b1f7-cad34f4a54f3</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1929</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Chris</title>
      <description>&lt;p&gt;Excellent tips here &amp;#8230; bookmarked your site and look forward to more brain-pickin&amp;#8217;! :D&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jul 2007 20:51:36 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:865c9ec3-4924-4442-9149-ccedd4e2f759</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1930</link>
    </item>
    <item>
      <title>Trackback from hervalicio.us/blog: Making Rails go Vrooom on Making Rails Go Vroom</title>
      <description>An awesome article pointing out a big bunch of performance improvement tips for Rails applications that brought down rendering time up to 700% on Charlie&amp;#8217;s application. Quite an improvement indeed! The tip on not using link_to and url_for is...</description>
      <pubDate>Thu, 19 Jul 2007 06:45:02 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:7ced7559-3cdb-4f01-9ee1-a3664134e374</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#trackback-1931</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Jim Cropcho</title>
      <description>&lt;p&gt;Great post!&lt;/p&gt;

&lt;p&gt;In regards to your &amp;#8220;Don&amp;#8217;t Use ActiveRecord:attributes&amp;#8221; section:&lt;/p&gt;

&lt;p&gt;Would it be useful to redefine ActiveRecord&amp;#8217;s attr_reader method, i.e.:&lt;/p&gt;

&lt;p&gt;def attr_reader(attrib)
  read_attribute_before_type_cast attrib
end&lt;/p&gt;

&lt;p&gt;so that the changes are made across the application for accessor methods, or does this not optimize like your example?&lt;/p&gt;</description>
      <pubDate>Thu, 19 Jul 2007 13:03:26 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:a9f07a5e-7a17-4029-9bc1-c8bef87b5991</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1932</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Jim Cropcho</title>
      <description>&lt;p&gt;Great post!&lt;/p&gt;

&lt;p&gt;In regards to your &#8220;Don&#8217;t Use ActiveRecord:attributes&#8221; section:&lt;/p&gt;

&lt;p&gt;Would it be useful to redefine ActiveRecord&#8217;s attr_reader method, i.e.:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;def attr_reader(attrib)&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;   &lt;code&gt;read_attribute_before_typecast attrib&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;end&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;so that the changes are made across the application for accessor methods, or does this not optimize like your example?&lt;/p&gt;</description>
      <pubDate>Thu, 19 Jul 2007 13:07:14 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:9c20e3d9-f8ee-49c7-9d99-0e604c16c259</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1933</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hi Jim,&lt;/p&gt;

&lt;p&gt;I think its probably not a good idea to redefine attr_reader since its highly likely that it will break your application.  Also, you would have to do the typecasting yourself.&lt;/p&gt;

&lt;p&gt;I haven&amp;#8217;t looked at Rail&amp;#8217;s autogenerated methods for a while, but its possible they cache the values anyway.  In our case, we were directly accessing attributes in a couple places, and that turned out to be too slow.&lt;/p&gt;</description>
      <pubDate>Thu, 19 Jul 2007 14:14:46 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:dfc68a0b-0578-4498-807f-a7330079095a</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1936</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Senthil Nayagam</title>
      <description>&lt;p&gt;nice article.&lt;/p&gt;

&lt;p&gt;we did some of our optimisations lately for our very complex app. and were able to reduce queries by 90%.&lt;/p&gt;

&lt;p&gt;hope you would agree, optimisation is left for the end phase. when you really need them for performance.&lt;/p&gt;

&lt;p&gt;the syntactic sugar is what makes us do the crazy ideas come to life faster.&lt;/p&gt;

&lt;p&gt;will test your finding  myself and report the gains.&lt;/p&gt;

&lt;p&gt;Senthil&lt;/p&gt;</description>
      <pubDate>Fri, 20 Jul 2007 06:32:32 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:f21e7f35-3d75-456d-9d11-c13979c21f37</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1937</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hi Senthil,&lt;/p&gt;

&lt;p&gt;As the old adage goes - &amp;#8220;don&amp;#8217;t prematurely optmize.&amp;#8221;  I have to say I&amp;#8217;m of two minds about that.  On the one had, spending a lot of time upfront doing micro-optimizations like the ones I write about are a waste of time.  On the other hand, if your architecture cannot support the performance you need, and you don&amp;#8217;t discover that until the very end, then you are screwed.&lt;/p&gt;

&lt;p&gt;Looking forwarding to hearing your results - accurate, published performance information helps us all!&lt;/p&gt;</description>
      <pubDate>Fri, 20 Jul 2007 11:00:53 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:68167db9-7b29-4002-b2a8-1047996b2078</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1940</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by topfunky</title>
      <description>&lt;p&gt;The most important thing in this article that is also the most easily missed is BENCHMARKING!&lt;/p&gt;

&lt;p&gt;Don&amp;#8217;t blindly apply any of the techniques here until you have profiled or benchmarked your application to see what the bottleneck is.  The ruby-prof plugin is awesome for this purpose.&lt;/p&gt;

&lt;p&gt;Applying the techniques mentioned here only gave me a 5% speed boost, but using the ruby-prof plugin helped identify and fix a separate bottleneck that gave me a 200% speed boost. If I didn&amp;#8217;t use ruby-prof, I would never have found that other bottleneck.&lt;/p&gt;</description>
      <pubDate>Fri, 20 Jul 2007 12:11:32 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:1796e35a-0363-401e-91a9-7ad6c68d4f71</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1945</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hi Topfunky,&lt;/p&gt;

&lt;p&gt;Absolutely.  We focused on this particular request because our log files showed it was dreadfully slow.&lt;br /&gt;
&lt;/p&gt;

&lt;p&gt;ruby-prof is the last step in any performance improvement project.  First you have to find out what requests are slow (use your log files).  Second, you have to figure out why they are slow (is it processing the request, rendering the results, querying the database, etc.).  And finally, if you&amp;#8217;re sure the problem is in your Rails code (or Rails), then break out ruby-prof to see what it is.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;m not surprised you only gained 5% from doing the same things we did.  Our use case was a bit unusual - lots of partials with lots of URIs with lots of datetimes.&lt;/p&gt;

&lt;p&gt;Curious how you gained your 200%.  Any lessons for the rest of us?&lt;/p&gt;</description>
      <pubDate>Fri, 20 Jul 2007 12:54:36 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:32d50bb5-5e5f-42e3-a79e-092f08cda8a8</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-1949</link>
    </item>
    <item>
      <title>Trackback from blogwi.se: How-to Profile your Ruby (on Rails) Application on Making Rails Go Vroom</title>
      <description>
Our current project is by far not yet in the state where we can and want to profile it&amp;#8217;s overall performance, but considering its current pace, we might be there in a couple weeks and therefore this post also is meant to be a little reminde...</description>
      <pubDate>Sun, 22 Jul 2007 11:26:29 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:a652261e-1894-44fb-b679-70207737bf2e</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#trackback-2005</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Binal</title>
      <description>&lt;p&gt;Hey, your post helped me in identifying the show stoppers and optimizing my rails app too :-)&lt;/p&gt;</description>
      <pubDate>Mon, 23 Jul 2007 02:31:18 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:30706833-8470-4d1b-aadb-1c440a1ae06a</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-2113</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by thies</title>
      <description>&lt;p&gt;hmm, just a quick hack - rails uses Date._parse to parse the strings returned from the database in my case (MySQL) the strings are either of format
YYYY-MM-DD
or
YYYY-MM-DD HH:II:SS&lt;/p&gt;

&lt;p&gt;so i wrote this tiny patch to the Date class which takes care of all the common cases without haveing to touch my models:&lt;/p&gt;

&lt;p&gt;class Date
  class &amp;lt;&amp;lt; self&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;alias :_slow_parse :_parse

def _parse(string, comp=false)
  if string =~ /^(\d+)-(\d+)-(\d+)$/
    return {:year=&amp;gt;$1.to_i, :mon=&amp;gt;$2.to_i, :mday=&amp;gt;$3.to_i }
  elsif string =~ /^(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)$/
    return {:year=&amp;gt;$1.to_i, :mon=&amp;gt;$2.to_i, 
            :mday=&amp;gt;$3.to_i, :hour=&amp;gt;$4.to_i, 
            :min=&amp;gt;$5.to_i, :sec=&amp;gt;$6.to_i }
  else
    a = _slow_parse(string, comp)
    puts "Date::_parse slow #{string} -&amp;gt; #{a.inspect}"
    return a
  end
end
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;end&lt;/p&gt;

&lt;p&gt;what do you think?&lt;/p&gt;

&lt;p&gt;thies&lt;/p&gt;</description>
      <pubDate>Thu, 26 Jul 2007 04:03:56 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:5f4d009c-1a66-421f-9663-77fb61b72d21</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-3163</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Binal - Find anything worth sharing with others?&lt;/p&gt;</description>
      <pubDate>Thu, 26 Jul 2007 10:25:42 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:77459491-60b5-4caf-b9e5-2c4a3ee35083</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-3286</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hi Thies,&lt;/p&gt;

&lt;p&gt;Yeah - using regexs is the approach that the Time class takes, so that looks good to me.  Maybe you can reuse it directly, or are your date formats slightly different?&lt;/p&gt;

&lt;p&gt;As far as overriding _parse, I think that&amp;#8217;s the right solution if you have a lot of dates.  Having to add custom attributes each time would be a pain.  In our case, we only have 2 of them, so it wasn&amp;#8217;t a big deal.&lt;/p&gt;</description>
      <pubDate>Thu, 26 Jul 2007 10:28:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:9587de0a-46bf-4204-a63b-092ed306bed3</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-3287</link>
    </item>
    <item>
      <title>Trackback from Quicklinks: links for 2007-07-27 on Making Rails Go Vroom</title>
      <description> How to Profile Your Rails Application (tags: Rails performance development) Making Rails Go Vroom (tags: Rails development performance)...</description>
      <pubDate>Fri, 27 Jul 2007 05:17:14 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:6fb37fda-4b6f-43d3-865a-1f1ad280070d</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#trackback-3654</link>
    </item>
    <item>
      <title>Trackback from Ideas at Work: The Definitive and Abbreviated Guide to Rails Performance on Making Rails Go Vroom</title>
      <description>Charlie Savage has released a major update to ruby-prof a "a superfast, open-source, profiler for Ruby", with new support for Rails projects. In what is likely to become the definitive and abbreviated guide to Rails performance, he has written a p...</description>
      <pubDate>Sun, 29 Jul 2007 18:35:41 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:04865b37-c48d-4cb1-b781-eb2891d44328</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#trackback-3967</link>
    </item>
    <item>
      <title>Trackback from Scott's Place: links for 2007-07-31 on Making Rails Go Vroom</title>
      <description>Making Rails go Vroom Practical walkthrough of optimising a Rails app using profiling reports (tags: activerecord articles code deployment dev development geek howto optimisation performance rails reference ruby rubyonrails software speed tips tut...</description>
      <pubDate>Mon, 30 Jul 2007 18:21:45 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:f33b919d-768d-4ce6-b9a1-ea2d3dae4514</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#trackback-3997</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by rick</title>
      <description>&lt;p&gt;I don&amp;#8217;t think read_attribute actually calls #attribute as you claim, it pulls the value from @attributes like #read_attribute_before_type_cast.  The generated methods don&amp;#8217;t cache the type casted attributes though, so multiple calls to #created_at would call the slow Column#string_to_time method each time.&lt;/p&gt;</description>
      <pubDate>Tue, 31 Jul 2007 21:18:32 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:6e55b9f5-ce72-4c62-85c9-d16256567ab9</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-4031</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hi Rick,&lt;/p&gt;

&lt;p&gt;I double checked, and you are right.  read_attribute does do the type cast (from string to whatever) but you generally want that.  Thanks for the correction and I&amp;#8217;ll update the blog.&lt;/p&gt;</description>
      <pubDate>Wed, 01 Aug 2007 23:25:08 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:d427a56d-d765-4efa-aa67-2a0d04f1a8e6</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-4045</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Bob Hutchison</title>
      <description>&lt;p&gt;Nice article&amp;#8230; it prompted me to check my own code out, and work out how to get the plugin to work with old versions of Rails. Post is here: &lt;a href="http://recursive.ca/hutch/2007/08/03/398/" rel="nofollow"&gt;http://recursive.ca/hutch/2007/08/03/398/&lt;/a&gt; if anyone is interested.&lt;/p&gt;</description>
      <pubDate>Fri, 03 Aug 2007 05:50:29 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:d478f7db-e484-4b03-aadd-c37d7fce0ee5</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-4059</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Charlie</title>
      <description>&lt;p&gt;Hi Bob,&lt;/p&gt;

&lt;p&gt;Thanks for the link.  Good point on the old versions of rails.  Suppose the plugin could just use alias.  Or maybe define alias_chain if needed.&lt;/p&gt;

&lt;p&gt;If you have the time, could you add patch to the ruby-prof project on ruby-forge and I&amp;#8217;ll include it in the next release?&lt;/p&gt;</description>
      <pubDate>Fri, 03 Aug 2007 14:11:17 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:a5fc541c-390a-430b-8ec0-f008381a0e8c</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-4072</link>
    </item>
    <item>
      <title>Trackback from Web App: Juvely: We&amp;#8217;ve moved on Making Rails Go Vroom</title>
      <description>This time last week I planned on testing a new server. Now we are running on that new server! As I said in my post then I was thinking of going with SliceHost, well (sorry guys), but in the end we decided to go with Linode. Everything has been mig...</description>
      <pubDate>Fri, 28 Mar 2008 05:56:48 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:29967e62-1110-430d-8598-9ba79f11cbe9</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#trackback-10981</link>
    </item>
    <item>
      <title>Comment on Making Rails Go Vroom by Hardy</title>
      <description>&lt;p&gt;Good, Keep it up.. to optimizing more&amp;#8230;
Interesting topic it is.&lt;/p&gt;</description>
      <pubDate>Tue, 01 Apr 2008 04:53:01 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:5aa8f3e3-1aa6-4fb8-95ed-d1efe15f5b87</guid>
      <link>http://cfis.savagexi.com/2007/07/18/making-rails-go-vroom#comment-11772</link>
    </item>
  </channel>
</rss>
