<?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>Eric Lefevre-Ardant on Java &#38; Agile &#187; conferences</title>
	<atom:link href="http://ericlefevre.net/wordpress/category/conferences/feed/" rel="self" type="application/rss+xml" />
	<link>http://ericlefevre.net/wordpress</link>
	<description>Eric&#039;s Earnest Elucidations</description>
	<lastBuildDate>Mon, 06 Feb 2012 06:08:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Java&#8217;s varargs are for unit tests</title>
		<link>http://ericlefevre.net/wordpress/2011/11/21/javas-varargs-are-for-unit-tests/</link>
		<comments>http://ericlefevre.net/wordpress/2011/11/21/javas-varargs-are-for-unit-tests/#comments</comments>
		<pubDate>Mon, 21 Nov 2011 16:53:30 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[conferences]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[tdd]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=947</guid>
		<description><![CDATA[At Devoxx last week, Joshua Bloch argued during his talk &#8220;The Evolution of Java: Past, Present, and Future&#8221; that varargs are only &#8220;somewhat useful&#8221;. I think he is overlooking some usages, particularly in tests. Here is my case. A reminder &#8230; <a href="http://ericlefevre.net/wordpress/2011/11/21/javas-varargs-are-for-unit-tests/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>At <a href="http://www.devoxx.com/">Devoxx</a> last week, Joshua Bloch argued during his talk &#8220;The Evolution of Java: Past, Present, and Future&#8221; that varargs are only &#8220;somewhat useful&#8221;. I think he is overlooking some usages, particularly in tests. Here is my case.</p>
<p>A reminder on how varargs work: essentially, they allow the last parameter of a method to be made of zero to many values of the same type.<br />
For example, a method like this:</p>
<pre>int max(int... values) {...};</pre>
<p>is used by code like that:</p>
<pre>int maximum = max(1, 2, 7, 0);
int maximum = max(1);</pre>
<p>In truth, that form is only moderately useful in production code. It turns out that, on my projects at least, it is not so common for methods to be called with varying number of parameters. And in those cases, it is often acceptable to simply overload a method with more parameters.</p>
<p>There are however at least two cases where varargs shine.</p>
<p>One is in utilities classes. For example, Math.max() only takes exactly two parameters. Which comparisons between 3 or more elements very awkward. If a varargs had been used, Math.max(3, Math.max(1, 4)) would be written Math.max(3, 1, 4). Agreed, that does not happen that often. But it does occasionally.<br />
(I must admit that I do not understand exactly why Math.max() has not been modified to take a varargs nowadays)</p>
<p>However, the biggest benefit, I believe, is in the writing of tests.<br />
Tests tend to contain lots of variations in the values passed to the code under test. And it is critical to keep the clutter to a minimum.<br />
For example, here is how a typical series of tests might look like</p>
<pre>@Test
public void should_find_the_longest_name_for_a_single_user() {
	List users = new ArrayList();
	users.add(new User("eric"));
	assertThat(findLongestName(users), is("eric"));
}</pre>
<pre>@Test
public void should_find_the_longest_name_when_shorted_is_first() {
	List users = new ArrayList();
	users.add(new User("eric"));
	users.add(new User("cecile"));
	assertThat(findLongestName(users), is("cecile"));
}</pre>
<pre>@Test
public void should_find_the_longest_name_when_longest_is_first() {
	List users = new ArrayList();
	users.add(new User("cecile"));
	users.add(new User("eric"));
	assertThat(findLongestName(users), is("cecile"));
}</pre>
<pre>@Test(expected = RuntimeException.class)
public void should_fail_when_search_for_the_longest_name_with_no_users() {
	assertThat(findLongestName(new ArrayList()), is("eric"));
}</pre>
<p>Of course, they can be made a bit nicer using the varargs in Arrays.asList():</p>
<pre>@Test
public void should_find_the_longest_name_for_a_single_user() {
	assertThat(findLongestName(asList(new User("eric"))), is("eric"));
}

@Test
public void should_find_the_longest_name_when_shorted_is_first() {
	assertThat(findLongestName(asList(new User("eric"),
		new User("cecile"))), is("cecile"));
}

@Test
public void should_find_the_longest_name_when_longest_is_first() {
	assertThat(findLongestName(asList(new User("cecile"),
		new User("eric"))), is("cecile"));
}

@Test(expected = RuntimeException.class)
public void should_fail_when_search_for_the_longest_name_with_no_users() {
	findLongestName(Arrays.asList());
}</pre>
<p>However, the real goodness comes when writing our own builder method:</p>
<pre>private static List users(String... names) {
	List users = new ArrayList();
	for (String name : names) {
		users.add(new User(name));
	}
	return users;
}</pre>
<p>(side note: I like this type of methods to be private -so that I get notified when they are not used anymore- and static -mostly because they look nicer in italic, which makes it clearer that they are not part of the code being tested-)</p>
<p>which allow our tests to become:</p>
<pre>@Test
public void should_find_the_longest_name_for_a_single_user() {
	assertThat(findLongestName(users("eric")), is("eric"));
}

@Test
public void should_find_the_longest_name_when_shorted_is_first() {
	assertThat(findLongestName(users("eric", "cecile")), is("cecile"));
}

@Test
public void should_find_the_longest_name_when_longest_is_first() {
	assertThat(findLongestName(users("cecile", "eric")), is("cecile"));
}

@Test(expected = RuntimeException.class)
public void should_fail_when_search_for_the_longest_name_with_no_users() {
	findLongestName(users());
}</pre>
<p>Tests become a lot shorter, consistent, and easier to read. In fact, at this point, it is worth grouping the tests (at least those that do not throw an exception) into a single one:</p>
<pre>@Test
public void should_find_the_longest_name_for_a_single_user() {
	assertThat(findLongestName(users("eric")), is("eric"));
	assertThat(findLongestName(users("eric", "cecile")), is("cecile"));
	assertThat(findLongestName(users("cecile", "eric")), is("cecile"));
}

@Test(expected = RuntimeException.class)
public void should_fail_when_search_for_the_longest_name_with_no_users() {
	findLongestName(users());
}</pre>
<p>Final note: I prefer not to group those builder methods into a general utilities class &#8212; I tend to duplicate them in each test class. One reason is that I prefer keeping much of the test code close together. Another is that I tend to change the name of the method from test class to test class to make the code more fluent. Also, I think that DRY principles are not as important in the tests as they are in the production code.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2011/11/21/javas-varargs-are-for-unit-tests/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CITCON London 2010</title>
		<link>http://ericlefevre.net/wordpress/2010/11/08/citcon-london-2010/</link>
		<comments>http://ericlefevre.net/wordpress/2010/11/08/citcon-london-2010/#comments</comments>
		<pubDate>Mon, 08 Nov 2010 08:14:52 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[citcon]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=875</guid>
		<description><![CDATA[I&#8217;m returning from CITCON London 2010. What a great conference (and I&#8217;m not just saying that just because I helped organize it)! In fact, I feel it has been the best CITCON so far. I was a bit afraid of &#8230; <a href="http://ericlefevre.net/wordpress/2010/11/08/citcon-london-2010/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m returning from CITCON London 2010. What a great conference (and I&#8217;m not just saying that just because I helped organize it)!</p>
<p style="text-align: center;"><a title="Break Sponsors by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/5150758559/"><img class="aligncenter" src="http://farm5.static.flickr.com/4061/5150758559_e2354f9295.jpg" alt="Break Sponsors" width="500" height="333" /></a></p>
<p>In fact, I feel it has been the best CITCON so far. I was a bit afraid of the large crowd (150 people registered, a similar number to Paris last year; I&#8217;m not sure how many showed up. 120, maybe?), but it turned out easier than expected to discuss with other participants. Also, and most importantly, there was a feeling of a higher level of experience than usual. Few talks about the basics of tests or Continuous Integration (and no &#8220;what&#8217;s the best CI server&#8221; session at all, thank God). Instead, it was &#8220;Advanced TDD&#8221;, &#8220;Share Pair Programming experience&#8221;, &#8220;Mobile Testing&#8221;, etc. All good stuff and, as usual, I just couldn&#8217;t attend all the sessions I wanted.</p>
<p>As a side note, there were also less talk related to competing programming environment. Only a few people introduced themselves as working in Java, .NET or another programming environment. I can think of a couple of reasons:</p>
<ul>
<li>Java is so overwhelmingly everywhere that there is just no point bragging about it anymore</li>
<li>the .NET crowd (and possibly others) have given up on trying to make their work environments better. I didn&#8217;t attend the one &#8220;CI in .NET&#8221; session (there were no Java-specific sessions), but I was told that it was a slightly discouraging share of thoughts such as &#8220;it wasn&#8217;t my choice, but I want to make the best of it&#8221;, &#8220;I like .NET but the environment is just lacking&#8221; or &#8220;seriously, what do *you* guys do to implement CI in .NET?&#8221;.</li>
</ul>
<p>In some ways, the Java world is also calcifying around some tools such as Maven (some contenders are barking at the door, though). But the feeling is that, by and large, things get done is a fairly productive way. (I&#8217;ll admit that I can be overly optimistic about this, considering that I am in a Java shop (Algodeal) where the incredible freedom helps us being particularly efficient)</p>
<p>Now, I <em>was</em> surprized that few mentioned up-and-coming languages such as Scala and Clojure. Are they just being lumped into the Java category? Was CITCON London the wrong area to find experts in them?</p>
<p>Other highlights of the conference include the venue. Thank you ever so much, Wendy, for opening the doors of SkillsMatter. You went out of your way. The location was fantastic, and the venue perfect for us. I especially appreciated the powerful wifi internet access, a rarity even in fancy hotels.<br />
I also appreciated the fact that this area London has large pubs that can host all willing participants after the conference is over (this was frustrating in Paris last year, where bars can be small and especially crowded on Friday evenings). Too bad music can be so loud there, making conversations sometimes difficult.</p>
<p>A few things to remember from CITCON London:</p>
<ul>
<li><a href="http://youdevise.github.com/narrative/">Narrative</a>, by the good folks at youDevise is a new test framework/helper. They present it as a BDD framework, but I rather see it as a way to enforce readability in your test classes. I like the modest, KISS, approach too. Plus, it seems easy to extend. I wrote a quick sample <a href="https://gist.github.com/665399">here</a>.</li>
<li>Continuous Deployment was a big topic, as expected. There were few mentions on specific tools or techniques, but the feeling was that the practice was getting mainstream.</li>
<li>Apparently, a big framework in the JavaScript TDD space is <a href="http://docs.jquery.com/Qunit">QUnit</a>. The session had left a lot to be desired (I left mid-way, but I&#8217;m told the end was good), but it at least drove the point that TDD was getting common in JS.</li>
<li>Again, I left with the feeling that we are not doing enough to generalize Pair Programming at Algodeal.</li>
</ul>
<p style="text-align: left;">For CITCON 2011, there were many votes for Berlin. Sounds like a good destination. Again, it will depend on whether we can get a cheap enough venue there.</p>
<p style="text-align: center;"><a title="Continuous Deployment by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/5155822962/"><img class="aligncenter" src="http://farm5.static.flickr.com/4085/5155822962_1fc7b414a7.jpg" alt="Continuous Deployment" width="333" height="500" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2010/11/08/citcon-london-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Predictions for CITCON Europe 2009</title>
		<link>http://ericlefevre.net/wordpress/2009/09/28/predictions-for-citcon-europe-2009/</link>
		<comments>http://ericlefevre.net/wordpress/2009/09/28/predictions-for-citcon-europe-2009/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 06:45:17 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[citcon]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=780</guid>
		<description><![CDATA[Last year, at CITCON Amsterdam 2008, a few of us stayed late into the night, drinking beer and discussing the state of the world. And what to do when you have 21 geeks with time on their hands? Why, predictions, &#8230; <a href="http://ericlefevre.net/wordpress/2009/09/28/predictions-for-citcon-europe-2009/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Last year, at CITCON Amsterdam 2008, a few of us stayed late into the night, drinking beer and discussing the state of the world.</p>
<p>And what to do when you have 21 geeks with time on their hands? Why, predictions, of course! (I want to do it again this year, <a href="http://bit.ly/2JEjbC">check out the Google Moderator page I&#8217;ve started</a>)</p>
<p style="text-align: center;"><a title="Bar at the Marriott Hotel by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/2914682691/"><img class="aligncenter" src="http://farm4.static.flickr.com/3022/2914682691_e410702e60.jpg" alt="Bar at the Marriott Hotel" width="500" height="375" /></a></p>
<p>We decided to come up with a number of predictions (and bet on them), some serious, some not, that would be verified at CITCON Europe 2009, the price being beer points. And, the losers will be named and shamed, while the winners will be glorified (at least until new predictions are made, and for no more than a year, whichever is earliest).</p>
<p>Here are the predictions, and the actual outcome (a couple of them were settled by votes at the closing session):</p>
<table border="0">
<thead>
<tr>
<td>Prediction</td>
<td>Votes</td>
<td>Actual</td>
</tr>
</thead>
<tbody>
<tr>
<td>CITCON Europe has more than 120 attendees (I had voted against!!)</td>
<td>YES</td>
<td>YES</td>
</tr>
<tr>
<td>more .NET developers than Java developers</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>CITCON will take place in Paris</td>
<td>YES</td>
<td>YES</td>
</tr>
<tr>
<td>at least 5% of attendees are female (I personally did vote in favor)</td>
<td>yes</td>
<td>NO</td>
</tr>
<tr>
<td>at least 20% of participants do Ruby</td>
<td>draw</td>
<td>NO</td>
</tr>
<tr>
<td>Java closures are considered too complex</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>IBM buys ThoughtWorks</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>IBM buys Valtech</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>there is a Maven.NET coded in Java, with MS Tools integration</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>Ivan Moore gives up on build-o-matic</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>McCain wins the election</td>
<td>draw</td>
<td>NO</td>
</tr>
<tr>
<td>CITCON Europe takes place in Frankfurt</td>
<td>NO</td>
<td>NO</td>
</tr>
<tr>
<td>Jeffrey Fredrick XOR Tom Sulston (that is, either Jeffrey or Tom, but not both) have short hair</td>
<td>YES</td>
<td>YES</td>
</tr>
<tr>
<td>Fewer Agile Consultancies</td>
<td>NO</td>
<td>NO</td>
</tr>
</tbody>
</table>
<p>So, out of 14 predictions, we got 11 right, 1 wrong, and 2 undecided.<br />
Now, you may think that the answers were straightforward. But you need to realize that, for each one of them, someone was willing to bet a beer against the consensus. In other words, at the time when the predictions were made, it was not clear cut.</p>
<p>In the interest of the bets, I shall now reveal the names.<br />
Winners (Glory to Them All!)</p>
<ul>
<li> Andrew Parker (8 rights, 1 wrong)</li>
<li>Eric Lefevre (that&#8217;s me) (10 rights, 2 wrongs)</li>
<li>Guillaume Tardif (6 rights, no wrongs)</li>
<li>Jean-Michel Bea (8 rights, 2 wrongs)</li>
<li>Pekka Pietikäinen (7 rights, 2 wrongs)</li>
</ul>
<p>Losers (Boo to Them All!)</p>
<ul>
<li>Julian Simpson (3 rights, 4 wrongs)</li>
<li>Jeffrey Fredrick (3 rights, 6 wrongs)</li>
<li>Paul Julius (5 rights, 2 wrongs) &#8212; PJ is still a loser, &#8216;cos he has been right on bets with small payoffs</li>
<li>Tom Sulston (4 rights, 4 wrongs)</li>
</ul>
<p>I have started a new series of predictions for CITCON Europe 2010. There are two steps:</p>
<ol>
<li>suggest predictions &amp; vote for the best ones</li>
<li>when predictions have been selected, vote</li>
</ol>
<p>To actually win your beers, you&#8217;ll have to come to CITCON Europe 2010 (still unannounced).<br />
Please check out the <a href="http://bit.ly/2JEjbC">Google Moderator page</a> to propose your own predictions.</p>
<p style="text-align: left;"><a title="Sorting out the bets from 2008 by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/3936962407/"><img class="aligncenter" src="http://farm3.static.flickr.com/2637/3936962407_92acc456f3.jpg" alt="Sorting out the bets from 2008" width="333" height="500" /></a>If you want to the gritty details, <a href="http://www.flickr.com/photos/elefevre/3937737658/in/set-72157622419361134/">I have a picture of the full spreadsheet</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/09/28/predictions-for-citcon-europe-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CITCON Paris 2009, a personal retrospective of the organization</title>
		<link>http://ericlefevre.net/wordpress/2009/09/23/citcon-paris-2009-a-personal-retrospective-of-the-organization/</link>
		<comments>http://ericlefevre.net/wordpress/2009/09/23/citcon-paris-2009-a-personal-retrospective-of-the-organization/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 06:21:36 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[citcon]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=740</guid>
		<description><![CDATA[As I write this, 3 days after the closing, I have still not fully recovered from CITCON Paris 2009. I have been very much involved in organizing this edition, so I would like to indulge in a bit of personal &#8230; <a href="http://ericlefevre.net/wordpress/2009/09/23/citcon-paris-2009-a-personal-retrospective-of-the-organization/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a title="Closing session by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/3937723988/"><img class="aligncenter" src="http://farm3.static.flickr.com/2640/3937723988_95b61ec897.jpg" alt="Closing session" width="500" height="281" /></a></p>
<p>As I write this, 3 days after the closing, I have still not fully recovered from <a href="http://citconf.com/paris2009/">CITCON Paris 2009</a>. I have been very much involved in organizing this edition, so I would like to indulge in a bit of personal retrospective, mostly on the organization of the conference. This is basically self-reflexion; if that&#8217;s not your thing, you can leave. You won&#8217;t miss much.</p>
<p>Here goes.</p>
<p>What worked at the conference:</p>
<ul>
<li>we had more than 120 participants, which is in line with CITCON&#8217;s goals and the highest number ever in all 11 events. Also, it is very close to the number we had estimated ourselves.</li>
<li>all the people in the waiting list have eventually been invited to join the main registration list; no one was left behind</li>
<li>costs were well under control, especially thanks to the free use of ISEP&#8217;s classrooms</li>
<li>we got significant money from sponsors; in fact, combined with the well-contained expenses, this event contributed hugely to settle debts from the past events</li>
<li>quality of food was alright (especially for a free event)</li>
<li>there were a number of well-known people, helping make this event special for other participants</li>
<li>twittering was big; according to my feed on Google Reader, there were <a href="http://twitter.com/elefevre/statuses/4125558777">more than 300 tweets</a>. Including quite a few from <a href="http://twitter.com/elefevre/statuses/4102258884">people regretting</a> <a href="http://twitter.com/elefevre/statuses/4103238842">not to have come</a>.</li>
</ul>
<p>What could have worked better:</p>
<ul>
<li>there was not enough food. I think this is partly because the caterer is not a real professional. Even though we had given good estimates for the number of participants, I think that, as the person in charge of the student foyer, he was used mostly to students eating on a budget. If we use such a semi-professional in the future (likely, since we want to use more free venues such as universities), we would be wise to over-estimate the number of participants as far as food is concerned. Just in case.</li>
<li>Even though we did arrange the chairs in the main room in circles, we left the other rooms as they were, theater-style. This didn&#8217;t help having involved discussions (as opposed to presentations).</li>
<li>I&#8217;m wondering if we have not reached the maximum possible number of participants. One of the things that I really enjoyed last year was the late night drinks with the few that dared stay. This year, we were 30 or 40 at the end. Groups started to split up. <a href="http://guillaume.tardif.free.fr/">Guillaume</a> and I led a few to the <a href="http://www.restaurant-tijos.com/">Ti Jos bar</a> and to the Caveau des Oubliettes. Although nice, it was a bit sad, as there wasn&#8217;t really a &#8220;closing the closing session&#8221; moment. We didn&#8217;t even get to do new predictions! (and settle last year&#8217;s bets, BTW).</li>
<li>Some rooms were lacking a video projector. I wonder if it would be good investment for the Open Information Foundation to buy one of those small and inexpensive projectors that have appeared recently on the market</li>
</ul>
<p>On a more personal note, the conference passed a bit like a blur for me. Despite using <a href="http://citconf.com/paris2009/openspace.php">OpenSpace Technology</a>, I still ended up as the contact person for many participants, suppliers and sponsors, which was distracting. Also, helping <a href="http://www.shootingducksprod.com/">my brother</a> with the filming didn&#8217;t help. I even managed to miss out on the (now traditional) &#8220;Is Scrum Evil?&#8221; session, which had been a favorite of mine last year.</p>
<p>I still had a great time. Met <a href="http://antonymarcano.com/">Antony Marcano</a> and <a href="http://andypalmer.com/">Andy Palmer</a> from <a href="http://www.pairwith.us/">Pair With Us</a> (they are hoping to join us at the <a href="http://xp-france.net/cgi-bin/wiki.pl?DojoDeveloppement">Paris Coding Dojo</a> sometime &#8212; looking forward to it) as well as <a href="http://ericlefevre.net/wordpress/2008/09/11/everything-is-vague-to-a-degree-you-do-not-realise-till-you-have-tried-to-make-it-precise/">Gojko Adzic</a>, whose copies of book was given away to some lucky participants, and Jason Sankey and Daniel Ostermeier from <a href="http://zutubi.com/">Zutubi</a>&#8230; Reconnected with many former colleagues and friends, too. I also attended <a href="http://ericlefevre.net/wordpress/2009/09/21/mock-objects-at-citcon-paris-2009/">a few</a> <a href="http://ericlefevre.net/wordpress/2009/09/22/faster-tests-at-citcon-paris-2009/">sessions</a> ;-)</p>
<p>Oh, and last but not least, I&#8217;m <a href="http://www.flickr.com/photos/elefevre/3936962407/in/set-72157622419361134/">one of the winners from last year&#8217;s bets</a>! What do I win? Well, beer, in theory. But, even better, I get to call PJ, Jeffrey, Tom, Julian and Yegor LOSERS for a year. Priceless.</p>
<p>Check out</p>
<ul>
<li><a href="http://www.flickr.com/photos/elefevre/sets/72157622419361134/">all my pictures</a> from the conference (pictures by others <a href="http://citconf.com/wiki/index.php?title=Photos#CITCON_Europe_2009_Paris">there</a>)</li>
<li><a href="http://citconf.com/wiki/index.php?title=OnTheWeb#CITCON_Europe_2009_Paris_France">all the blog posts</a> by participants</li>
<li>my notes on the session on <a href="http://ericlefevre.net/wordpress/2009/09/21/mock-objects-at-citcon-paris-2009/">Mock Objects</a></li>
<li>my notes on the session on <a href="http://ericlefevre.net/wordpress/2009/09/22/faster-tests-at-citcon-paris-2009/">Faster Tests</a></li>
<li>all the <a href="http://citconf.com/wiki/index.php?title=CITCONEurope2009Sessions">notes on the sessions</a></li>
</ul>
<p>See you next year, in one of the five cities in our short list (Zürich, Copenhagen, Belgrade, Dublin, and Prague).</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/09/23/citcon-paris-2009-a-personal-retrospective-of-the-organization/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Faster tests, at CITCON Paris 2009</title>
		<link>http://ericlefevre.net/wordpress/2009/09/22/faster-tests-at-citcon-paris-2009/</link>
		<comments>http://ericlefevre.net/wordpress/2009/09/22/faster-tests-at-citcon-paris-2009/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 08:11:52 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[citcon]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=751</guid>
		<description><![CDATA[&#8220;Going nowhere fast&#8221; by Nathan The session on Faster Tests (led by David) was interesting, at least to the extend that it was quite clear that we at Algodeal are not doing too bad indeed (Douglas Squirrel from youDevise is another one &#8230; <a href="http://ericlefevre.net/wordpress/2009/09/22/faster-tests-at-citcon-paris-2009/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-align: center; "><a href="http://www.flickr.com/photos/7843389@N02/2300190277"><img style="border: 0px initial initial;" src="http://farm3.static.flickr.com/2036/2300190277_360853ae0d.jpg" alt="&quot;Going nowhere fast&quot;" width="300" height="225" /></a></p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-align: center; "><a href="http://www.flickr.com/photos/7843389@N02/2300190277">&#8220;Going nowhere fast&#8221;</a> by <a href="http://www.flickr.com/people/7843389@N02">Nathan</a></p>
<p>The session on Faster Tests (led by <a href="http://javabien.net/">David</a>) was interesting, at least to the extend that it was quite clear that we at Algodeal are not doing too bad indeed (Douglas Squirrel from <a href="http://www.timgroup.com/">youDevise</a> is another one that seems to be quite cerebral about tests and builds).</p>
<p style="text-align: center;"><a title="Faster tests by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/3944199578/"><img src="http://farm3.static.flickr.com/2676/3944199578_9c4a90e93e_m.jpg" alt="Faster tests" width="240" height="180" /></a> <a title="Faster tests by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/3944199432/"><img src="http://farm3.static.flickr.com/2655/3944199432_fe41e0d716_m.jpg" alt="Faster tests" width="240" height="180" /></a></p>
<p>By looking that the various options discussed to get tests faster, I think it&#8217;s fair to say that the only way to really speed up tests is by compromising their integrity, at least to a level. In a way, to make tests faster, you&#8217;ve got to face reality and move away from their ideal abstraction (very reminiscent of Joel Spolsky&#8217;s <a href="http://ericlefevre.net/wordpress/2009/05/06/maven-it-aint-too-bad/">Law of Leaky Abstractions</a>). The only question is: how confident are you that those (slightly compromised) tests actually test something useful?</p>
<p>This leads to the conclusion that we only keep long integration tests because it is difficult for us to really understand what&#8217;s going on. If we did have an excellent understanding, we would have unit tests instead. And, interestingly, as we progress in our project, we find ways to convert integration tests into unit tests. In other words, we better understand what&#8217;s going on.</p>
<p>Also, check out my notes on the <a href="http://ericlefevre.net/wordpress/2009/09/21/mock-objects-at-citcon-paris-2009/">session on Mock Objects</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/09/22/faster-tests-at-citcon-paris-2009/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mock objects at CITCON Paris 2009</title>
		<link>http://ericlefevre.net/wordpress/2009/09/21/mock-objects-at-citcon-paris-2009/</link>
		<comments>http://ericlefevre.net/wordpress/2009/09/21/mock-objects-at-citcon-paris-2009/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 20:47:23 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[citcon]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=743</guid>
		<description><![CDATA[The session on mock objects, mostly lead by Steve Freeman, was a bit messy but interesting. My colleague David got to show some of our code on the screen, which was scary and exciting (he felt the urge to fix some of the &#8230; <a href="http://ericlefevre.net/wordpress/2009/09/21/mock-objects-at-citcon-paris-2009/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;"><a href="http://www.flickr.com/photos/43021516@N06/4382428687/in/photostream/"><img class="alignright" title="Alice In Wonderland (Illustrator: Attwell, 1910?) Listening to Mock Turtle's song, Toronto Public Library Special Collections" src="http://farm3.staticflickr.com/2763/4382428687_e9bbc7b4d2_m_d.jpg" alt="" width="193" height="300" /></a></p>
<p>The <a href="http://citconf.com/wiki/index.php?title=MockObjects">session on mock objects</a>, mostly lead by <a href="http://www.mockobjects.com/">Steve Freeman</a>, was a bit messy but interesting. My colleague <a href="http://javabien.net/">David</a> got to show some of our code on the screen, which was scary and exciting (he felt the urge to fix some of the tests he had shown immediately after). Also, I think I finally understood the relation between mock objects and interfaces that Steve insists on.</p>
<p>See, I always thought that Steve was in favour in adding interfaces directly on top of concrete classes. For example, if you have a FileManager, you would also have a IFileManager.</p>
<p>Steve made more clear that the idea was to use interfaces to represent a role, or (more exactly) just one of the roles that a class has. That makes sense. But, to be honest, I still prefer to have a single role per class. So, no interfaces really needed.</p>
<p>I wish I had more time to talk with Steve. Maybe his <a href="http://www.amazon.com/gp/product/0321503627?ie=UTF8&amp;tag=ericlefevre-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0321503627">coming book</a> will have answers for me.</p>
<p style="text-align: center;"><a title="Mock objects by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/3936909599/"><img class="aligncenter" src="http://farm3.static.flickr.com/2481/3936909599_99d9f73924_m.jpg" alt="Mock objects" width="160" height="240" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/09/21/mock-objects-at-citcon-paris-2009/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Interviewed by François Beauregard</title>
		<link>http://ericlefevre.net/wordpress/2009/09/10/interviewed-by-francois-beauregard/</link>
		<comments>http://ericlefevre.net/wordpress/2009/09/10/interviewed-by-francois-beauregard/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 21:55:45 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[agile2009]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=733</guid>
		<description><![CDATA[François Beauregard from Pyxis Technologies interviewed me during Agile 2009 for their Vox Agile podcast. The interview is now online. We chatted about a favorite topic of mine: how to expand the horizons for Agile. My point is mostly that &#8230; <a href="http://ericlefevre.net/wordpress/2009/09/10/interviewed-by-francois-beauregard/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://pyxis-tech.com/blog/author/fbeauregard/">François Beauregard</a> from <a href="http://www.pyxis-tech.com/">Pyxis Technologies</a> interviewed me during <a href="http://agile2009.agilealliance.org/">Agile 2009</a> for their <a href="http://bit.ly/Wo7qS">Vox Agile podcast</a>. The interview is now <a href="http://pyxis-tech.com/fr/medias/elargir-les-horizons">online</a>.</p>
<p style="text-align: center;"><a title="Toy sampling megaphone by mikael altemark" href="http://www.flickr.com/photos/24844537@N00/337248947"> <img class="aligncenter" src="http://farm1.static.flickr.com/133/337248947_f1eadc7cc0.jpg" alt="Toy sampling megaphone" width="300" height="247" /> </a></p>
<p>We chatted about a favorite topic of mine: how to expand the horizons for Agile. My point is mostly that the Agile crowd is mostly talking about basic issues in software development, including during the Agile 2009 conference. I fear that this my give the wrong impression to beginners (&#8220;how, so we only need to do this and that, and we&#8217;re agile? Cool!&#8221;) and even to seasoned practitioners (&#8220;this Agile thing is not addressing my needs anymore&#8221;).<br />
I would much prefer that we talk more about complex problems, whether they relate directly to Agile or not. This can include technical discussions or more touchy-feely ones. As long as we are addressing difficult problems, we will be making progress.</p>
<p>I also want to see more cross-domains talks. Obvious domains are the heavy industry (I won&#8217;t need to remind how influential Toyota has been to the IT industry) or performing arts. But that could also include things such as <a href="http://en.wikipedia.org/wiki/Behavioral_economics">Behavioral Economics</a>.</p>
<p>Or not. I don&#8217;t know for sure. However, I do know that we should be taking more risks. And stop presenting Introductions to Retrospectives for the upteenth time.</p>
<p>At the end of the talk, I mention 2 things for further reading. Here they are, plus a bonus book that I&#8217;ve just read:</p>
<ul>
<li><a href="http://www.amazon.com/gp/product/0321413091?ie=UTF8&amp;tag=ericlefevre-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0321413091">Implementation Patterns</a>, by Kent Beck</li>
<li><a href="http://www.randsinrepose.com/">Rands In Repose</a>, a blog on technological culture and managerial aspect of life in an IT firm; posts are not frequent, but very interesting (and long)</li>
<li>bonus track: <a href="http://www.amazon.com/gp/product/0812977874?ie=UTF8&amp;tag=ericlefevre-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0812977874">The Logic of Life</a>, a book by Tim Harford; this is very much in the style of <a href="http://www.amazon.com/gp/product/0345494016?ie=UTF8&amp;tag=ericlefevre-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0345494016">The Undercover Economist</a> (his previous books, which I enjoyed a lot) and <a href="http://www.amazon.com/gp/product/0060731338?ie=UTF8&amp;tag=ericlefevre-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0060731338">Freakonomics</a> (ditto)</li>
</ul>
<p>The podcast is available in French on the <a href="http://pyxis-tech.com/fr/medias/elargir-les-horizons">Vox Agile site</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/09/10/interviewed-by-francois-beauregard/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[Agile 2009] What&#8217;s in the conference for Java developers?</title>
		<link>http://ericlefevre.net/wordpress/2009/08/05/agile-2009-whats-in-the-conference-for-java-developers/</link>
		<comments>http://ericlefevre.net/wordpress/2009/08/05/agile-2009-whats-in-the-conference-for-java-developers/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 17:26:58 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[agile2009]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=714</guid>
		<description><![CDATA[Agile 2009 is not just for Agile coaches or project managers. About one in three participants qualify herself as a developer or a technical leader. And the program reflects that. Amongst the activities that might interest fans of the Java: &#8230; <a href="http://ericlefevre.net/wordpress/2009/08/05/agile-2009-whats-in-the-conference-for-java-developers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/7989285@N07/1794265047"><img class="alignright" style="border: 0px initial initial;" title="quintessence by Demion" src="http://farm3.static.flickr.com/2244/1794265047_4cea389467.jpg" alt="quintessence" width="300" height="200" /></a>Agile 2009 is not just for Agile coaches or project managers. About one in three participants qualify herself as a <em>developer</em> or a <em>technical leader</em>. And the program reflects that.</p>
<p>Amongst the activities that might interest fans of the Java:</p>
<ul>
<li>the <a href="http://agile2009.wordpress.com/2009/07/19/programming-with-the-stars-coders-wanted/">Programming with the Stars contest</a> where pairs of developers wll be demonstrate their programming skills in front of a panel of three wise men. The language is up to the developers.</li>
<li>the <a href="http://agile2009.agilealliance.org/developers">Developer Jam stage</a>, particularly dedicated to programmers</li>
<li>another stage that might be of interest is <a href="http://agile2009.agilealliance.org/tools">Tools For Agility</a></li>
<li>Java developers might also relate to the <a href="http://agile2009.wordpress.com/2009/07/13/meet-david-agile-developer/">Agile developer</a>, <a href="http://agile2009.wordpress.com/2009/07/21/meet-alex-architect/">Architect</a> and <a href="http://agile2009.wordpress.com/2009/08/10/meet-peter-programmer/">Developer</a> personas</li>
</ul>
<p>Here are a few sessions with Java either as the main topic, or as the language used for demonstration:</p>
<ul>
<li><a href="http://agile2009.agilealliance.org/node/1146">Emergent Design &amp; Evolutionary Architecture</a> with none other than Neal Ford</li>
<li><a href="http://agile2009.agilealliance.org/node/1307">Scala: Object-Oriented and Functional Programming for the JVM</a> by Dean Wampler</li>
<li><a href="http://agile2009.agilealliance.org/node/2826">How to make your testing more Groovy</a> by Paul King and Craig Smith</li>
<li><a href="http://agile2009.agilealliance.org/node/1211">Agile AJAX: The Google Web Toolkit Experience</a>, presented by Daniel Wellman and Paul Infield-Harm</li>
<li><a href="http://agile2009.agilealliance.org/node/1335">Creating Habitable Code: Lessons in Longevity from CruiseControl</a>, with Jeffrey Fredrick and Paul Julius</li>
<li><a href="http://agile2009.agilealliance.org/node/166">Java and Ruby Tools for Code Quality</a>, by Steve Hayes</li>
</ul>
<p>For some other sessions, Java is not central, but will be at least mentioned:</p>
<ul>
<li><a href="http://agile2009.agilealliance.org/node/1417">SOA and Color Modeling</a> by Daniel Vacanti and Stephen Palmer</li>
<li><a href="http://agile2009.agilealliance.org/node/402">Coding Dojo: Enhancing Legacy Code</a>, presented by Guillaume Tardif and myself</li>
<li><a href="http://agile2009.agilealliance.org/node/415">Executable requirements: BDD with easyb and JDave</a> (will also mention Groovy), with  John Smart and Lasse Koskela</li>
<li><a href="http://agile2009.agilealliance.org/node/909">Clean Code III: Functions</a>, with Robert Martin</li>
<li><a href="http://agile2009.agilealliance.org/node/1414">BDD clinic &#8211; the doctor is in</a>, by Pat Maddox and Elizabeth Keogh</li>
<li><a href="http://agile2009.agilealliance.org/node/1708">Malleable Code:  How Tests Improve Production Code</a>, by Eric Anderson</li>
<li><a href="http://agile2009.agilealliance.org/node/432">Back to Basics &#8211; Writing Expressive Tests Without All The Wizardry</a>, with Rod Coffin</li>
<li><a href="http://agile2009.agilealliance.org/node/713">Test Driven Development in Java: Live and Uncensored</a>, with Ben Rady</li>
<li><a href="http://agile2009.agilealliance.org/node/1276">Acceptance Testing Java Applications with Cucumber, RSpec, and JRuby</a>, with Dean Wampler and Aslak Hellesøy</li>
<li><a href="http://agile2009.agilealliance.org/node/482">Java Power Tools &#8211; getting it all together</a>, with John Smart</li>
<li><a href="http://http://agile2009.agilealliance.org/node/494">Applying Agile Development Practices to Atypical Technologies</a>, from Scott Dillman</li>
<li><a href="http://agile2009.agilealliance.org/node/3183">Mission Impossible: TDD and JavaScript</a>, by James Suchy</li>
<li><a href="http://agile2009.agilealliance.org/node/434">Leveraging Maven 2 for Agility</a>, with Tim Andersen and Luke Amdor</li>
<li><a href="http://agile2009.agilealliance.org/node/399">Automated deployment with Maven and friends &#8211; going the whole nine yards</a>, from John Smart</li>
<li><a href="http://agile2009.agilealliance.org/node/863">Growing Object-Oriented Software, Guided by Tests</a>, by Steve Freeman</li>
</ul>
<p>Check out the <a href="http://agile2009.agilealliance.org/programOverview">entire program on conference site</a>!</p>
<p>Update (06/08/2009): should have mentioned that the Cast Codeurs podcast pretty much have <a href="http://lescastcodeurs.com/2009/08/les-cast-codeurs-podcast-episode-7-le-dsl-et-ses-amantes/">the same information in French</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/08/05/agile-2009-whats-in-the-conference-for-java-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Agile 2009] Presence of the CITCON community at the world&#8217;s premier Agile conference</title>
		<link>http://ericlefevre.net/wordpress/2009/07/30/agile-2009-presence-of-the-citcon-community-at-the-worlds-premier-agile-conference/</link>
		<comments>http://ericlefevre.net/wordpress/2009/07/30/agile-2009-presence-of-the-citcon-community-at-the-worlds-premier-agile-conference/#comments</comments>
		<pubDate>Thu, 30 Jul 2009 17:32:56 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[agile2009]]></category>
		<category><![CDATA[citcon]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=690</guid>
		<description><![CDATA[CITCONers are everywhere! And nowhere more than at Agile 2009 Conference. First, CITCON will be represented by Lydia Tripp and myself during the Freshers&#8217; Faire at the Ice Breaker. Watch out for the CITCON easel pad&#8230; and world-famous t-shirts ;-) &#8230; <a href="http://ericlefevre.net/wordpress/2009/07/30/agile-2009-presence-of-the-citcon-community-at-the-worlds-premier-agile-conference/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>CITCONers are everywhere! And nowhere more than at <a href="http://agile2009.agilealliance.org/">Agile 2009 Conference</a>.</p>
<p>First, <a href="http://citconf.com/">CITCON</a> will be represented by Lydia Tripp and myself during the <a href="http://www.decision-coach.com/wiki/index.php?title=Freshers_Fair">Freshers&#8217; Faire</a> at the Ice Breaker. Watch out for the CITCON easel pad&#8230; and world-famous t-shirts ;-)</p>
<p>CITCON alumni are now a big crowd (there are more than 750 mailing list members, and presumably many more attended the CITCON events). Many of them will present at the conference<br />
<a href="http://www.flickr.com/photos/28989949@N07/3116979582"> <img class="alignright" title="Modern and traditional tools by Gregory Moine" src="http://farm4.static.flickr.com/3182/3116979582_4190a73c26.jpg" alt="Modern and traditional tools" width="300" height="199" /> </a>
<ul>
<li><a href="http://agile2009.agilealliance.org/node/1809 ">What does an Agile coach do?</a> by Rachel Davies</li>
<li><a href="http://agile2009.agilealliance.org/node/402">Coding Dojo: Enhancing Legacy Code</a> by Guillaume Tardif &amp; Eric Lefevre-Ardant</li>
<li><a href="http://agile2009.agilealliance.org/node/641">ATTD In Practice</a>, by Elisabeth Hendrickson (with Pekka Klärck)</li>
<li><a href="http://agile2009.agilealliance.org/node/1125">Continuous Integration of the World</a>, by Patrick Debois</li>
<li><a href="http://agile2009.agilealliance.org/node/415">Executable Requirements: BDD with easyb and JDave</a>, by John Smart</li>
<li><a href="http://agile2009.agilealliance.org/node/863">Growing Object-Oriented Software, Guided by Test</a>, by Steve Freeman</li>
<li><a href="http://agile2009.agilealliance.org/node/1989">Telling Your Stories: Why Stories are important for your team</a>, by Rachel Davies</li>
<li><a href="http://agile2009.agilealliance.org/node/399">Automated deployment with Maven and friends &#8211; going the whole nine yards</a>, by John Smart</li>
<li><a href="http://agile2009.agilealliance.org/node/2043">Build Engineer Bootcamp: Builds As Code</a>, by Jeffrey Fredrick and Paul Julius</li>
<li><a href="http://agile2009.agilealliance.org/node/864">Test Driven Development: Ten Years Later</a>, by Steve Freeman (with Michael Feathers)</li>
<li><a href="http://agile2009.agilealliance.org/node/1335">Creating Habitable Code: Lessons in Longevity from CruiseControl</a>, by Jeffrey Fredrick and Paul Julius</li>
<li><a href="http://agile2009.agilealliance.org/node/1898">Visual Management for Agile Teams</a>, by Xavier Quesada Allue</li>
<li><a href="http://agile2009.agilealliance.org/node/572">CI vendor cage-fight!</a> by Tom Sulston</li>
<li><a href="http://agile2009.agilealliance.org/node/266">How to be really awesome at Continuous Integration</a>, by Tom Sulston</li>
<li><a href="http://agile2009.agilealliance.org/node/482">Java Power Tools &#8211; getting it all together</a>, by John Smart</li>
<li><a href="http://agile2009.agilealliance.org/node/1206">Debugging Pair Programming</a>, by Matt Wynne</li>
<li><a href="http://agile2009.agilealliance.org/node/2522">Narrative Acceptance Tests &#8211; A Behaviour Driven Approach</a>, by Antony Marcano and Andy Palmer</li>
<li><a href="http://agile2009.agilealliance.org/node/712">Continuous Testing Evolved</a>, by Ben Rady (with Rod Coffin)</li>
<li><a href="http://agile2009.agilealliance.org/node/713">Test Driven Development in Java: Live and Uncensored</a>, by Ben Rady</li>
<li><a href="http://agile2009.agilealliance.org/node/1099">Exploratory Testing (Framework) Experience</a>, by Erik Petersen</li>
<li><a href="http://agile2009.agilealliance.org/node/1101">Agile testers toolkit</a>, by Erik Petersen</li>
<li><a href="http://agile2009.agilealliance.org/node/2826">How to make your testing more Groovy</a>, by Paul King (with Craig Smith)</li>
<li><a href="http://agile2009.agilealliance.org/node/2840">Agile Tool Hacking &#8211; Taking Your Agile Development Tools To The Next Level</a>, by Paul King (with Craig Smith)</li>
<li><a href="http://agile2009.agilealliance.org/node/915">The Agile CTO</a>, by James Shore (with Diana Larsen)</li>
<li><a href="http://agile2009.agilealliance.org/node/1574">Metrics in an Agile World</a>, by James Shore (with Rob Myers)</li>
<li><a href="http://agile2009.agilealliance.org/node/1010">Slow and Brittle: Replacing End-to-End Testing</a>, by James Shore (with Arlo Belshee)</li>
<li><a href="http://agile2009.agilealliance.org/node/705">Creating Agile Simulations and Games for Coaches and Consultants</a>, by Elisabeth Hendrickson (with Chris Sims)</li>
</ul>
<p><a href="http://www.flickr.com/photos/38891071@N00/2086591528"> <img class="alignright" title="It Takes Two To Tango  by FaceMePLS " src="http://farm3.static.flickr.com/2248/2086591528_36c62abecc.jpg" alt="It Takes Two To Tango" width="300" height="200" /> </a>Also, Lisa Crispin is producer of the <a href="http://agile2009.agilealliance.org/testing">Testing Stage</a>. And don&#8217;t forget that many more CITCONers will be presenting on the <a href="http://agile2009.agilealliance.org/openjam">OpenJam stage</a>, too! I know <em>I</em>&#8216;ll be.</p>
<p>Lastly, I will be appearing a one of the contestants in <a href="http://agile2009.agilealliance.org/programmingwiththestars">Programming with the Stars</a>! This means that I&#8217;ll be paired up with a &#8220;star&#8221;, then we&#8217;ll try to show our mad programming skillz and outperform our competitors. This is incredibly exciting but also very intimidating. Although I consider myself a competent programmer, I am certainly not the best, and the participants at the conference are not exactly beginners. Scary!</p>
<p>Check out the conference blog for an account of <a href="http://agile2009.wordpress.com/2009/07/19/programming-with-the-stars-coders-wanted/">how Programming with the Stars went last year</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/07/30/agile-2009-presence-of-the-citcon-community-at-the-worlds-premier-agile-conference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Agile 2009] Continuous Integration</title>
		<link>http://ericlefevre.net/wordpress/2009/06/12/agile-2009-continuous-integration/</link>
		<comments>http://ericlefevre.net/wordpress/2009/06/12/agile-2009-continuous-integration/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 17:32:15 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[agile2009]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=660</guid>
		<description><![CDATA[This year, just like last year, Continuous Integration is proving to be a popular topic at Agile 2009. Implementing Scrum/XP Practices using Team Foundation Server, by Tommy Norman : how various practices, including CI, can be implemented using Microsoft tool &#8230; <a href="http://ericlefevre.net/wordpress/2009/06/12/agile-2009-continuous-integration/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This year, <a href="http://ericlefevre.net/wordpress/2008/07/17/continuous-integration-at-agile-2008/">just like last year</a>, Continuous Integration is proving to be a popular topic at <a href="http://agile2009.agilealliance.org/">Agile 2009</a>.<a href="http://www.flickr.com/photos/bitzcelt/376111899/"><img class="alignright" title="The Nuts and Bolts of Electricity, by bitzcelt" src="http://farm1.static.flickr.com/170/376111899_342a68167f_m.jpg" alt="" width="240" height="209" /></a></p>
<ul>
<li><a href="http://agile2009.agilealliance.org/node/89">Implementing Scrum/XP Practices using Team Foundation Server</a>, by Tommy Norman : how various practices, including CI, can be implemented using Microsoft tool</li>
<li><a href="http://agile2009.agilealliance.org/node/3027">Build and Test in the Cloud &#8211; CI and Cloud Provisioning for Agile Teams</a>, by Darryl Bowler: demonstration of CI practices, with the twist of using cloud-based systems</li>
<li><a href="http://agile2009.agilealliance.org/node/166">Java and Ruby Tools for Code Quality</a>, by Steve Hayes: using Continuous Integration as a platform for code quality tools</li>
<li><a href="http://agile2009.agilealliance.org/node/445">Top ten secret weapons for performance testing in an agile environment</a>, by Alistair Jones and Patrick Kua: according to the session description, there will be a connection with CI; that could be really interesting</li>
<li><a href="http://agile2009.agilealliance.org/node/712">Continuous Testing Evolved</a>, by Ben Rady and Rod Coffin: CT will be presented as an extension to CI</li>
<li><a href="http://agile2009.agilealliance.org/node/3166">Killing the gatekeeper: introducing a continuous integration system</a>, by Francis Lacoste: an experience report on applying a CI system</li>
<li><a href="http://agile2009.agilealliance.org/node/1125">Continuous Integration of the World</a>, by Patrick Debois: integration of production environment using CI</li>
<li><a href="http://agile2009.agilealliance.org/node/2757">Agile Source Code Management using Stories, Agile Workflow, and CI</a>, by Damon Poole: real-world techniques that allow change management of features, and synchronization with source code</li>
<li><a href="http://agile2009.agilealliance.org/node/415">Executable requirements: BDD with easyb and JDave</a>, by  John Smart and Lasse Koskela: not directly related to CI, but it will mention how to integration BDD with your build process</li>
<li><a href="http://agile2009.agilealliance.org/node/2762">WANTED: Seeking Single Agile Knowledge Development Tool-set</a>, by Brad Appleton and Peter Alfvin: this talk will, among other things, talk about applying agile practices, including CI, to non-code knowledge development</li>
<li><a href="http://agile2009.agilealliance.org/node/2039">Patterns of Agile Adoption Practices</a>, by Amr Elssamadisy: CI is one of a set of practices that attendants will be asked to prioritize for discussion</li>
<li><a href="http://agile2009.agilealliance.org/node/782">Large scale continuous integration</a>, by Hannu Kokko: real life experience, with hundred of developers</li>
<li><a href="http://agile2009.agilealliance.org/node/399">Automated deployment with Maven and friends &#8211; going the whole nine yards</a>, by John Smart: how to automate deployment using Bamboo, JIRA and Nexus in a real-world multi-module Maven web application</li>
<li><a href="http://agile2009.agilealliance.org/node/2043">Build Engineer Bootcamp: Builds As Code</a>, by Paul Julius &amp; Jeffrey Fredrick: will discuss build systems, a topic very close to CI</li>
<li><a href="http://agile2009.agilealliance.org/node/872">Removing Integration Delays with Collocated Whole Teams and Multi-stage CI</a>, by Damon Poole: why and to implement multi-stage continuous integration in large distributed environments</li>
<li><a href="http://agile2009.agilealliance.org/node/1606">How to run 4.5 Million tests per day &#8230; and why!</a>, by Mark Striebeck: how Google implemented a huge CI system for its own needs</li>
<li><a href="http://agile2009.agilealliance.org/node/406">Enabling Agile Testing through Continuous Integration</a>, by Sean Stolberg: how a CI system enables agile testing practices</li>
<li><a href="http://agile2009.agilealliance.org/node/161">Continuous Integration: Your New Best Friend</a>, by Howard Deiner: what CI is, and how is fits with unit tests, acceptance tests and development habits</li>
<li><a href="http://agile2009.agilealliance.org/node/934">The 7 Deadly Sins of Almost Being Agile</a>, by Bob Hartman and Richard Lawrence: never integrating is one of the sins discussed</li>
<li><a href="http://agile2009.agilealliance.org/node/1335">Creating Habitable Code: Lessons in Longevity from CruiseControl</a>, by Jeffrey Fredrick and Paul Julius: not strictly about CI, but the tool discussed is the one that made CI popular, so this will be of interest to build experts</li>
<li><a href="http://agile2009.agilealliance.org/node/2898">Experiences Applying Agile Practices to Large Systems Development</a>, by Harry Koehnemann: CI is one of the practices discussed</li>
<li><a href="http://agile2009.agilealliance.org/node/806">Herding Cats: Managing Large Test Suites</a>, by David Kessler and Tim Andersen: strategies to maintain automated test investments</li>
<li><a href="http://agile2009.agilealliance.org/node/572">CI vendor cage-fight!</a>, by Tom Sulston and vendors: 10 mins demos of all CI tools with representatives in the conference</li>
<li><a href="http://agile2009.agilealliance.org/node/1696">From Cowboys to Agilists &#8211; Organizational Change at Overstock.com</a>, by Sean Landis and Kevin Steffensen: CI is described as one of the practices deployed to solve the software development crisis at overstock.com</li>
<li><a href="http://agile2009.agilealliance.org/node/2902">The Ogre and The Wimp: Clever Influencing Tricks &#8211; Help the Most Reluctant Teams</a>, by Anda Abramovici: among other things, how to get the “I only run the build once a month” dev to do it every couple of hours, and how to get the “I only check in code once I’m completely done” dev to practice frequent check-ins</li>
<li><a href="http://agile2009.agilealliance.org/node/2151">Agile Infrastructure</a>, by Andrew Shafer and Paul Nasrat: continuous deployment will be especially discussed</li>
<li><a href="http://agile2009.agilealliance.org/node/494">Applying Agile Development Practices to Atypical Technologies</a>, by Scott Dillman: CI is described as part of a case study</li>
<li><a href="http://agile2009.agilealliance.org/node/266">How to be really awesome at Continuous Integration</a>, by Tom Sulston and a panel of luminaries: discussion of the audience’s problems and questions</li>
<li><a href="http://agile2009.agilealliance.org/node/482">Java Power Tools &#8211; getting it all together</a>, by John Smart: use to how Hudson and other tools for a software development infrastructure</li>
</ul>
<p>Phew! That&#8217;s quite a mouthful. Interestingly, there are many more talks listed here than I managed to get <a href="http://ericlefevre.net/wordpress/2008/07/17/continuous-integration-at-agile-2008/">last year</a> (and there are half as many talks this year). One reason could be that I was much more thourough this year, reviewing most of the sessions details &#8212; last year, I simply searched for keywords in the submission system.</p>
<p>To be honest, seeing as many sessions related to CI is rather a disappointment. I mean, CI is <em>not</em> a difficult practice, and you would think that many participants to Agile 2009 would be familiar with me. Plus, most sessions are introductions rather than advanced talks.</p>
<p>I guess I will content myself with Tom Sulston&#8217;s sessions (&#8220;Cage Fight&#8221; &amp; &#8220;How to be awesome&#8221;).</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/06/12/agile-2009-continuous-integration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

