<?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>Pivotal Labs &#187; David Goudreau</title>
	<atom:link href="http://pivotallabs.com/author/david/feed/" rel="self" type="application/rss+xml" />
	<link>http://pivotallabs.com</link>
	<description>Agility Developed</description>
	<lastBuildDate>Fri, 24 May 2013 21:58:59 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Standup 4/1/2011: April Fool&#039;s edition</title>
		<link>http://pivotallabs.com/standup-4-1-2011-april-fool-s-edition-2/</link>
		<comments>http://pivotallabs.com/standup-4-1-2011-april-fool-s-edition-2/#comments</comments>
		<pubDate>Fri, 01 Apr 2011 14:26:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Standup]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/standup-4-1-2011-april-fool-s-edition/</guid>
		<description><![CDATA[<p><h2>Ask for Help</h2>

<blockquote>
    <p><em>"<a href="https://github.com/thoughtbot/paperclip">Paperclip</a> and <a href="https://github.com/rdy/fixture_builder">fixture builder</a> - we're getting some strange errors that for some reason are fixed when you rerun fixture builder - any ideas?"</em></p>
</blockquote>

<p>No one has run into this specifically, but a few people said to make sure you're mocking out Paperclip.</p>

<blockquote>
    <p><em>"<a href="https://github.com/chrisk/fakeweb">Fakeweb</a>, <a href="https://github.com/bblimke/webmock">Webmock</a>, <a href="https://github.com/myronmarston/vcr">VCR</a>, <a href="https://github.com/wycats/artifice">artifice</a> - what's a good Ruby/Rails developer to use?"</em></p>
</blockquote>

<p>It was mentioned that Artifice is good for Selenium tests while Fakeweb and Webmock are good for rSpec tests.  VCR's got some fans as well.  Sounds like you can't go all that wrong whatever you choose.</p>

<h2>Interesting-y</h2>

<ul>
<li><p><a href="http://gogaruco.com/">GoGaRuCo</a> - This year it will be September 16th &#38; 17th.  A call for proposals will be going out sometime in the near future.</p></li>
<li><p><a href="http://unicorn.bogomips.org/">Unicorn</a> - it turns out that Unicorn doesn't reopen logs after a log rotation unless the path to the log in Unicorn is absolute - so <em>don't use relative paths</em>!</p></li>
</ul> <a href="http://pivotallabs.com/standup-4-1-2011-april-fool-s-edition-2/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/standup-4-1-2011-april-fool-s-edition-2/">Standup 4/1/2011: April Fool&#039;s edition</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Ask for Help</h2>
<blockquote>
<p><em>&#8220;<a href="https://github.com/thoughtbot/paperclip">Paperclip</a> and <a href="https://github.com/rdy/fixture_builder">fixture builder</a> &#8211; we&#8217;re getting some strange errors that for some reason are fixed when you rerun fixture builder &#8211; any ideas?&#8221;</em></p>
</blockquote>
<p>No one has run into this specifically, but a few people said to make sure you&#8217;re mocking out Paperclip.</p>
<blockquote>
<p><em>&#8220;<a href="https://github.com/chrisk/fakeweb">Fakeweb</a>, <a href="https://github.com/bblimke/webmock">Webmock</a>, <a href="https://github.com/myronmarston/vcr">VCR</a>, <a href="https://github.com/wycats/artifice">artifice</a> &#8211; what&#8217;s a good Ruby/Rails developer to use?&#8221;</em></p>
</blockquote>
<p>It was mentioned that Artifice is good for Selenium tests while Fakeweb and Webmock are good for rSpec tests.  VCR&#8217;s got some fans as well.  Sounds like you can&#8217;t go all that wrong whatever you choose.</p>
<h2>Interesting-y</h2>
<ul>
<li>
<p><a href="http://gogaruco.com/">GoGaRuCo</a> &#8211; This year it will be September 16th &amp; 17th.  A call for proposals will be going out sometime in the near future.</p>
</li>
<li>
<p><a href="http://unicorn.bogomips.org/">Unicorn</a> &#8211; it turns out that Unicorn doesn&#8217;t reopen logs after a log rotation unless the path to the log in Unicorn is absolute &#8211; so <em>don&#8217;t use relative paths</em>!</p>
</li>
</ul>
<p>The post <a href="http://pivotallabs.com/standup-4-1-2011-april-fool-s-edition-2/">Standup 4/1/2011: April Fool&#039;s edition</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/standup-4-1-2011-april-fool-s-edition-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Standup 3/31/2011: Process.spawn pwns all yer codez!</title>
		<link>http://pivotallabs.com/standup-3-31-2011-process-spawn-pwns-all-yer-codez/</link>
		<comments>http://pivotallabs.com/standup-3-31-2011-process-spawn-pwns-all-yer-codez/#comments</comments>
		<pubDate>Thu, 31 Mar 2011 14:26:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Standup]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/standup-3-31-2011-process-spawn-pwns-all-yer-codez/</guid>
		<description><![CDATA[<p><h2>Interestings</h2>

<p>Get your Rails mentoring on at RailsBridge this April 8th &#38; 9th @ the Modcloth offices in downtown SF.  It's very rewarding.</p>

<p>If you have nested_attributes updating an attribute that is NOT in your attr_accessible attribute list on your ActiveRecord model you won't get an exception - it will just silently fail.  It will, however, output a warning line to your Rails log file.  Fun for the whole family.</p>

<p>Using popen to open a process actually calls 'sh -c' to open your process, so the process you just ran is actually the child of the 'sh -c' process you just ran.  This makes tracking down PIDs simply wonderful. :-&#41;  You can use 'exec' instead and your process will be the parent process.  But if you're using the new hotness you can instead use <a href="http://www.ruby-doc.org/core-1.9/classes/Process.html#M002230">Process.spawn</a> in Ruby 1.9.</p> <a href="http://pivotallabs.com/standup-3-31-2011-process-spawn-pwns-all-yer-codez/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/standup-3-31-2011-process-spawn-pwns-all-yer-codez/">Standup 3/31/2011: Process.spawn pwns all yer codez!</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Interestings</h2>
<p>Get your Rails mentoring on at RailsBridge this April 8th &amp; 9th @ the Modcloth offices in downtown SF.  It&#8217;s very rewarding.</p>
<p>If you have nested_attributes updating an attribute that is NOT in your attr_accessible attribute list on your ActiveRecord model you won&#8217;t get an exception &#8211; it will just silently fail.  It will, however, output a warning line to your Rails log file.  Fun for the whole family.</p>
<p>Using popen to open a process actually calls &#8216;sh -c&#8217; to open your process, so the process you just ran is actually the child of the &#8216;sh -c&#8217; process you just ran.  This makes tracking down PIDs simply wonderful. :-&#41;  You can use &#8216;exec&#8217; instead and your process will be the parent process.  But if you&#8217;re using the new hotness you can instead use <a href="http://www.ruby-doc.org/core-1.9/classes/Process.html#M002230">Process.spawn</a> in Ruby 1.9.</p>
<p>The post <a href="http://pivotallabs.com/standup-3-31-2011-process-spawn-pwns-all-yer-codez/">Standup 3/31/2011: Process.spawn pwns all yer codez!</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/standup-3-31-2011-process-spawn-pwns-all-yer-codez/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Standup 3/29/2011: Git it!</title>
		<link>http://pivotallabs.com/standup-03-29-2011-git-it/</link>
		<comments>http://pivotallabs.com/standup-03-29-2011-git-it/#comments</comments>
		<pubDate>Tue, 29 Mar 2011 14:16:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Standup]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/standup-03-29-2011-git-it/</guid>
		<description><![CDATA[<p><h2>Ask for Help</h2>

<blockquote>
    <p><em>"Is there a better way to work on a feature, set that feature set aside, do a small change, check that small change in, then resume work on the feature, all using Git?"</em></p>
</blockquote>

<p><a href="http://dlinsin.blogspot.com/2009/07/git-stash.html">git stash</a> was originally used.  There were also suggestions to use a <a href="http://blog.hasmanythrough.com/2008/12/18/agile-git-and-the-story-branch-pattern">feature branch</a> or use one of the Git GUI tools &#40;<a href="http://gitx.frim.nl/">gitx</a>, <a href="http://www.git-tower.com/">tower</a>, <a href="http://www.syntevo.com/smartgit/index.html">smartgit</a>, <a href="http://www.gittiapp.com/">gitti</a>&#41; that let you partially stage your changes then check in.  Or <a href="https://github.com/jamiew/git-friendly">git-friendly</a> workflow scripts or the ol' reliable <a href="http://technosophos.com/content/git-cherry-picking-move-small-code-patches-across-branches">git cherry-pick</a>.</p> <a href="http://pivotallabs.com/standup-03-29-2011-git-it/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/standup-03-29-2011-git-it/">Standup 3/29/2011: Git it!</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Ask for Help</h2>
<blockquote>
<p><em>&#8220;Is there a better way to work on a feature, set that feature set aside, do a small change, check that small change in, then resume work on the feature, all using Git?&#8221;</em></p>
</blockquote>
<p><a href="http://dlinsin.blogspot.com/2009/07/git-stash.html">git stash</a> was originally used.  There were also suggestions to use a <a href="http://blog.hasmanythrough.com/2008/12/18/agile-git-and-the-story-branch-pattern">feature branch</a> or use one of the Git GUI tools &#40;<a href="http://gitx.frim.nl/">gitx</a>, <a href="http://www.git-tower.com/">tower</a>, <a href="http://www.syntevo.com/smartgit/index.html">smartgit</a>, <a href="http://www.gittiapp.com/">gitti</a>&#41; that let you partially stage your changes then check in.  Or <a href="https://github.com/jamiew/git-friendly">git-friendly</a> workflow scripts or the ol&#8217; reliable <a href="http://technosophos.com/content/git-cherry-picking-move-small-code-patches-across-branches">git cherry-pick</a>.</p>
<p>The post <a href="http://pivotallabs.com/standup-03-29-2011-git-it/">Standup 3/29/2011: Git it!</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/standup-03-29-2011-git-it/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Standup 7/1/10 &#8211; Caching Apache images that have ?123456789</title>
		<link>http://pivotallabs.com/standup-7-1-10-caching-apache-images-that-have-123456789/</link>
		<comments>http://pivotallabs.com/standup-7-1-10-caching-apache-images-that-have-123456789/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 15:10:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Standup]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/standup-7-1-10-caching-apache-images-that-have-123456789/</guid>
		<description><![CDATA[<p><h2>Help</h2>

<ul>
<li>Does anyone know how to set a caching header for urls that end with a cachebusting string &#40;e.g. ?123456789&#41;?  Apparently you're not allowed to get the query string when mucking with rewrite rules.  A couple of people think that you are able to get your hands on it...somehow.</li>
<li>How do you do a screen capture from the Mac command line?  We want to do a screen capture of a running emulator.  Maybe something like <a href="http://www.tuaw.com/2007/05/17/terminal-tip-6-easy-ways-to-capture-your-screen/">this</a>?</li>
</ul>

<h2>Interesting Things</h2>

<ul>
<li><p>Rails 2.3.8 - for nested attributes, '_destroy' is the new '_delete'.  Looks like <a href="https://rails.lighthouseapp.com/projects/8994/tickets/4707">the Rails team is on top of it</a>.  Use</p>

<pre><code>@foo.update_attributes&#40;:foo_attributes =&#62; {'0' =&#62; {:id =&#62; '1',  '_destroy' =&#62; '1'}}&#41;
</code></pre>

<p>instead of</p>

<pre><code>@foo.update_attributes&#40;:foo_attributes =&#62; {'0' =&#62; {:id =&#62; '1',  '_delete' =&#62; '1'}}&#41;
</code></pre></li>
</ul> <a href="http://pivotallabs.com/standup-7-1-10-caching-apache-images-that-have-123456789/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/standup-7-1-10-caching-apache-images-that-have-123456789/">Standup 7/1/10 &#8211; Caching Apache images that have ?123456789</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Help</h2>
<ul>
<li>Does anyone know how to set a caching header for urls that end with a cachebusting string &#40;e.g. ?123456789&#41;?  Apparently you&#8217;re not allowed to get the query string when mucking with rewrite rules.  A couple of people think that you are able to get your hands on it&#8230;somehow.</li>
<li>How do you do a screen capture from the Mac command line?  We want to do a screen capture of a running emulator.  Maybe something like <a href="http://www.tuaw.com/2007/05/17/terminal-tip-6-easy-ways-to-capture-your-screen/">this</a>?</li>
</ul>
<h2>Interesting Things</h2>
<ul>
<li>
<p>Rails 2.3.8 &#8211; for nested attributes, &#8216;_destroy&#8217; is the new &#8216;_delete&#8217;.  Looks like <a href="https://rails.lighthouseapp.com/projects/8994/tickets/4707">the Rails team is on top of it</a>.  Use</p>
<pre><code>@foo.update_attributes&#40;:foo_attributes =&gt; {'0' =&gt; {:id =&gt; '1',  '_destroy' =&gt; '1'}}&#41;
</code></pre>
<p>instead of</p>
<pre><code>@foo.update_attributes&#40;:foo_attributes =&gt; {'0' =&gt; {:id =&gt; '1',  '_delete' =&gt; '1'}}&#41;
</code></pre>
</li>
</ul>
<p>The post <a href="http://pivotallabs.com/standup-7-1-10-caching-apache-images-that-have-123456789/">Standup 7/1/10 &#8211; Caching Apache images that have ?123456789</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/standup-7-1-10-caching-apache-images-that-have-123456789/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Standup 6/30/10 &#8211; Selenium blah blah blah RSpec focused test blah blah blah Rubymine blah blah</title>
		<link>http://pivotallabs.com/standup-6-30-10-selenium-blah-blah-blah-rspec-focused-test-blah-blah-blah-rubymine-blah-blah/</link>
		<comments>http://pivotallabs.com/standup-6-30-10-selenium-blah-blah-blah-rspec-focused-test-blah-blah-blah-rubymine-blah-blah/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 14:37:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Standup]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/standup-6-30-10-selenium-blah-blah-blah-rspec-focused-test-blah-blah-blah-rubymine-blah-blah/</guid>
		<description><![CDATA[<p><h2>Help</h2>

<ul>
<li>Determining a users default time zone - someone must have solved this already, right?  Well, Javascript only gives you the time offset, which isn't that useful, but <a href="http://js.fleegix.org/">Fleegix</a> has some good support we've used on other projects.</li>
<li>The <a href="http://github.com/freelancing-god/after_commit">after_commit</a> gem - we wanted to create an audit entry every time a particular model failed to create successfully.  We tried using the after_rollback hook in both our tests and our development environment but it just didn't work.  The before_rollback callback also didn't work, but the non-rollback callbacks in the gem seemed to behave.  Anyone have any thoughts outside of overriding ActiveRecord ourselves?</li>
</ul>

<h2>Interesting Things</h2>

<ul>
<li><a href="http://vowsjs.org/">Vows</a> - real async Javascript testing for Node.js.  <a href="http://github.com/pivotal/jasmine">Jasmine</a> does support some async testing, but it sounds like it's a bit clunky to do.</li>
<li>Using <a href="http://rvm.beginrescueend.com/">RVM</a> on the server - is anybody doing this?  Apparently not yet, but we had some strongly differing opinions on the matter as to how useful it would be and if it's the right tool for the job.  To be continued...</li>
<li><p><a href="http://rubyonrails.org/">Rails 2.3.8</a> + <a href="http://github.com/fauna/mongrel">mongrel_rails</a> + <a href="http://rack.rubyforge.org/">Rack 1.1.0</a> - cookies do not work.  At all.  Apparently with <a href="http://rack.rubyforge.org/">Rack</a>, cookies get fed into mongrel_rails as an array, while <a href="http://github.com/fauna/mongrel">Mongrel</a> expects them to be a String.  Looks like <a href="https://rails.lighthouseapp.com/projects/8994/tickets/4690-mongrel-doesnt-work-with-rails-238">someone already ran into this</a>.  The fix is to throw this in a Rails initializer file:</p>

<pre><code>class Mongrel::CGIWrapper
  def header_with_rails_fix&#40;options = 'text/html'&#41;
    @head['cookie'] = options.delete&#40;'cookie'&#41;.flatten.map { &#124;v&#124; v.sub&#40;/^n/,''&#41; } if options.class != String and options['cookie']
    header_without_rails_fix&#40;options&#41;
  end
  alias_method_chain&#40;:header, :rails_fix&#41;
end if Rails.version == '2.3.8' and Gem.available?&#40;'mongrel', Gem::Requirement.new&#40;'~&#62;1.1.5'&#41;&#41; and self.class.const_defined?&#40;:Mongrel&#41;
</code></pre>

<p>&#40;As an aside, running mongrel_rails by using script/server works fine, we only found this issue when running our <a href="http://github.com/brynary/webrat">Webrat</a> Selenium tests, which calls mongrel_rails in some different way that causes this bug to be exposed.&#41;</p></li>
</ul> <a href="http://pivotallabs.com/standup-6-30-10-selenium-blah-blah-blah-rspec-focused-test-blah-blah-blah-rubymine-blah-blah/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/standup-6-30-10-selenium-blah-blah-blah-rspec-focused-test-blah-blah-blah-rubymine-blah-blah/">Standup 6/30/10 &#8211; Selenium blah blah blah RSpec focused test blah blah blah Rubymine blah blah</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Help</h2>
<ul>
<li>Determining a users default time zone &#8211; someone must have solved this already, right?  Well, Javascript only gives you the time offset, which isn&#8217;t that useful, but <a href="http://js.fleegix.org/">Fleegix</a> has some good support we&#8217;ve used on other projects.</li>
<li>The <a href="http://github.com/freelancing-god/after_commit">after_commit</a> gem &#8211; we wanted to create an audit entry every time a particular model failed to create successfully.  We tried using the after_rollback hook in both our tests and our development environment but it just didn&#8217;t work.  The before_rollback callback also didn&#8217;t work, but the non-rollback callbacks in the gem seemed to behave.  Anyone have any thoughts outside of overriding ActiveRecord ourselves?</li>
</ul>
<h2>Interesting Things</h2>
<ul>
<li><a href="http://vowsjs.org/">Vows</a> &#8211; real async Javascript testing for Node.js.  <a href="http://github.com/pivotal/jasmine">Jasmine</a> does support some async testing, but it sounds like it&#8217;s a bit clunky to do.</li>
<li>Using <a href="http://rvm.beginrescueend.com/">RVM</a> on the server &#8211; is anybody doing this?  Apparently not yet, but we had some strongly differing opinions on the matter as to how useful it would be and if it&#8217;s the right tool for the job.  To be continued&#8230;</li>
<li>
<p><a href="http://rubyonrails.org/">Rails 2.3.8</a> + <a href="http://github.com/fauna/mongrel">mongrel_rails</a> + <a href="http://rack.rubyforge.org/">Rack 1.1.0</a> &#8211; cookies do not work.  At all.  Apparently with <a href="http://rack.rubyforge.org/">Rack</a>, cookies get fed into mongrel_rails as an array, while <a href="http://github.com/fauna/mongrel">Mongrel</a> expects them to be a String.  Looks like <a href="https://rails.lighthouseapp.com/projects/8994/tickets/4690-mongrel-doesnt-work-with-rails-238">someone already ran into this</a>.  The fix is to throw this in a Rails initializer file:</p>
<pre><code>class Mongrel::CGIWrapper
  def header_with_rails_fix&#40;options = 'text/html'&#41;
    @head['cookie'] = options.delete&#40;'cookie'&#41;.flatten.map { |v| v.sub&#40;/^n/,''&#41; } if options.class != String and options['cookie']
    header_without_rails_fix&#40;options&#41;
  end
  alias_method_chain&#40;:header, :rails_fix&#41;
end if Rails.version == '2.3.8' and Gem.available?&#40;'mongrel', Gem::Requirement.new&#40;'~&gt;1.1.5'&#41;&#41; and self.class.const_defined?&#40;:Mongrel&#41;
</code></pre>
<p>&#40;As an aside, running mongrel_rails by using script/server works fine, we only found this issue when running our <a href="http://github.com/brynary/webrat">Webrat</a> Selenium tests, which calls mongrel_rails in some different way that causes this bug to be exposed.&#41;</p>
</li>
</ul>
<p>The post <a href="http://pivotallabs.com/standup-6-30-10-selenium-blah-blah-blah-rspec-focused-test-blah-blah-blah-rubymine-blah-blah/">Standup 6/30/10 &#8211; Selenium blah blah blah RSpec focused test blah blah blah Rubymine blah blah</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/standup-6-30-10-selenium-blah-blah-blah-rspec-focused-test-blah-blah-blah-rubymine-blah-blah/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Standup 6/29/10 &#8211; EngineYard Redis change</title>
		<link>http://pivotallabs.com/standup-6-29-10-engineyard-redis-change/</link>
		<comments>http://pivotallabs.com/standup-6-29-10-engineyard-redis-change/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 14:47:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Standup]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/standup-6-29-10-engineyard-redis-change/</guid>
		<description><![CDATA[<p><h2>Help!</h2>

<ul>
<li>Ey cloud deploy - has anyone done a deploy to EY cloud and seen the Mongrel instances not get bounced?  <strong></strong></li>
<li>Does anyone have any tips on testing distributed applications?  We're looking for the least ugly/painful way to do it well.</li>
</ul>

<h2>Interesting Things</h2>

<ul>
<li>Rvm and sudo - for goodness sake <a href="http://rvm.beginrescueend.com/rubies/rubygems/">don't do it.</a></li>
<li>Sass not recompiling on deploys - a few of our projects have seen Sass files not recompile/update for some reason that we've yet to track down.  So instead of spelunking through Sass code we just force the issue by having a rake task that forces the recompile - see <a href="http://blog.codefront.net/2008/08/07/sass-with-rails-avoiding-disappearing-stylesheets-in-production/">this post</a> for details.</li>
<li>Rails xhr redirect - one of our projects is using the <a href="http://github.com/grosser/xhr_redirect">xhr_redirect</a> plugin to support ajax redirects - careful if you want to use it in your tests - it self-destructs if your Rails environment == 'test'</li>
<li>Android meetup tonight at 6:30 PM - <a href="http://www.sfandroid.org/calendar/13837746/?a=nr1p_grp&#38;eventId=13837746&#38;action=detail&#38;rv=nr1p&#38;rv=nr1p">check out the details.</a></li>
<li>New Redis recipe from EY - following up from <a href="http://pivotallabs.com/users/david/blog/articles/1296-standup-6-28-10-engineyard-redis-change">yesterday</a>, the new EY recipe to set up Redis appears to work fine with a little tweaking.</li>
</ul> <a href="http://pivotallabs.com/standup-6-29-10-engineyard-redis-change/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/standup-6-29-10-engineyard-redis-change/">Standup 6/29/10 &#8211; EngineYard Redis change</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Help!</h2>
<ul>
<li>Ey cloud deploy &#8211; has anyone done a deploy to EY cloud and seen the Mongrel instances not get bounced?  <strong></strong></li>
<li>Does anyone have any tips on testing distributed applications?  We&#8217;re looking for the least ugly/painful way to do it well.</li>
</ul>
<h2>Interesting Things</h2>
<ul>
<li>Rvm and sudo &#8211; for goodness sake <a href="http://rvm.beginrescueend.com/rubies/rubygems/">don&#8217;t do it.</a></li>
<li>Sass not recompiling on deploys &#8211; a few of our projects have seen Sass files not recompile/update for some reason that we&#8217;ve yet to track down.  So instead of spelunking through Sass code we just force the issue by having a rake task that forces the recompile &#8211; see <a href="http://blog.codefront.net/2008/08/07/sass-with-rails-avoiding-disappearing-stylesheets-in-production/">this post</a> for details.</li>
<li>Rails xhr redirect &#8211; one of our projects is using the <a href="http://github.com/grosser/xhr_redirect">xhr_redirect</a> plugin to support ajax redirects &#8211; careful if you want to use it in your tests &#8211; it self-destructs if your Rails environment == &#8216;test&#8217;</li>
<li>Android meetup tonight at 6:30 PM &#8211; <a href="http://www.sfandroid.org/calendar/13837746/?a=nr1p_grp&amp;eventId=13837746&amp;action=detail&amp;rv=nr1p&amp;rv=nr1p">check out the details.</a></li>
<li>New Redis recipe from EY &#8211; following up from <a href="http://pivotallabs.com/users/david/blog/articles/1296-standup-6-28-10-engineyard-redis-change">yesterday</a>, the new EY recipe to set up Redis appears to work fine with a little tweaking.</li>
</ul>
<p>The post <a href="http://pivotallabs.com/standup-6-29-10-engineyard-redis-change/">Standup 6/29/10 &#8211; EngineYard Redis change</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/standup-6-29-10-engineyard-redis-change/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Standup 6/28/10 &#8211; EngineYard Redis change</title>
		<link>http://pivotallabs.com/standup-6-28-10-engineyard-redis-change/</link>
		<comments>http://pivotallabs.com/standup-6-28-10-engineyard-redis-change/#comments</comments>
		<pubDate>Mon, 28 Jun 2010 14:45:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Standup]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/standup-6-28-10-engineyard-redis-change/</guid>
		<description><![CDATA[<p><h2>Interesting Things</h2>

<ul>
<li><p><a href="http://code.google.com/p/redis/">Redis</a> at <a href="http://www.engineyard.com">EngineYard</a> - <a href="http://www.engineyard.com">EY</a> recently fixed a bug in their system chef scripts that was unintentionally installing <a href="http://code.google.com/p/redis/">Redis</a>, so if you're relying on it being there you may find it missing on your next deploy.  <a href="http://www.engineyard.com">EY</a> has apparently just <a href="http://github.com/engineyard/ey-cloud-recipes/tree/master/cookbooks/redis/">added a recipe</a> for running <a href="http://code.google.com/p/redis/">Redis</a> on a utility slice in <a href="http://github.com/engineyard/ey-cloud-recipes/tree/master/cookbooks/redis/">ey-cloud-recipes</a>.  We haven't tried it out yet but at first glance it looks ok.  This new recipe doesn't support running <a href="http://code.google.com/p/redis/">Redis</a> on a solo instance, but it doesn't look too hard to change it to do that.</p></li>
<li><p>Library reorganization - we here at Pivotal have a library of books we let people 'check out'.  We've just reorganized it a bit.  Let our local librarians know if it's working for ya.</p></li>
<li><p>Mobile meetup - there's a mobile meetup tonight from 6-8 PM tonight at <a href="http://www.horatius.com">Horatius</a> in Potrero Hill.  They're expecting people from top mobile companies including entrepreneurs, application developers, designers, marketing/business, etc - please RSVP at <a href="http://www.facebook.com/event.php?eid=126932554005811">the Facebook</a> to attend.</p></li>
</ul> <a href="http://pivotallabs.com/standup-6-28-10-engineyard-redis-change/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/standup-6-28-10-engineyard-redis-change/">Standup 6/28/10 &#8211; EngineYard Redis change</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Interesting Things</h2>
<ul>
<li>
<p><a href="http://code.google.com/p/redis/">Redis</a> at <a href="http://www.engineyard.com">EngineYard</a> &#8211; <a href="http://www.engineyard.com">EY</a> recently fixed a bug in their system chef scripts that was unintentionally installing <a href="http://code.google.com/p/redis/">Redis</a>, so if you&#8217;re relying on it being there you may find it missing on your next deploy.  <a href="http://www.engineyard.com">EY</a> has apparently just <a href="http://github.com/engineyard/ey-cloud-recipes/tree/master/cookbooks/redis/">added a recipe</a> for running <a href="http://code.google.com/p/redis/">Redis</a> on a utility slice in <a href="http://github.com/engineyard/ey-cloud-recipes/tree/master/cookbooks/redis/">ey-cloud-recipes</a>.  We haven&#8217;t tried it out yet but at first glance it looks ok.  This new recipe doesn&#8217;t support running <a href="http://code.google.com/p/redis/">Redis</a> on a solo instance, but it doesn&#8217;t look too hard to change it to do that.</p>
</li>
<li>
<p>Library reorganization &#8211; we here at Pivotal have a library of books we let people &#8216;check out&#8217;.  We&#8217;ve just reorganized it a bit.  Let our local librarians know if it&#8217;s working for ya.</p>
</li>
<li>
<p>Mobile meetup &#8211; there&#8217;s a mobile meetup tonight from 6-8 PM tonight at <a href="http://www.horatius.com">Horatius</a> in Potrero Hill.  They&#8217;re expecting people from top mobile companies including entrepreneurs, application developers, designers, marketing/business, etc &#8211; please RSVP at <a href="http://www.facebook.com/event.php?eid=126932554005811">the Facebook</a> to attend.</p>
</li>
</ul>
<p>The post <a href="http://pivotallabs.com/standup-6-28-10-engineyard-redis-change/">Standup 6/28/10 &#8211; EngineYard Redis change</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/standup-6-28-10-engineyard-redis-change/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sass development at the speed of Javascript</title>
		<link>http://pivotallabs.com/using-javascript-to-compile-your-sass-files/</link>
		<comments>http://pivotallabs.com/using-javascript-to-compile-your-sass-files/#comments</comments>
		<pubDate>Fri, 11 Jun 2010 03:51:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Labs]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/using-javascript-to-compile-your-sass-files/</guid>
		<description><![CDATA[<p><h2>Surrendering to Sass</h2>

<p>I've finally gone all-out for <a href="http://sass-lang.com/">Sass</a>.  The last thing that was holding me back was the speed with which I could make Sass file changes in <a href="http://www.jetbrains.com/ruby/index.html">RubyMine</a> and see them in <a href="http://www.mozilla.com/firefox">Firefox</a>.  I'd gotten so used to the <a href="http://david.dojotoolkit.org/recss.html">ReCss</a> bookmarklet being mapped to Ctrl-Z-Z using the <a href="https://addons.mozilla.org/en-US/firefox/addon/6848/?src=api">ShortcutKey2URL</a> Firefox addon that I couldn't go from 0.1 seconds &#40;using Javascript to reload my css files&#41; to see my changes to 1 second &#40;by doing a full-page refresh in the browser&#41; to force Sass to recompile the css files.</p>

<p>Enter <a href="http://pivotallabs.com/users/erik/blog">Erik Hansen</a>, Javascript guru and all-around nice guy, for a 5 minute pair session where we added a synchronous ajax call to the ReCss bookmarklet to '/' of our application to force Sass to recompile.</p>

<pre><code>javascript:void&#40;function&#40;&#41;{var i,a,s;$.ajax&#40;{url: '/', async: false}&#41;;a=document.getElementsByTagName&#40;'link'&#41;;for&#40;i=0;i&#60;a.length;i++&#41;{s=a[i];if&#40;s.rel.toLowerCase&#40;&#41;.indexOf&#40;'stylesheet'&#41;&#62;=0&#38;&#38;s.href&#41; {var h=s.href.replace&#40;/&#40;&#38;&#124;%5C?&#41;forceReload=d+/,''&#41;;s.href=h+&#40;h.indexOf&#40;'?'&#41;&#62;=0?'&#38;':'?'&#41;+'forceReload='+&#40;new Date&#40;&#41;.valueOf&#40;&#41;&#41;}}}&#41;&#40;&#41;;
</code></pre>

<p>Note the </p>

<pre><code>$.ajax&#40;{url: '/', async: false}&#41;
</code></pre>

<p>at the beginning of the line - we're hitting the root of our application with a synchronous ajax call &#40;using <a href="http://jquery.com/">jQuery</a> because our application uses it and it is available&#41; to force the application server to return a response which consequently forces Sass to recompile all the sass files we've changed.  It's pretty darn fast.  One caveat - if your '/' action is slow on your site because it loads a bunch of models and such &#40;it's not yet on our site&#41;, you should be able to create a Sass action in your home controller that doesn't do much anything and point the ajax call at that instead - you might wanna enable that only in development mode, too.</p>

<p>And by the way, I've also fallen in love with the <a href="http://nex-3.com/posts/92-firesass-bridges-the-gap-between-sass-and-firebug">FireSass</a> Firefox plugin.  It's a must-have for Sass development.</p> <a href="http://pivotallabs.com/using-javascript-to-compile-your-sass-files/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/using-javascript-to-compile-your-sass-files/">Sass development at the speed of Javascript</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Surrendering to Sass</h2>
<p>I&#8217;ve finally gone all-out for <a href="http://sass-lang.com/">Sass</a>.  The last thing that was holding me back was the speed with which I could make Sass file changes in <a href="http://www.jetbrains.com/ruby/index.html">RubyMine</a> and see them in <a href="http://www.mozilla.com/firefox">Firefox</a>.  I&#8217;d gotten so used to the <a href="http://david.dojotoolkit.org/recss.html">ReCss</a> bookmarklet being mapped to Ctrl-Z-Z using the <a href="https://addons.mozilla.org/en-US/firefox/addon/6848/?src=api">ShortcutKey2URL</a> Firefox addon that I couldn&#8217;t go from 0.1 seconds &#40;using Javascript to reload my css files&#41; to see my changes to 1 second &#40;by doing a full-page refresh in the browser&#41; to force Sass to recompile the css files.</p>
<p>Enter <a href="http://pivotallabs.com/users/erik/blog">Erik Hansen</a>, Javascript guru and all-around nice guy, for a 5 minute pair session where we added a synchronous ajax call to the ReCss bookmarklet to &#8216;/&#8217; of our application to force Sass to recompile.</p>
<pre><code>javascript:void&#40;function&#40;&#41;{var i,a,s;$.ajax&#40;{url: '/', async: false}&#41;;a=document.getElementsByTagName&#40;'link'&#41;;for&#40;i=0;i&lt;a.length;i++&#41;{s=a[i];if&#40;s.rel.toLowerCase&#40;&#41;.indexOf&#40;'stylesheet'&#41;&gt;=0&amp;&amp;s.href&#41; {var h=s.href.replace&#40;/&#40;&amp;|%5C?&#41;forceReload=d+/,''&#41;;s.href=h+&#40;h.indexOf&#40;'?'&#41;&gt;=0?'&amp;':'?'&#41;+'forceReload='+&#40;new Date&#40;&#41;.valueOf&#40;&#41;&#41;}}}&#41;&#40;&#41;;
</code></pre>
<p>Note the </p>
<pre><code>$.ajax&#40;{url: '/', async: false}&#41;
</code></pre>
<p>at the beginning of the line &#8211; we&#8217;re hitting the root of our application with a synchronous ajax call &#40;using <a href="http://jquery.com/">jQuery</a> because our application uses it and it is available&#41; to force the application server to return a response which consequently forces Sass to recompile all the sass files we&#8217;ve changed.  It&#8217;s pretty darn fast.  One caveat &#8211; if your &#8216;/&#8217; action is slow on your site because it loads a bunch of models and such &#40;it&#8217;s not yet on our site&#41;, you should be able to create a Sass action in your home controller that doesn&#8217;t do much anything and point the ajax call at that instead &#8211; you might wanna enable that only in development mode, too.</p>
<p>And by the way, I&#8217;ve also fallen in love with the <a href="http://nex-3.com/posts/92-firesass-bridges-the-gap-between-sass-and-firebug">FireSass</a> Firefox plugin.  It&#8217;s a must-have for Sass development.</p>
<p>The post <a href="http://pivotallabs.com/using-javascript-to-compile-your-sass-files/">Sass development at the speed of Javascript</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/using-javascript-to-compile-your-sass-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Make the RubyMine 2.0.1 debugger work for you&#8230;</title>
		<link>http://pivotallabs.com/make-the-rubymine-2-0-1-debugger-work-for-you/</link>
		<comments>http://pivotallabs.com/make-the-rubymine-2-0-1-debugger-work-for-you/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 00:02:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Labs]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/make-the-rubymine-2-0-1-debugger-work-for-you/</guid>
		<description><![CDATA[<p><p>In the latest Rubymine 2.0.1, we've had lots of problems on our workstations with getting it working reliably.  Seeing as how I love using a debugger and look forward to leaving the days of <code>puts</code> behind, I've spent a fair amount of time troubleshooting this problem.</p>

<p>Here's the deal - Rubymine 2.0.1 must have <code>ruby-debug-ide -v=0.4.7</code> installed to work correctly, not the latest, which is <code>ruby-debug-ide -v=0.4.9</code>.  You should also check out the Console tab of the debugger if you need any additional troubleshooting help.</p>

<p>So go ahead, uninstall 0.4.9, install 0.4.7 open up Rubymine 2.0.1 and start debugging - your inner troubleshooter will thank you.</p> <a href="http://pivotallabs.com/make-the-rubymine-2-0-1-debugger-work-for-you/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/make-the-rubymine-2-0-1-debugger-work-for-you/">Make the RubyMine 2.0.1 debugger work for you&#8230;</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<p>In the latest Rubymine 2.0.1, we&#8217;ve had lots of problems on our workstations with getting it working reliably.  Seeing as how I love using a debugger and look forward to leaving the days of <code>puts</code> behind, I&#8217;ve spent a fair amount of time troubleshooting this problem.</p>
<p>Here&#8217;s the deal &#8211; Rubymine 2.0.1 must have <code>ruby-debug-ide -v=0.4.7</code> installed to work correctly, not the latest, which is <code>ruby-debug-ide -v=0.4.9</code>.  You should also check out the Console tab of the debugger if you need any additional troubleshooting help.</p>
<p>So go ahead, uninstall 0.4.9, install 0.4.7 open up Rubymine 2.0.1 and start debugging &#8211; your inner troubleshooter will thank you.</p>
<p>The post <a href="http://pivotallabs.com/make-the-rubymine-2-0-1-debugger-work-for-you/">Make the RubyMine 2.0.1 debugger work for you&#8230;</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/make-the-rubymine-2-0-1-debugger-work-for-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Standup 12/04/2009</title>
		<link>http://pivotallabs.com/standup-12-04-2009/</link>
		<comments>http://pivotallabs.com/standup-12-04-2009/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 15:33:00 +0000</pubDate>
		<dc:creator>David Goudreau</dc:creator>
				<category><![CDATA[Standup]]></category>

		<guid isPermaLink="false">http://pivotallabs.com/standup-12-04-2009/</guid>
		<description><![CDATA[<p><h2>Help!</h2>

<ul>
<li><p>Does Git have keyword substitution like <a href="http://svnbook.red-bean.com/en/1.2/svn.advanced.props.html#svn.advanced.props.special.keywords">Subversion</a>?</p>

<p>Well, <a href="http://stackoverflow.com/questions/39742/does-git-have-anything-like-svn-propset-svnkeywords-or-pre-post-commit-hooks">yes and no</a>.  You can use <a href="http://www.kernel.org/pub/software/scm/git/docs/gitattributes.html">gitattributes</a> to do this, though one person wonders <a href="http://www.gelato.unsw.edu.au/archives/git/0610/28891.html">why you'd even want to do this in the first place</a>.</p></li>
</ul> <a href="http://pivotallabs.com/standup-12-04-2009/">Continue reading <span class="meta-nav">&#8594;</span></a></p><p>The post <a href="http://pivotallabs.com/standup-12-04-2009/">Standup 12/04/2009</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></description>
				<content:encoded><![CDATA[<h2>Help!</h2>
<ul>
<li>
<p>Does Git have keyword substitution like <a href="http://svnbook.red-bean.com/en/1.2/svn.advanced.props.html#svn.advanced.props.special.keywords">Subversion</a>?</p>
<p>Well, <a href="http://stackoverflow.com/questions/39742/does-git-have-anything-like-svn-propset-svnkeywords-or-pre-post-commit-hooks">yes and no</a>.  You can use <a href="http://www.kernel.org/pub/software/scm/git/docs/gitattributes.html">gitattributes</a> to do this, though one person wonders <a href="http://www.gelato.unsw.edu.au/archives/git/0610/28891.html">why you&#8217;d even want to do this in the first place</a>.</p>
</li>
</ul>
<p>The post <a href="http://pivotallabs.com/standup-12-04-2009/">Standup 12/04/2009</a> appeared first on <a href="http://pivotallabs.com">Pivotal Labs</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://pivotallabs.com/standup-12-04-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic (Feed is rejected)
Page Caching using apc
Database Caching using apc
Object Caching 1124/1215 objects using apc

 Served from: pivotallabs.com @ 2013-05-24 21:38:18 by W3 Total Cache -->