<?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: Continuous integration at Mozilla</title>
	<atom:link href="http://www.squarefree.com/2009/02/19/continuous-integration-at-mozilla/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.squarefree.com/2009/02/19/continuous-integration-at-mozilla/</link>
	<description>Jesse Ruderman on Firefox, security, and more</description>
	<lastBuildDate>Thu, 04 Mar 2010 02:28:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: links for 2009-02-22 &#124; The Build Doctor</title>
		<link>http://www.squarefree.com/2009/02/19/continuous-integration-at-mozilla/comment-page-1/#comment-4703</link>
		<dc:creator>links for 2009-02-22 &#124; The Build Doctor</dc:creator>
		<pubDate>Mon, 23 Feb 2009 00:33:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=419#comment-4703</guid>
		<description>[...] Jesse Ruderman » Continuous integration at Mozilla CI at Mozilla - fascinating. [...]</description>
		<content:encoded><![CDATA[<p>[...] Jesse Ruderman » Continuous integration at Mozilla CI at Mozilla &#8211; fascinating. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chad</title>
		<link>http://www.squarefree.com/2009/02/19/continuous-integration-at-mozilla/comment-page-1/#comment-4668</link>
		<dc:creator>Chad</dc:creator>
		<pubDate>Fri, 20 Feb 2009 10:40:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=419#comment-4668</guid>
		<description>In fact we are!  chad@imvu.com  http://www.imvu.com/jobs/</description>
		<content:encoded><![CDATA[<p>In fact we are!  <a href="mailto:chad@imvu.com">chad@imvu.com</a>  <a href="http://www.imvu.com/jobs/" rel="nofollow">http://www.imvu.com/jobs/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Raoul Duke</title>
		<link>http://www.squarefree.com/2009/02/19/continuous-integration-at-mozilla/comment-page-1/#comment-4664</link>
		<dc:creator>Raoul Duke</dc:creator>
		<pubDate>Fri, 20 Feb 2009 01:23:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=419#comment-4664</guid>
		<description>@Chad: right on! you hiring?

everybody owes it to themselves to read up on the whole Lean Kanban For Software thing, perhaps.</description>
		<content:encoded><![CDATA[<p>@Chad: right on! you hiring?</p>
<p>everybody owes it to themselves to read up on the whole Lean Kanban For Software thing, perhaps.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chad Austin</title>
		<link>http://www.squarefree.com/2009/02/19/continuous-integration-at-mozilla/comment-page-1/#comment-4663</link>
		<dc:creator>Chad Austin</dc:creator>
		<pubDate>Thu, 19 Feb 2009 23:53:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=419#comment-4663</guid>
		<description>BTW, you may need hundreds of build machines to get a 10-minute turnaround on testing your entire suite, but that&#039;s doable too.  Three years ago, we had two machines and hardly any tests.  Now we have 40-50 and piles of tests.</description>
		<content:encoded><![CDATA[<p>BTW, you may need hundreds of build machines to get a 10-minute turnaround on testing your entire suite, but that&#8217;s doable too.  Three years ago, we had two machines and hardly any tests.  Now we have 40-50 and piles of tests.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chad Austin</title>
		<link>http://www.squarefree.com/2009/02/19/continuous-integration-at-mozilla/comment-page-1/#comment-4662</link>
		<dc:creator>Chad Austin</dc:creator>
		<pubDate>Thu, 19 Feb 2009 23:51:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=419#comment-4662</guid>
		<description>Hi Jesse,

Nice post.  I&#039;ll elaborate on a few key differences between development at IMVU and development at Mozilla.

When the build goes red, commits are automatically blocked.  Every engineer who is blocked helps contribute to the fix.  This provides a natural feedback loop that causes the builds to get better over time.  Eventually, we noticed we were wasting a lot of time on the same types of failures, so we required that each person who broke the build send out a five whys ( http://startuplessonslearned.blogspot.com/2008/11/five-whys.html )

BTW, we only have two types of builds: red and green.  If there&#039;s something you care about, make regressions break the build.  Build with -Werror too.  Heck, it&#039;s crazy to me that reviewers spend their time nitting on style, when you could automate that and just make style regressions break the build.

In short, keep finding and removing waste in your development processes.

In these comments I hear an undercurrent of &quot;wah wah testing mozilla is hard&quot;, but if you keep pushing on it, it gets easier and easier.  IMVU&#039;s got PHP tests, perl tests, Flash tests, client acceptance tests, unit tests, integration with third-party services, integration with our own services, Python tests, C++ tests, assembly tests, selenium tests against internet explorer, selenium tests against firefox, various performance tests (augmented by reporting from the field) and some that I&#039;m probably forgetting.  You obviously can&#039;t do all of that overnight, but if you keep improving the situation, it will get better.

One brick at a time.</description>
		<content:encoded><![CDATA[<p>Hi Jesse,</p>
<p>Nice post.  I&#8217;ll elaborate on a few key differences between development at IMVU and development at Mozilla.</p>
<p>When the build goes red, commits are automatically blocked.  Every engineer who is blocked helps contribute to the fix.  This provides a natural feedback loop that causes the builds to get better over time.  Eventually, we noticed we were wasting a lot of time on the same types of failures, so we required that each person who broke the build send out a five whys ( <a href="http://startuplessonslearned.blogspot.com/2008/11/five-whys.html" rel="nofollow">http://startuplessonslearned.blogspot.com/2008/11/five-whys.html</a> )</p>
<p>BTW, we only have two types of builds: red and green.  If there&#8217;s something you care about, make regressions break the build.  Build with -Werror too.  Heck, it&#8217;s crazy to me that reviewers spend their time nitting on style, when you could automate that and just make style regressions break the build.</p>
<p>In short, keep finding and removing waste in your development processes.</p>
<p>In these comments I hear an undercurrent of &#8220;wah wah testing mozilla is hard&#8221;, but if you keep pushing on it, it gets easier and easier.  IMVU&#8217;s got PHP tests, perl tests, Flash tests, client acceptance tests, unit tests, integration with third-party services, integration with our own services, Python tests, C++ tests, assembly tests, selenium tests against internet explorer, selenium tests against firefox, various performance tests (augmented by reporting from the field) and some that I&#8217;m probably forgetting.  You obviously can&#8217;t do all of that overnight, but if you keep improving the situation, it will get better.</p>
<p>One brick at a time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert Kaiser</title>
		<link>http://www.squarefree.com/2009/02/19/continuous-integration-at-mozilla/comment-page-1/#comment-4660</link>
		<dc:creator>Robert Kaiser</dc:creator>
		<pubDate>Thu, 19 Feb 2009 22:46:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=419#comment-4660</guid>
		<description>&quot;Then it is always ok to pull or push, because mozilla-central is always green. &quot; Well, that&#039;s only half the truth, as tryservers aren&#039;t testing all uses of the Mozilla tree. There&#039;s platforms and applications using mozilla-central as a base that might actually have failures Fennec, Thunderbird, SeaMonkey, and whatever else will probably never all be covered by try setups. And then, I fail to see how the try-to-push setup is much different than the current setup other than the tree you pull is always green for Firefox tier-1 platforms. If one tried push fails and another slightly later pushed one doesn, I don&#039;t think it&#039;ll be trivial to automatically sort that out without breaking the flow of patches into the repo, if automatically resolving it is possible at all.</description>
		<content:encoded><![CDATA[<p>&#8220;Then it is always ok to pull or push, because mozilla-central is always green. &#8221; Well, that&#8217;s only half the truth, as tryservers aren&#8217;t testing all uses of the Mozilla tree. There&#8217;s platforms and applications using mozilla-central as a base that might actually have failures Fennec, Thunderbird, SeaMonkey, and whatever else will probably never all be covered by try setups. And then, I fail to see how the try-to-push setup is much different than the current setup other than the tree you pull is always green for Firefox tier-1 platforms. If one tried push fails and another slightly later pushed one doesn, I don&#8217;t think it&#8217;ll be trivial to automatically sort that out without breaking the flow of patches into the repo, if automatically resolving it is possible at all.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
