<?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>a little madness &#187; Zutubi</title>
	<atom:link href="http://www.alittlemadness.com/category/zutubi/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.alittlemadness.com</link>
	<description>A man needs a little madness, or else he never dares cut the rope and be free. -Nikos Kazantzakis</description>
	<lastBuildDate>Wed, 11 Aug 2010 04:58:55 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Pulse Continuous Integration Server 2.2!</title>
		<link>http://www.alittlemadness.com/2010/08/11/pulse-continuous-integration-server-2-2/</link>
		<comments>http://www.alittlemadness.com/2010/08/11/pulse-continuous-integration-server-2-2/#comments</comments>
		<pubDate>Wed, 11 Aug 2010 04:58:55 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=722</guid>
		<description><![CDATA[Big news today: Pulse 2.2 has graduated to stable!  This release includes a stack of new features and improvements, including:

Build UI overhaul: all tabs improved and restyled.
New logs tab: making it easier to access stage logs.
Featured artifacts: choose which artifacts should appear prominently.
Build navigator: easily move forward and backward through history.
Working copy browser: view [...]]]></description>
			<content:encoded><![CDATA[<p>Big news today: <a href="http://zutubi.com/products/pulse/">Pulse 2.2</a> has graduated to stable!  This release includes a stack of new features and improvements, including:</p>
<ul>
<li>Build UI overhaul: all tabs improved and restyled.</li>
<li>New logs tab: making it easier to access stage logs.</li>
<li>Featured artifacts: choose which artifacts should appear prominently.</li>
<li>Build navigator: easily move forward and backward through history.</li>
<li>Working copy browser: view working copies for in progress builds.</li>
<li>Move refactoring: move projects and agents in the template hierarchy.</li>
<li>Template navigation: navigate directly up and down a hierarchy.</li>
<li>Subscription by label: subscribe to notifications by project groups.</li>
<li>Agent executing stages: see what all agents are building at a glance.</li>
<li>Subversion exports: for faster and smaller builds.</li>
<li>Performance improvements: key for larger installations.</li>
</ul>
<p>See the <a href="http://zutubi.com/products/pulse/new/">new in 2.2 page</a> for full details.</p>
<p>In conjunction with this release, we&#8217;ve also given our <a href="http://zutubi.com/">website</a> a complete overhaul.  The new site has a fresher look, and communicates the key features of Pulse more directly.  The updates also include some new features: </p>
<ul>
<li>RSS feeds for news items.</li>
<li>Links to our latest blog posts on the front page.</li>
<li>An improved buying process, allowing multiple licenses to be purchased in one transaction.</li>
<li>Self-service renewal payments &#8211; just enter your current license key and go!</li>
<li>A more user-friendly downloads page.</li>
</ul>
<p>We hope you enjoy the new release, and the new site.  And please, <a href="mailto:support@zutubi.com">let us know</a> what you think!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2010/08/11/pulse-continuous-integration-server-2-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pulse Continuous Integration Server 2.2 Beta!</title>
		<link>http://www.alittlemadness.com/2010/05/20/pulse-continuous-integration-server-2-2-beta/</link>
		<comments>http://www.alittlemadness.com/2010/05/20/pulse-continuous-integration-server-2-2-beta/#comments</comments>
		<pubDate>Thu, 20 May 2010 06:50:20 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=509</guid>
		<description><![CDATA[Great news: today the latest incarnation of Pulse, version 2.2, went beta!  In this release we&#8217;ve focused primarily on usability, largely in the build reporting UI.  A new build navigation widget allows you to easily step forwards and backwards in your build history &#8211; while sticking to the same build tab.  All [...]]]></description>
			<content:encoded><![CDATA[<p>Great news: today the latest incarnation of <a href="http://zutubi.com/products/pulse/">Pulse</a>, version 2.2, went beta!  In this release we&#8217;ve focused primarily on usability, largely in the build reporting UI.  A new build navigation widget allows you to easily step forwards and backwards in your build history &#8211; while sticking to the same build tab.  All of the build tabs themselves have been overhauled with new styling and layout.  Here&#8217;s a sneak peak at the artifacts tab, for example:</p>
<div id="attachment_510" class="wp-caption aligncenter" style="width: 473px"><a href="http://www.alittlemadness.com/wp-content/uploads/artifacts-tab.png"><img src="http://www.alittlemadness.com/wp-content/uploads/artifacts-tab.png" alt="Artifacts Tab" title="artifacts-tab" width="463" height="233" class="size-full wp-image-510" /></a><p class="wp-caption-text">Artifacts Tab</p></div>
<p>It not only shows additional information, with greater clarity, but also allows you to sort and filter artifacts so you can find the file you are after.  Other UI changes go beyond style too &#8211; for example the new build summary tab shows related links and featured artifacts for the build.  More information, and screenshots, are available on the <a href="http://zutubi.com/products/pulse/new/">new in 2.2</a> page.</p>
<p>We&#8217;ve also squeezed in some less obvious updates, such as:</p>
<ul>
<li>The much-requested ability to move projects and agents in the template hierarchy.</li>
<li>Convenient navigation up and down the template hierarchy.</li>
<li>The ability to subscribe to projects by label.</li>
<li>An option to use subversion exports for smaller and faster builds.</li>
<li>Improved cleanup of persistent working directories (when requesting a clean build).</li>
<li>Performance improvements for large configuration sets.</li>
</ul>
<p>The first beta build, Pulse 2.2.0, is available for <a href="http://zutubi.com/products/pulse/downloads/">download</a> now.  We&#8217;d love you to give it a spin and let us know what you think!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2010/05/20/pulse-continuous-integration-server-2-2-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zero To Continuous Integration in Three Minutes</title>
		<link>http://www.alittlemadness.com/2010/04/12/zero-to-continuous-integration-in-three-minutes/</link>
		<comments>http://www.alittlemadness.com/2010/04/12/zero-to-continuous-integration-in-three-minutes/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 07:37:54 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=487</guid>
		<description><![CDATA[A large part of our focus with Pulse revolves around saving time.  We started Pulse with the belief that it shouldn&#8217;t be so hard to set up a continuous integration server, nor should it take so much effort to maintain.  With that in mind, I&#8217;ve highlighted the main ways we achieve simplicity and [...]]]></description>
			<content:encoded><![CDATA[<p>A large part of our focus with <a href="http://zutubi.com/products/pulse/">Pulse</a> revolves around saving time.  We started Pulse with the belief that it shouldn&#8217;t be so hard to set up a continuous integration server, nor should it take so much effort to maintain.  With that in mind, I&#8217;ve highlighted the main ways we achieve simplicity and maintainability in Pulse in two new demo videos:</p>
<ul>
<li><a href="http://zutubi.com/products/pulse/videos/setup/">Getting Started With Pulse</a>: in which I start from scratch, installing Pulse, adding a new project and running a first build in under three minutes.  By watching the video, you&#8217;ll see that it is unabridged, and I did nothing but follow the simple steps laid out in front of me.</li>
<li><a href="http://zutubi.com/products/pulse/videos/templates/">Templated Configuration</a>: in which I demonstrate how Pulse&#8217;s unique templated configuration system saves you time configuring and (especially) maintaining your continuous integration server.  Templates make CI <a href="http://en.wikipedia.org/wiki/Don't_repeat_yourself">DRY</a>.</li>
</ul>
<p>We focus on saving time simply because it adds a lot of value to Pulse.  Our customers tell us that simplicity, maintainability and dedicated support are the main reasons they chose <a href="http://zutubi.com/products/pulse/">Pulse</a> to manage their builds.  <a href="http://zutubi.com/products/pulse/downloads/">Give it a go</a> yourself: you can get started in no time <img src='http://www.alittlemadness.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2010/04/12/zero-to-continuous-integration-in-three-minutes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pulse 2.1.11: Get More From Your Build Agents</title>
		<link>http://www.alittlemadness.com/2009/12/16/pulse-2-1-11-get-more-from-your-build-agents/</link>
		<comments>http://www.alittlemadness.com/2009/12/16/pulse-2-1-11-get-more-from-your-build-agents/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 18:17:16 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=463</guid>
		<description><![CDATA[The latest Pulse 2.1 beta build, 2.1.11, has just been freshly baked.  This build includes several new features and improvements.  Prominent among them is a new &#8220;statistics&#8221; tab for agents.  This tab lists various figures such as the number of recipes the agent executes each day and how long the average recipe [...]]]></description>
			<content:encoded><![CDATA[<p>The latest <a href="http://zutubi.com/products/pulse/">Pulse</a> 2.1 beta build, 2.1.11, has just been freshly baked.  This build includes several new features and improvements.  Prominent among them is a new &#8220;statistics&#8221; tab for agents.  This tab lists various figures such as the number of recipes the agent executes each day and how long the average recipe keeps the agent busy.  Statistics are also shown for agent utilisation, including a pie chart that makes it easy to visualise:</p>
<p><a href="http://www.alittlemadness.com/wp-content/uploads/agent-utilisation-chart.png"><img src="http://www.alittlemadness.com/wp-content/uploads/agent-utilisation-chart.png" alt="agent utilisation chart" title="agent utilisation chart" width="410" height="415" class="aligncenter size-full wp-image-464" /></a></p>
<p>This allows you to see if you are getting the most out of your agent machines.  If you do notice a machine is underutilised, another new feature could help identify the cause: compatibility information for projects and agents.  Pulse matches builds to agents by considering if the resources required for the project are all available on the agent.  Now when you configure requirements, Pulse shows you which agents those requirements are compatible with.  On the flip side, when configuring an agent&#8217;s available resources, Pulse shows you which projects those resources satisfy.</p>
<p>Other highlights in this build:</p>
<ul>
<li>Optional compression of large build logs (on by default).</li>
<li>Visual indicators of which users are logged in, and last access times for all users.</li>
<li>Support for Subversion 1.6 working copies for personal builds.</li>
<li>Actions can now be performed on all descendants of a project or agent template (e.g. disable all agents with one click).</li>
<li>New options to terminate a build early if a critical stage or number of stages have already failed.</li>
<li>The system/agent info tabs now show the Pulse process environment (visible to administrators only).</li>
<li>Use of bare git repositories on the Pulse master to save disk space.</li>
</ul>
<p>Yes, we have been busy <img src='http://www.alittlemadness.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .  Get over to our website and <a href="http://zutubi.com/products/pulse/downloads/">download</a> the beta now &#8212; it&#8217;s free to try, and a free upgrade for customers with current support contracts!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2009/12/16/pulse-2-1-11-get-more-from-your-build-agents/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pulse 2.1 Beta Rolls On</title>
		<link>http://www.alittlemadness.com/2009/11/25/pulse-2-1-beta-rolls-on/</link>
		<comments>http://www.alittlemadness.com/2009/11/25/pulse-2-1-beta-rolls-on/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 16:37:41 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=422</guid>
		<description><![CDATA[We&#8217;ve reached another significant milestone in the Pulse 2.1 beta: the release of 2.1.9.  This latest build rolls up a stack of fixes, improvements and new features.  Some of the much-anticipated improvements include:

Support for NAnt in the form of a command and post-processor.
Support for reading NUnit XML reports.
Support for reading QTestlib XML reports.
The [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve reached another significant milestone in the <a href="http://zutubi.com/products/pulse/">Pulse 2.1 beta</a>: the release of 2.1.9.  This latest build rolls up a stack of fixes, improvements and new features.  Some of the much-anticipated improvements include:</p>
<ul>
<li>Support for <a href="http://nant.sourceforge.net/">NAnt</a> in the form of a command and post-processor.</li>
<li>Support for reading <a href="http://www.nunit.org/index.php">NUnit</a> XML reports.</li>
<li>Support for reading <a href="http://qt.nokia.com/doc/qtestlib-manual.html">QTestlib</a> XML reports.</li>
<li>The ability to mark unstable tests as &#8220;expected&#8221; failures: they still look ugly (so fix them!) but won&#8217;t fail your build.</li>
<li>Better visibility of what is currently building on an agent.</li>
<li>New refactoring actions to &#8220;pull up&#8221; and &#8220;push down&#8221; configuration in the template hierarchy.</li>
<li>The ability to specify Perforce client views directly in Pulse.</li>
</ul>
<p>I&#8217;ll expand upon some of these in later posts.  In addition we&#8217;ve made great progress on the new project dependencies support, which should be both easier to use and more reliable in this build.</p>
<p>We&#8217;d love you to <a href="http://zutubi.com/products/pulse/downloads/">download Pulse 2.1</a> and let us know what you think! </p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2009/11/25/pulse-2-1-beta-rolls-on/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CITCON Paris 2009: Mocks, CI Servers and Acceptance Testing</title>
		<link>http://www.alittlemadness.com/2009/10/09/citcon-paris-2009-mocks-ci-servers-and-acceptance-testing/</link>
		<comments>http://www.alittlemadness.com/2009/10/09/citcon-paris-2009-mocks-ci-servers-and-acceptance-testing/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 13:48:31 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=372</guid>
		<description><![CDATA[Following up on my previous post about CITCON Paris, I thought I&#8217;d post a few points about each of the other sessions I attended.
Mock Objects
I went along to this session as a chance to hear about mock objects from the perspective of someone involved in their development, Steve Freeman.  If you&#8217;ve read my Four [...]]]></description>
			<content:encoded><![CDATA[<p>Following up on my <a href="/2009/10/02/citcon-paris-2009/">previous post</a> about <a href="http://citconf.com/">CITCON Paris</a>, I thought I&#8217;d post a few points about each of the other sessions I attended.</p>
<h2>Mock Objects</h2>
<p>I went along to this session as a chance to hear about mock objects from the perspective of someone involved in their development, <a href="http://www.m3p.co.uk/blog/">Steve Freeman</a>.  If you&#8217;ve read my <a href="/2009/03/04/four-simple-rules-for-mocking/">Four Simple Rules for Mocking</a>, you&#8217;ll know I&#8217;m not too keen on setting expectations, or even on verification.  I mainly use mocking libraries for stubbing.  Martin Fowler&#8217;s article <a href="http://martinfowler.com/articles/mocksArentStubs.html">Mocks Aren&#8217;t Stubs</a> had make me think that Steve would hold the opposite view:</p>
<blockquote><p>The <b>classical TDD</b> style is to use real objects if possible and a double if it&#8217;s awkward to use the real thing. So a classical TDDer would use a real warehouse and a double for the mail service. The kind of double doesn&#8217;t really matter that much.</p>
<p>A <b>mockist TDD</b> practitioner, however, will always use a mock for any object with interesting behavior. In this case for both the warehouse and the mail service.</p></blockquote>
<p>So my biggest takeaway from this topic was that Steve&#8217;s view was more balanced and pragmatic than Fowler&#8217;s quote suggests.  At a high level he explained well how his approach to design and implementation leads to the use of expectations in his tests.  I still have my reservations, but was convinced that I should at least take a look at Steve&#8217;s new book (which is <a href="http://www.mockobjects.com/book/">free online</a>, so I can try a chapter or two before opting for a dead tree version).</p>
<p>A few more concrete pointers can be found in the <a href="http://citconf.com/wiki/index.php?title=MockObjects">session notes</a>.  A key one for me is to <em>not</em> mock what you don&#8217;t own, but to define your own interfaces for interacting with external systems (and then mock those interfaces).</p>
<h2>The Future of CI Servers</h2>
<p>I wasn&#8217;t too keen on this topic, but since it is <a href="http://zutubi.com/">my business</a>, I felt compelled.  I actually proposed a similar topic at my first CITCON back in Sydney and found it a disappointing session then, so my expectations were low.  Apart from the less interesting probing of features on the market already, conversation did wander onto the more interesting challenge of scaling development teams.</p>
<p>The agile movement recognises the two main challenges (and opportunities) in software development are <a href="/2009/06/16/agile-methodology-with-another-level-of-indirection/">people and change</a>.  So it was interesting to hear this recast as wanting to return to our &#8220;hacker roots&#8221; &#8212; where we could code away in a room without the challenges of communication, integration and so on.  Ideas such as using information radiators to bring a &#8220;small team&#8221; feel to large and/or distributed teams were mentioned.  A less tangible thought was some kind of frequent but subtle feedback of potential integration issues.  Most of the time you could code away happily, but in the background your tools would be constantly keeping an eye out for potential problems.  What I like about this is the subtlety angle: given the benefits it&#8217;s easy to think that more feedback is always better, without thinking of the cost (e.g. interruption of flow).</p>
<h2>Acceptance Testing</h2>
<p>This year it seemed like every other session involved acceptance testing somehow.  Not terribly surprising I guess since it is a very challenging area both technically and culturally.  As I missed most of these sessions, they are probably better captured by other posts:</p>
<ul>
<li><a href="http://gojko.net/2009/09/24/top-10-reasons-why-teams-fail-with-acceptance-testing/">Top 10 reasons why teams fail with Acceptance Testing</a> by Gojko</li>
<li><a href="http://www.testingreflections.com/node/view/8274">CITCON Paris 2009</a> by Antony</li>
<li><a href="http://citconf.com/wiki/index.php?title=CITCONEurope2009Sessions">CITCON Europe 2009 Sessions</a> on the wiki</li>
</ul>
<p>One idea I would call attention to is growing a custom, targeted solution for your project.  I believe it was Steve Freeman that drew attention to an example in the Eclipse <a href="https://dev.eclipse.org/portal/myfoundation/tests/breakdown.php">MyFoundation Portal</a> project.  If you drill down you can see use cases represented in a custom <a href="https://dev.eclipse.org/portal/myfoundation/tests/swim.php?file=committer_removal/project_lead_decommitterizes_committer_and_then_committer_becomes_emeritus.txt&#038;lines=">swim lane</a> layout.</p>
<h2>Water Cooler Discussions</h2>
<p>Of course a great aspect of the conference is the random discussions you fall into with other attendees.  One particular discussion (with JtF) has given me a much-needed kick up the backside.  We were talking about the problems with trying to use acceptance tests to make up for a lack of unit testing.  This is a tempting approach on projects that don&#8217;t have a testable design and infrastructure in place &#8212; it&#8217;s just easier to start throwing tests on top of your external UI.</p>
<p>Even though I knew all the drawbacks of this approach, I had to confess that this is essentially what has happened with the JavaScript code in <a href="http://zutubi.com/products/pulse/">Pulse</a>.  We started adding AJAX to the Pulse UI in bits and pieces without putting the infrastructure in place to test this code in isolation.  Fast forward to today and we have a considerable amount of JavaScript code which is primarily tested via Selenium.  So we&#8217;re now going to get serious about unit testing this code, which will simultaneously improve our coverage and reduce our build times.</p>
<h2>Conclusion</h2>
<p>To wrap up, after returning from Paris I plan to:</p>
<ol>
<li>Give expectations a fair hearing, by reading <a href="http://www.mockobjects.com/book/">Steve&#8217;s book</a>.</li>
<li>Look for ways to improve our own information radiators to help connect Zutubi Sydney and London.</li>
<li>Get serious about unit testing our JavaScript code.</li>
<li>Get PJ and JtF to swap the dates for CITCON Asia/Pacific and Europe next year so I can get to both instead of neither! <img src='http://www.alittlemadness.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ol>
<p>If I succeed at 4 (sadly not likely!) then I&#8217;ll certainly be back next year!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2009/10/09/citcon-paris-2009-mocks-ci-servers-and-acceptance-testing/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>CITCON Paris 2009</title>
		<link>http://www.alittlemadness.com/2009/10/02/citcon-paris-2009/</link>
		<comments>http://www.alittlemadness.com/2009/10/02/citcon-paris-2009/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 17:39:56 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=366</guid>
		<description><![CDATA[As mentioned Daniel and I both attended CITCON Paris the weekend before last.  I&#8217;ve not had a chance to post a follow up yet as we also took the opportunity to eat the legs off every duck in France (well, we tried).
Firstly a huge thanks to PJ, Jeff, Eric and all the other volunteers [...]]]></description>
			<content:encoded><![CDATA[<p>As <a href="/2009/09/17/zutubi-citcon-paris-2009/">mentioned</a> Daniel and I both attended <a href="http://citconf.com">CITCON</a> Paris the weekend before last.  I&#8217;ve not had a chance to post a follow up yet as we also took the opportunity to eat the legs off every duck in France (well, we tried).</p>
<p>Firstly a huge thanks to PJ, Jeff, Eric and all the other volunteers for another great conference.  Thanks again to Eric and Guillaume for acting as local guides on Saturday night.  As always, the open spaces format and mix of attendees delivered a great day.  It was also great to see a few familiar faces from the year before in Amsterdam (and a familiar shirt thanks to <a href="http://oocode.com/">Ivan</a> <img src='http://www.alittlemadness.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ).</p>
<p>This year I proposed and facilitated a single topic: Distributed SCM in the Corporate World.  I finally added a full write-up on the <a href="http://citconf.com/wiki/index.php?title=DistributedSCMInTheCorporateWorld">conference wiki</a> earlier in the week for those who are interested.  For the impatient, here are my take-aways from the session:</p>
<ol>
<li>Of the distributed SCMs, there is not much traction in the corporate world just yet, although git appears to have gained a foothold. (Obviously our sample size is small, but I also expect CITCON attendees to be closer to the edge than the average team.)</li>
<li>Where distributed SCMs are used, the topology is still like the centralised model. However, the ability to easily clone and move changes between repositories presents opportunities to work around issues like painful networks (contrast this to special proxy servers which are needed in similar scenarios with centralised SCMs).</li>
<li>The people using git liked it primarily for its more flexible workflow and better merging. It&#8217;s conceivable to have this in the centralised model too, but no single centralised contender was mentioned.</li>
<li>So far the use of distributed SCMs didn&#8217;t seem to have practical implications for CI &#8211; probably due to the use of a centralised topology.</li>
</ol>
<p>Looks like we&#8217;re still waiting to see more creative use of distributed SCMs in corporate projects &#8211; perhaps it is something worth revisiting in future conferences.  I hope to post on some of the other sessions I attended at a later date.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2009/10/02/citcon-paris-2009/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Zutubi @ CITCON Paris 2009</title>
		<link>http://www.alittlemadness.com/2009/09/17/zutubi-citcon-paris-2009/</link>
		<comments>http://www.alittlemadness.com/2009/09/17/zutubi-citcon-paris-2009/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 12:11:56 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=362</guid>
		<description><![CDATA[Any excuse is good enough to get me to Paris, especially while it is only a train ride away.  Daniel has actually been tempted all the way from Sydney!1  So you&#8217;ll find us both at CITCON Europe 2009 tomorrow night and Saturday.  We&#8217;re both looking forward to a great weekend, after nothing [...]]]></description>
			<content:encoded><![CDATA[<p>Any excuse is good enough to get me to Paris, especially while it is only a train ride away.  Daniel has actually been tempted all the way from Sydney!<sup>1</sup>  So you&#8217;ll find us both at <a href="http://citconf.com/paris2009/">CITCON Europe 2009</a> tomorrow night and Saturday.  We&#8217;re both looking forward to a great weekend, after nothing but positive experiences at previous events.  Hopefully we&#8217;ll even get a few questions about the new <a href="http://zutubi.com/products/pulse/beta/">Pulse 2.1 Beta</a> while we&#8217;re there!</p>
<p>&#8211;<br />
<sup>1</sup> Although combining it with a well-deserved holiday may have been a factor&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2009/09/17/zutubi-citcon-paris-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pulse Continuous Integration Server 2.1 Beta!</title>
		<link>http://www.alittlemadness.com/2009/08/26/pulse-continuous-integration-server-2-1-beta/</link>
		<comments>http://www.alittlemadness.com/2009/08/26/pulse-continuous-integration-server-2-1-beta/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 11:08:38 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=326</guid>
		<description><![CDATA[Exciting news: today we&#8217;ve pushed the latest version of Pulse, namely 2.1, to beta!  This is the culmination of months of hard work on a ton of new features and improvements, including:

Project dependency support.
Easier multi-command projects.
Personal build improvements.
Fine-grained cleanup rules.
Built-in reference documentation.
Pluggable commands (build tool support).
A simpler, faster configuration UI.

The new features are described [...]]]></description>
			<content:encoded><![CDATA[<p>Exciting news: today we&#8217;ve pushed the latest version of <a href="http://zutubi.com/products/pulse/">Pulse</a>, namely 2.1, to beta!  This is the culmination of months of hard work on a ton of new features and improvements, including:</p>
<ul>
<li>Project dependency support.</li>
<li>Easier multi-command projects.</li>
<li>Personal build improvements.</li>
<li>Fine-grained cleanup rules.</li>
<li>Built-in reference documentation.</li>
<li>Pluggable commands (build tool support).</li>
<li>A simpler, faster configuration UI.</li>
</ul>
<p>The new features are described in more detail on the <a title="beta :: pulse continuous integration server" href="http://zutubi.com/products/pulse/beta/">2.1 beta page</a>.  The largest are the first two: dependencies and multi-command projects.</p>
<h3>Project Dependencies</h3>
<p>The ability to deliver artifacts from one build to another is a long-standing feature request.  <strong>Pulse</strong> 2.1 supports this as part of a larger dependencies feature.  Essentially you can declare one project to be dependent on another, allowing the downstream project to use artifacts built by the upstream one.  Artifacts are delivered through an internal artifact repository.</p>
<p>The dependencies feature goes beyond artifact delivery.  It also includes smarter triggering for dependent projects, the ability to rebuild a full dependency tree and a new &#8220;dependencies&#8221; tab which allows you to visualise the dependency graph.</p>
<p>Dependency support is built on top of <a href="http://ant.apache.org/ivy/">Apache Ivy</a>.  Our aim is for interoperability with existing tools like Ivy and Maven, but without being Java-specific.</p>
<h3>Multi-Command Projects</h3>
<p>We&#8217;ve always had support for multi-command projects in the <strong>Pulse</strong> build core.  However, to access this full flexibility you previously had to write an XML &#8220;pulse file&#8221; by hand.  As of 2.1, the configuration GUI exposes the full flexibility of the underlying build core.  This allows you to define multiple recipes per-project, each of which can have multiple commands.  All of the advanced command options once restricted to XML files are now also accessible in the GUI.</p>
<p>A key feature related to this is the ability to plug in new commands (e.g. to support a new build tool), and have the plugin seamlessly integrated into the add project wizard.  If you plug in support for a command, you get simplified wizard creation of single-command projects using your plugin for free.</p>
<h3>Give It A Go!</h3>
<p>You can <a href="http://zutubi.com/products/pulse/downloads/">download</a> <strong>Pulse</strong> today to try it out.  Free licenses are available for evaluation, open source projects and small teams.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2009/08/26/pulse-continuous-integration-server-2-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pulse 2.0.32: Custom Continuous Integration Trend Reports</title>
		<link>http://www.alittlemadness.com/2009/06/11/pulse-2032-custom-continuous-integration-trend-reports/</link>
		<comments>http://www.alittlemadness.com/2009/06/11/pulse-2032-custom-continuous-integration-trend-reports/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 23:20:25 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Continuous Integration]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Zutubi]]></category>

		<guid isPermaLink="false">http://www.alittlemadness.com/?p=215</guid>
		<description><![CDATA[I&#8217;ve just released another Pulse 2.0 build, and the new features are still coming  .  In this case, I have added the long-anticipated ability to capture custom metrics with your build results, then report trends for these metrics over time.  You can capture any benchmark of your build that you can imagine, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just released another <a href="http://zutubi.com/products/pulse/">Pulse 2.0</a> build, and the new features are still coming <img src='http://www.alittlemadness.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .  In this case, I have added the long-anticipated ability to capture custom metrics with your build results, then report trends for these metrics over time.  You can capture any benchmark of your build that you can imagine, then have Pulse chart it for you.  All sorts of charts are supported, with flexible configuration.</p>
<p>As an example, imagine capturing some simple performance measures as numbers.  You can then configure Pulse to show them in a line chart:</p>
<p><img src="http://www.alittlemadness.com/wp-content/uploads/report.png" alt="Configure Report" title="report" width="436" height="236" /></p>
<p>Pulse stores the metric values with each build, so you can easily see how performance is changing over time:</p>
<p><img src="http://www.alittlemadness.com/wp-content/uploads/chart.png" alt="chart" title="chart" width="452" height="353" class="aligncenter size-full wp-image-223" /></p>
<p>Most importantly, if performance drops, it is easily visible exactly <em>when</em> it happened, making it much easier to figure out <em>why</em>.  You can learn more about how to configure custom reports in the <a href="http://confluence.zutubi.com/x/fB4">Cookbook</a>.</p>
<p>As part of this change, I also tweaked the default reports that Pulse generates for you.  Now all of these reports are configured in the same way as the custom ones above, allowing you to change them to suit your preference. Not only that, but more reports come &#8220;out of the box&#8221;:</p>
<p><img src="http://www.alittlemadness.com/wp-content/uploads/chart2.png" alt="chart2" title="chart2" width="400" height="300" class="aligncenter size-full wp-image-225" /></p>
<p>Sweet!  Interested in continuous monitoring of your project&#8217;s performance?  Try <a href="http://zutubi.com/products/pulse/">Pulse 2.0</a> today with a free small team, open source or evaluation license. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.alittlemadness.com/2009/06/11/pulse-2032-custom-continuous-integration-trend-reports/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
