<?xml version="1.0" encoding="UTF-8" standalone="no"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:gd="http://schemas.google.com/g/2005" xmlns:georss="http://www.georss.org/georss" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-2323508953859629798</atom:id><lastBuildDate>Sat, 16 Aug 2025 07:51:06 +0000</lastBuildDate><category>agile</category><category>présentation</category><category>video</category><category>tdd</category><category>java</category><category>maven</category><category>opensource</category><category>scott ambler</category><category>atdd</category><category>bdd</category><category>ddj</category><category>livres</category><category>tips</category><category>article</category><category>dojo</category><category>dreyfus</category><category>projet</category><category>tools</category><category>hudson</category><category>jackrabbit</category><category>lean</category><category>CARA</category><category>arxta</category><category>brian marick</category><category>cucumber</category><category>jug</category><category>linux</category><category>netbeans</category><category>photos</category><category>scrum</category><category>xpday</category><category>/\ndy</category><category>grenoble</category><category>jersey</category><category>rest</category><category>ruby</category><category>spring</category><title>Java in the Alps</title><description></description><link>http://www.ehsavoie.com/</link><managingEditor>noreply@blogger.com (ehsavoie)</managingEditor><generator>Blogger</generator><openSearch:totalResults>86</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><xhtml:meta content="noindex" name="robots" xmlns:xhtml="http://www.w3.org/1999/xhtml"/><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-5683945133741248493</guid><pubDate>Mon, 19 Oct 2015 07:49:00 +0000</pubDate><atom:updated>2015-10-19T09:49:24.637+02:00</atom:updated><title>NetBeans Day Paris 2015</title><description>&lt;body&gt;On the 16th of October was hold the first NetBeans Day event in France thanks to &lt;a href="https://blogs.oracle.com/geertjan/entry/welcome_to_me"&gt;Geertjan Wielenga&lt;/a&gt; (&lt;a href="https://twitter.com/#%21/GeertjanW"&gt;@geertjanw&lt;/a&gt;), Nebrass Lamouchi (&lt;a href="https://twitter.com/nebrasslamouchi"&gt;@NebrassLamouchi&lt;/a&gt;) and Paul Bernardi from &lt;a href="http://www.davidson.fr/"&gt;Davidson&lt;/a&gt; who hosted the event.&lt;br /&gt;

It was great to meet people from such a vibrant community and to be able to meet in real life actual users of my WildFly plugin.&lt;br /&gt;

&lt;blockquote class="twitter-tweet" lang="fr"&gt;
&lt;div dir="ltr" lang="en"&gt;
NetBeand Day Paris kicks off! &lt;a href="http://t.co/6rnqaP0QRM"&gt;&lt;img src="https://pbs.twimg.com/media/CRbaeS5WoAAgmt4.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
— Geertjan Wielenga (@GeertjanW) &lt;a href="https://twitter.com/GeertjanW/status/654951010021089280"&gt;16 Octobre 2015&lt;/a&gt;&lt;/blockquote&gt;
&lt;br /&gt;

Thanks to Charles Sabourdin (&lt;a href="https://twitter.com/kanedafromparis"&gt;@kanedafromparis&lt;/a&gt;) from the Paris JUG and Devoxx France the presentations where filmed and hopefully you might watch them shortly.&lt;br /&gt;

Geertjan and &lt;a href="http://www.irit.fr/recherches/ICS/people/barboni/"&gt;Eric Barboni&lt;/a&gt; (of NetCat fame) showed us how full of life is the NetBeans community and how the &lt;a href="http://wiki.netbeans.org/NetCAT"&gt;NetCat&lt;/a&gt; program works from the inside, giving the community a veto over a release of the IDE.&lt;br /&gt;

This famous NetCat program is the proud father of &lt;a href="http://tools.jboss.org/cat/" title="http://tools.jboss.org/cat/"&gt;JBoss Tools - Community Acceptance Testing (CAT)&lt;/a&gt;&lt;br /&gt;

I was impressed by seeing how &lt;a href="https://edu.netbeans.org/"&gt;many teachers and universities&lt;/a&gt; use Netbeans to teach programming.&lt;br /&gt;

&lt;br /&gt;

We saw various usage of Netbeans from the IDE tool with Nebrass showing us how to develop a Java EE Rest application with an Angular JS front end (ot bad he didin't use WildFly), to the various usages of the Netbeans platform.&lt;br /&gt;

&lt;blockquote class="twitter-tweet" lang="fr"&gt;
&lt;div dir="ltr" lang="en"&gt;
The showtime: "From &lt;a href="https://twitter.com/hashtag/JavaEE?src=hash"&gt;#JavaEE&lt;/a&gt; to &lt;a href="https://twitter.com/hashtag/AngularJS?src=hash"&gt;#AngularJS&lt;/a&gt;" &lt;a href="https://twitter.com/hashtag/Java?src=hash"&gt;#Java&lt;/a&gt; &lt;a href="https://twitter.com/ngParis"&gt;@ngParis&lt;/a&gt; &lt;a href="https://twitter.com/netbeans"&gt;@netbeans&lt;/a&gt; &lt;a href="https://twitter.com/GeertjanW"&gt;@GeertjanW&lt;/a&gt; &lt;a href="https://twitter.com/Payara_Fish"&gt;@Payara_Fish&lt;/a&gt; &lt;a href="http://t.co/rdTWg0zWKL"&gt;&lt;img src="https://pbs.twimg.com/media/CRduqDkVEAAyDZR.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
— Nebrass Lamouchi (@NebrassLamouchi) &lt;a href="https://twitter.com/NebrassLamouchi/status/655113940980989953"&gt;16 Octobre 2015&lt;/a&gt;&lt;/blockquote&gt;
Be aware people from Ivory Coast that thanks to NetBeans and Fabrice Irie the IRS is tracking you &lt;img ___jive_emoticon_name="wink" class="jive_macro jive_emote" jivemacro="emoticon" src="https://static.jboss.org/developer/7.0.3.5dfcca9/images/emoticons/wink.png" /&gt;&lt;br /&gt;

&lt;blockquote class="twitter-tweet" lang="fr"&gt;
&lt;div dir="ltr" lang="en"&gt;
Fabrice Irie shows easytopo.fr on the NetBeans Platform at NetBeans Day Paris. &lt;a href="http://t.co/BaDwo39Wbu"&gt;&lt;img src="https://pbs.twimg.com/media/CRcZY0yWsAEpPSM.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
— Geertjan Wielenga (@GeertjanW) &lt;a href="https://twitter.com/GeertjanW/status/655020186110660608"&gt;16 Octobre 2015&lt;/a&gt;&lt;/blockquote&gt;
You may also check Geertjan's blog entry on the event : &lt;a href="https://blogs.oracle.com/geertjan/entry/netbeans_day_paris_in_tweets" title="https://blogs.oracle.com/geertjan/entry/netbeans_day_paris_in_tweets"&gt;NetBeans Day Paris in Tweets! (Geertjan's Blog)&lt;/a&gt;&lt;/body&gt;</description><link>http://www.ehsavoie.com/2015/10/netbeans-day-paris-2015.html</link><author>noreply@blogger.com (ehsavoie)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-7885460615374335180</guid><pubDate>Fri, 17 Aug 2012 06:37:00 +0000</pubDate><atom:updated>2012-08-17T08:37:54.292+02:00</atom:updated><title>Tester son code LDAP avec OpenDJ</title><description>&lt;p&gt;Ceci est la reprise de l'article que j'ai écrit pour &lt;a href="http://blog.silverpeas.org/index.php?post/2012/07/13/Tester-son-code-LDAP-avec-OpenDJ"&gt;Silverpeas&lt;/a&gt;. Par rapport au commentaire de &lt;b&gt;Fanf&lt;/b&gt; concernant les différentes possibilités de tester du code LDAP avec &lt;a href="https://www.unboundid.com/products/ldap-sdk/docs/in-memory-directory-server.php"&gt;Unboundid&lt;/a&gt; pour un mode complètement en-mémoire, bien que je trouve cette possibilité élégante et sûrement plus performante il se trouve que nous utilisons OpenDJ en production et que je préfére utiliser un code de serveur de production (même en mode mémoire) pour mes tests plutôt qu'un bouchon, aussi performant soit-il.&lt;/p&gt;


&lt;p&gt;A l'heure du TDD et du test unitaire il convient de pouvoir tester
son code facilement et rapidement.&lt;br /&gt;Si pour les bases de données
relationnelles cela est bien documenté, ce n'est pas le cas des annuaires LDAP qui
viennent d'un temps où les exigences en termes de tests étaient
moindre.&lt;br /&gt;Heureusement les serveurs LDAP Java libres et modernes
commencent à prendre ces paramètres en compte.&lt;br /&gt;Si &lt;a hreflang="en" href="http://directory.apache.org/"&gt;ApacheDS&lt;/a&gt;
propose un runner JUnit, j'ai eu quelques difficultés à le mettre
en œuvre.&lt;br /&gt;J'ai donc décidé d'utiliser &lt;a hreflang="en" href="http://opendj.forgerock.org/"&gt;OpenDJ&lt;/a&gt; qui peut être
facilement embarqué et qui peut utiliser un stockage mémoire ce qui
permet d'avoir des performances acceptables pour une exécution dans
un mode test. &lt;br /&gt;Cependant même si &lt;a hreflang="en" href="http://opendj.forgerock.org/"&gt;OpenDJ&lt;/a&gt; utilise un backend
mémoire, sa configuration reste gérée par quelques fichiers. C'est
pourquoi vous devrez embarquer quelques fichiers dans vos tests.&lt;/p&gt;
&lt;p&gt;Avec JUnit nous avons deux possibilités pour gérer des
ressources externes : &lt;/p&gt;
&lt;ul&gt;&lt;li&gt;utiliser un runner particulier qui va
gérer les références au serveur embarqué (c'est le choix fait par
ApacheDS).&lt;/li&gt;
&lt;li&gt;utiliser des règles (rules)  pour démarrer et
arrêter le serveur embarqué. C'est ce choix que nous avons fait en
utilisant une &lt;strong&gt;ClassRule&lt;/strong&gt; : c'est à dire une règle qui s'applique sur
une variable static de la classe de test. Cette fonctionnalité est
disponible depuis JUnit 4.10&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Afin de faciliter la configuration du serveur LDAP pour le test
nous allons définir une annotation nous servant à passer un certain
nombre de paramètres, &lt;a href="https://github.com/ehsavoie/embedded-ldap/blob/master/src/main/java/org/silverpeas/ldap/CreateLdapServer.java"&gt;&lt;code&gt;&lt;strong&gt;CreateLdapServer&lt;/strong&gt;&lt;/code&gt;&lt;/a&gt; :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;un fichier
LDIF pour insérer des données dans l’annuaire&lt;/li&gt;
&lt;li&gt;le chemin (en
relatif ou absolu) vers le répertoire contenant la configuration
minimale d'OpenDJ&lt;/li&gt;
&lt;li&gt;l'identifiant du backend mémoire où seront
mises les données de test&lt;/li&gt;
&lt;li&gt;le DN de base associé à ce backend.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Maintenant il ne reste plus qu'à écrire notre règle qui doit
implémenter l'interface &lt;em&gt;org.junit.rules.TestRule&lt;/em&gt;.&lt;br /&gt;Nous avons donc
une méthode à réaliser :&lt;/p&gt;
&lt;p&gt;&lt;code&gt;@Override&lt;br /&gt;public Statement apply(Statement stmnt, Description d) {&lt;br /&gt;&amp;nbsp; CreateLdapServer annotation = d.getAnnotation(CreateLdapServer.class);&lt;br /&gt;&amp;nbsp; if (annotation != null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return statement(stmnt, annotation.serverHome(), annotation.ldifConfig(), annotation.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldifFile(), annotation.backendID(), annotation.baseDN());&lt;br /&gt;&amp;nbsp; }&lt;br /&gt;&amp;nbsp; return stmnt;&lt;br /&gt;}&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;La première ligne recherche la présence de notre annotation &lt;code&gt;CreateLdapServer&lt;/code&gt; et si celle si est présente alors nous allons encapsuler le test pour démarrer le serveur au chargement de la classe et l'arrêter à la fin des tests. C'est là le rôle de la méthode :&lt;/p&gt;
&lt;p&gt;&lt;code&gt;private Statement statement(final Statement stmnt, final String serverHome,&lt;br /&gt;&amp;nbsp; final String ldifConfigFile, final String ldifFile, final String backendId,&lt;br /&gt;&amp;nbsp; final String dn) {&lt;br /&gt;&amp;nbsp; return new Statement() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void evaluate() throws Throwable {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; before();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stmnt.evaluate();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } finally {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; after();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void after() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stopLdapServer();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void before() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; startLdapServer(serverHome, ldifConfigFile);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; loadLdif(ldifFile, backendId, DN.decode(dn));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (Exception ex) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ex.printStackTrace();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new RuntimeException("Could'nt start LDAP Server", ex);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp; };&lt;br /&gt;}&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;On voit qu'on crée un &lt;code&gt;org.junit.Statement&lt;/code&gt; qui encapsule le test originel avec deux méthodes : &lt;code&gt;before()&lt;/code&gt; appelée avant l'exécution du test, et &lt;code&gt;after()&lt;/code&gt; une fois le test exécuté, quelque soit son résultat. Ces méthodes sont très simples : &lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;code&gt;before()&lt;/code&gt; va démarrer le serveur LDAP et y charger le contenu du fichier LDIF,&lt;/li&gt;
&lt;li&gt;&lt;code&gt;after()&lt;/code&gt; va se contenter d'arrêter le dit-serveur.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;Les données étant chargées dans un backend mémoire nous n'avons pas besoin de les nettoyer avant d'arrêter le serveur. Pour l'implémentation du démarrage du serveur et son arrêt je vous laisse consulter le code.&lt;br /&gt;Comment utiliser tout cela dans un test : &lt;br /&gt;Tout d'abord vous devez utiliser l'annotation que nous venons de créer&amp;nbsp;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;@CreateLdapServer(ldifConfig="opendj/config/config.ldif", serverHome="opendj", ldifFile="silverpeas-ldap.ldif")&lt;br /&gt;public class LDAPDriverTest {&lt;br /&gt;...&lt;/code&gt;&lt;/p&gt;
&lt;p align="LEFT"&gt;Maintenant, il nous faut déclarer notre règle&amp;nbsp;:&lt;/p&gt;
&lt;code&gt;@ClassRule&lt;br /&gt;public static OpenDJRule ldapRule = new OpenDJRule();&lt;/code&gt;&lt;br /&gt;
&lt;p align="LEFT"&gt;Nous voilà donc presque prêts à tester. Il ne nous
manque plus que les ressources nécessaires. Dans le cadre d'un
projet Apache Maven il faut ajouter les dépendances  vers les
bibliothèques d'OpenDJ nécessaires&amp;nbsp;:&lt;/p&gt;
&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.forgerock.opendj&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;opendj-server&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.4.5&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;com.sleepycat&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;je&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.4.7&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Les ressources nécessaires sont au nombre de deux&amp;nbsp;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;le fichier ldif (&lt;strong&gt;silverpeas-ldap.ldif&lt;/strong&gt;) que nous avons déclaré et qui va se retrouver dans &lt;em&gt;src/test/resources&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;le répertoire &lt;strong&gt;opendj&lt;/strong&gt; qui contient la configuration minimale et va lui aussi dans &lt;em&gt;src/test/resources&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;strong&gt;Attention à ne pas filtrer ce répertoire opendj et tout ce qu'il contient avec Apache Maven.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Le code source et un exemple d'utilisation est disponible sur Github : &lt;a hreflang="en" href="https://github.com/ehsavoie/embedded-ldap"&gt;https://github.com/ehsavoie/embedded-ldap&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Merci à &lt;a hreflang="fr" href="http://ludopoitou.wordpress.com/"&gt;Ludovic Poitou&lt;/a&gt; pour son aide sur la configuration et l'utilisation &lt;a hreflang="en" href="http://opendj.forgerock.org/"&gt;OpenDJ&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;</description><link>http://www.ehsavoie.com/2012/08/tester-son-code-ldap-avec-opendj.html</link><author>noreply@blogger.com (ehsavoie)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-7161834973885486533</guid><pubDate>Sun, 13 Nov 2011 09:12:00 +0000</pubDate><atom:updated>2011-11-13T11:39:06.402+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">java</category><category domain="http://www.blogger.com/atom/ns#">livres</category><category domain="http://www.blogger.com/atom/ns#">maven</category><title>Revue du livre Apache Maven 3 Cookbook</title><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://www.packtpub.com/apache-maven-3-0-cookbook/book" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwENEtrXC2O9D75bacYO5Akf4pEgrfLKiOnwkXe52nmNgmyh-tyQGOoPJuptOb_HB_5l3US0ZH5BXu2eF3lYtVXjhgUmmlWQvhtFeA38eJFJNc6_yLF6am5VOsphg_hZQzEYv8FYjBE3s/s320/apache_maven_cookbook" width="248" /&gt;&lt;/a&gt;&lt;/div&gt;
Ce nouveau livre sur Apache Maven se veut un ensemble de recettes pour mettre en œuvre Apache Maven 3 lorsque l'on souhaite démarrer un projet.&lt;br /&gt;
Il se compose de 9 chapitres :&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;&lt;b&gt;Une introduction aux concepts et à l'utilisation d'Apache Maven 3&lt;/b&gt;&lt;p&gt;Ce premier chapitre est une introduction 'classique' à la mise en place et la configuration d'Apache Maven 3 sur un poste de développement.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Les techniques d’ingénierie logicielle&lt;/b&gt;&lt;p&gt;Ce chapitre parle des bonnes pratiques de développement d'un logiciel et de l'utilisation de Maven dans un tel contexte. On y parle de TDD, de qualité de code et de gestion des dépendances et comment Apache Maven facilite cette mise en œuvre. On pourra regretter le choix de PMD pour la qualité logicielle plutôt que d’un outil plus complet comme Sonar.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Les principes agiles de développement et de collaboration&lt;/b&gt;&lt;p&gt;L'auteur explique ici comment intégrer Apache Maven dans votre organisation avec un gestionnaire de dépôts, un serveur d'intégration continue, ... Bref comment tirer un profit maximum des outils autour de Maven pour développer vos logiciels.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Rapports et documentation&lt;/b&gt;Nous découvrons l'usage des taches de reporting d'Apache Maven pour produire un site statique, de la Javadoc et plusieurs autres rapports. On pourra regretter le fait que les &lt;i&gt;POM&lt;/i&gt; montrés utilisent la vieille forme de configuration d'Apache Maven 2.x et non ce qui est spécifique à Apache Maven 3.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Développement Java avec Maven&lt;/b&gt;&lt;p&gt;On voit ici comment produire un squelette pour chaque type de projet Java d'entreprise :&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt; application Web et comment l'exécuter avec Jetty&lt;/li&gt;
&lt;li&gt; pour J2EE : archetype&lt;/li&gt;
&lt;li&gt; pour Spring : on construit un vrai projet Spring&lt;/li&gt;
&lt;li&gt; pour Hibernate : utilisation du hibernate3-maven-plugin&lt;/li&gt;
&lt;li&gt; Seam avec Seam Forge : projet Maven de generation de code&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Développement Google avec Maven&lt;/b&gt;&lt;p&gt;C'est pour moi le chapitre le plus intéressant car on y voit comment Apache Maven permet de développer dans le monde des technologies Google : Android, GWT et GAE (Google App Engine).&lt;br /&gt;
Android : comment configurer son environnement pour développer et déployer une application Android.&lt;br /&gt;
GWT : Là encore comment configurer son poste pour créer et tester (que ça soit avec l'outil de test intégrer ou Selenium) une application web GWT.&lt;br /&gt;
GAE : comment utiliser la plate forme de cloud de Google et les différents archétypes disponibles pour construire vos applications.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Scala, Groovy et Flex&lt;/b&gt;&lt;p&gt;Si pour Scala il existe l'outil Simple Build Tool, celui-ci est destiné aux projets Scala purs, si vous mélangez Scala et Java utilisez Maven et ses archétypes.&lt;br /&gt;
Groovy fournit un archétype et un plugin &lt;i&gt;gmaven&lt;/i&gt; qui permet aussi l'exécution des scripts Groovy et l'utilisation de la console et du shell Groovy.&lt;br /&gt;
Enfin pour le troisième langage, Flex, nous découvrons &lt;i&gt;flexmojo&lt;/i&gt; qui permet de produire la structure d'un projet Flex type ainsi que la documentation de ce plugin.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Intégration dans un EDI&lt;/b&gt;&lt;p&gt;Les EDI modernes (Netbeans, Elipse, Intellij IDEA) offrent une excellente intégration d'Apache Maven. Chaque EDI est présenté ainsi qu e sa manière d'intégrer Apache Maven et d'importer un projet Apache Maven dans l'outil.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Étendre Apache Maven avec vos plugins&lt;/b&gt;&lt;p&gt;Apache Maven est extensible au moyen de plugins. Nous voyons ici comment créer un plugin en Java mais aussi les autres manières d'en faire en utilisant des scripts Apache Ant ou Ruby avec JRuby.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
En conclusion ce livre apporte plusieurs détails importants, cependant s'il permet une rapide mise en œuvre d'Apache Maven (et c'est bien là son but affiché) un débutant devrait s'orienter vers un livre offrant une vision plus complète pour mieux en maîtriser les concepts avant d'enrichir sa bibliothèque avec cet ouvrage.</description><link>http://www.ehsavoie.com/2011/11/revue-du-livre-apache-maven-3-cookbook.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwENEtrXC2O9D75bacYO5Akf4pEgrfLKiOnwkXe52nmNgmyh-tyQGOoPJuptOb_HB_5l3US0ZH5BXu2eF3lYtVXjhgUmmlWQvhtFeA38eJFJNc6_yLF6am5VOsphg_hZQzEYv8FYjBE3s/s72-c/apache_maven_cookbook" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-5449155987460671404</guid><pubDate>Tue, 27 Apr 2010 21:19:00 +0000</pubDate><atom:updated>2010-04-27T23:20:24.997+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">jersey</category><category domain="http://www.blogger.com/atom/ns#">jug</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><category domain="http://www.blogger.com/atom/ns#">rest</category><title>Soirée Jersey et Atmosphere</title><description>&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaNxF2ICUmLpaI4x5LVh8sxx0PqqEFQslSWirgGFnfmKOApMPdJqZPVLU-Ji4vhhQGRSFf8Zs2e78zQ-8nQkGU5TtSwJfMFI8Lzo0mcQyu9ibDyNnrYLP1Yr1Q61fBPQgyTxf1q0SrS2k/s1600/paul.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaNxF2ICUmLpaI4x5LVh8sxx0PqqEFQslSWirgGFnfmKOApMPdJqZPVLU-Ji4vhhQGRSFf8Zs2e78zQ-8nQkGU5TtSwJfMFI8Lzo0mcQyu9ibDyNnrYLP1Yr1Q61fBPQgyTxf1q0SrS2k/s1600/paul.png" border="0" /&gt;&lt;/a&gt;Lundi soir c'était la 3ème soirée de l'&lt;a href="http://www.alpesjug.org/"&gt;AlpesJug&lt;/a&gt; et nous avons eu la chance d'avoir &lt;a href="http://blogs.sun.com/sandoz/"&gt;Paul Sandoz&lt;/a&gt;, spec leader pour JAX-RS et développeur de &lt;a href="https://jersey.dev.java.net/"&gt;Jersey&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Après une légère introduction aux principes de REST qui permettent de créer des services :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;agregeables&lt;/li&gt;&lt;li&gt;faiblement couplés&lt;/li&gt;&lt;li&gt;scalables&lt;/li&gt;&lt;li&gt;simples&lt;/li&gt;&lt;li&gt;apportant des fonctionnalités insoupçonnées&lt;/li&gt;&lt;/ul&gt;JAX-RS (et donc Jersey) apporte une approche par annotation pour l'exposition REST des services. C'est à ce moment là que j'ai bien cru revenir à la présentation &lt;a href="http://www.playframework.org/"&gt;Play! framework&lt;/a&gt;. Cependant les fichiers de configuration sont remplacés par des annotations et donc on profite de l'IDE pour coder.&lt;br /&gt;Là encore le développeur n'est pas oublié et on obtient des traces très intéressantes sur le routage dans les headers des réponses HTTP de Jersey (si le mode trace est activé) !!!&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisiasonZKMGbkr5cEfMeD-7dYwVezmlfArUU3pwgTqJ5eATYQxt8U_ERcJw2CThizSPKfgXmbK8RYnVJ5Bi4SRZLnGuynWGBMaCgNh09RkRSR6DYO3ivjaXoIvU101Dthyphenhyphenb8soKNtr5tc/s1600/assistance1.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisiasonZKMGbkr5cEfMeD-7dYwVezmlfArUU3pwgTqJ5eATYQxt8U_ERcJw2CThizSPKfgXmbK8RYnVJ5Bi4SRZLnGuynWGBMaCgNh09RkRSR6DYO3ivjaXoIvU101Dthyphenhyphenb8soKNtr5tc/s1600/assistance1.png" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;Paul avance le long de ses démos nous présentant ensuite Jersey MVC, ce qui permet d'aller vers une application web classique (un futur remplacement de Spring MVC ? ;) .&lt;br /&gt;Courageux, Paul se lance dans une démonstration du framework &lt;a href="https://atmosphere.dev.java.net/"&gt;Atmosphere&lt;/a&gt;, qui permet la gestion les connexions HTTP persistantes et le véritable push Ajax. Les démos venant de &lt;a href="http://jfarcand.wordpress.com/"&gt;Jean-François Arcand&lt;/a&gt;, tout a bien fonctionné mais Paul n'a pas pu être aussi libre qu'il l'avait été pour les démos Jerse&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGD7E1el6L-9SJhfG5IG93EatNjW-VZJiSPkmMVRChh8qgp2q929zqr57ABBGZTwYZYsO2svi8G998vxa2qZZ-_pKuQq0o3yDU5eUunRIpfXqh2jTwvoQbrw5t53exogMziEllHAH9d9c/s1600/assistance2.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGD7E1el6L-9SJhfG5IG93EatNjW-VZJiSPkmMVRChh8qgp2q929zqr57ABBGZTwYZYsO2svi8G998vxa2qZZ-_pKuQq0o3yDU5eUunRIpfXqh2jTwvoQbrw5t53exogMziEllHAH9d9c/s1600/assistance2.png" border="0" /&gt;&lt;/a&gt;y.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Enfin, Paul nous a présenté Jersey couplé à différents moteurs de template basés sur Scala (grâce à &lt;a href="http://scalate.fusesource.org/"&gt;Scalate&lt;/a&gt;) et là la comparaison avec play! est devenue plus qu'évidente. J'ai vraiment l'impression qu'on peut voir dans Jersey un sérieux concurrent aux frameworks web, tout en conservant une grande souplesse (là où Play! a fait le choix tout à fait respectable de définir une pile complète) en termes de frameworks (JEE6, mais d'autres sont aussi possibles).&lt;br /&gt;&lt;br /&gt;Pour récupérer les &lt;a href="https://docs.google.com/fileview?id=0BwYTX8qzgAVfMDk3NThlMzktYjg0Mi00ZTFjLWI1OWItZjljOGQ3MTc5OWQy&amp;amp;hl=en"&gt;slides&lt;/a&gt; et le &lt;a href="https://docs.google.com/leaf?id=0BwYTX8qzgAVfOWMyMGZhNWEtYzExOC00ZTZmLWE0YjAtNTg2NjA1MDQzZWFh&amp;amp;hl=en"&gt;code&lt;/a&gt; des démonstrations.</description><link>http://www.ehsavoie.com/2010/04/soiree-jersey-et-atmosphere.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaNxF2ICUmLpaI4x5LVh8sxx0PqqEFQslSWirgGFnfmKOApMPdJqZPVLU-Ji4vhhQGRSFf8Zs2e78zQ-8nQkGU5TtSwJfMFI8Lzo0mcQyu9ibDyNnrYLP1Yr1Q61fBPQgyTxf1q0SrS2k/s72-c/paul.png" width="72"/><thr:total>0</thr:total><georss:featurename>Grenoble, France</georss:featurename><georss:point>45.1942765 5.7316335</georss:point><georss:box>45.133791 5.614904 45.254762 5.848363</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-3743913461335981338</guid><pubDate>Wed, 20 Jan 2010 09:34:00 +0000</pubDate><atom:updated>2010-02-11T14:52:36.063+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">opensource</category><category domain="http://www.blogger.com/atom/ns#">projet</category><category domain="http://www.blogger.com/atom/ns#">video</category><title>Coder c'est beau</title><description>J'ai voulu m'amuser à voir tout le travail que nous avons effectué chez &lt;a href="http://www.silverpeas.com"&gt;Silverpeas&lt;/a&gt; depuis que nous avons décidé d'ouvrir le code.&lt;br /&gt;Pour réaliser cette vidéo j'ai utilisé &lt;a href="http://code.google.com/p/gource/"&gt;gource&lt;/a&gt; et ffmeg pour encoder le tout en h264. C'est un premier jet mais ça permet de voir qu'ouvrir un logiciel ce n'est pas si évident.&lt;br /&gt;&lt;br /&gt;&lt;object width="400" height="300"&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8846023&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" /&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=8846023&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;p&gt;&lt;a href="http://vimeo.com/8846023"&gt;Silverpeas Gource&lt;/a&gt; from &lt;a href="http://vimeo.com/user1712312"&gt;Emmanuel Hugonnet&lt;/a&gt; on &lt;a href="http://vimeo.com"&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;</description><link>http://www.ehsavoie.com/2010/01/coder-cest-beau.html</link><author>noreply@blogger.com (ehsavoie)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-3229542337913085622</guid><pubDate>Fri, 04 Dec 2009 07:04:00 +0000</pubDate><atom:updated>2009-12-04T08:19:01.712+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">grenoble</category><category domain="http://www.blogger.com/atom/ns#">java</category><category domain="http://www.blogger.com/atom/ns#">jug</category><category domain="http://www.blogger.com/atom/ns#">livres</category><category domain="http://www.blogger.com/atom/ns#">maven</category><category domain="http://www.blogger.com/atom/ns#">opensource</category><category domain="http://www.blogger.com/atom/ns#">projet</category><title>Ca bouge dans les Alpes</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDCWD1uVUUpjV9YYr6mKZwOkHqCnwZrPxvpgG-VYFewY4Vh5NqrW7nyeyD4ejkPpX86OcWwUNw_FtAJXZ683nLGMXEFQS7QhfHuWtfxqdQPjqnN8UPC7bp5Ax6Yx6kZgx38ZiFL3UlGe8/s1600-h/AlpesJuggy.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 296px; height: 320px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDCWD1uVUUpjV9YYr6mKZwOkHqCnwZrPxvpgG-VYFewY4Vh5NqrW7nyeyD4ejkPpX86OcWwUNw_FtAJXZ683nLGMXEFQS7QhfHuWtfxqdQPjqnN8UPC7bp5Ax6Yx6kZgx38ZiFL3UlGe8/s320/AlpesJuggy.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5411273746139313842" /&gt;&lt;/a&gt; Et oui ça bouge dans le monde Java de la région grenobloise. Tout d'abord une annonce fracassante : l'&lt;a href="http://www.alpesjug.org"&gt;AlpesJug&lt;/a&gt; est né. Et oui Grenoble a de nouveau son Java User Group. Les réunions mensuelles vont commencer dès le 22/02/2010 avec la venue d'&lt;a href="http://antoniogoncalves.org/ "&gt;Antonio Goncalves&lt;/a&gt; pour nous présenter JEE6 et le 29/03/2010 &lt;a href="http://blog.aheritier.net/"&gt;Arnaud Héritier&lt;/a&gt; célèbre dans toute la communauté Maven pour son livre en français avec Nicolas de Loof  viendra nous parler de Maven 3. &lt;a href="http://blog.aheritier.net/apache-maven-enfin-un-livre-en-francais/"&gt;&lt;img style="float:right; margin:0 10px 10px 0;cursor:pointer;cursor:hand;width: 110px; height: 135px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYraTSPxqEJ9txbMKHnufUvhdaxjWqgji7xjojB-OohMsy1VawYMcCeEBS4V62D5wXYyoRr4IV21ZePVnAPa0Vp7HS1EzUqc7FIN4milbzeUmQU1xQ-s013zEtAIC1BmliS9NBQpHgRc4/s200/9782744023378.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5411275443538072338" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Toujours à propos de Maven, la traduction de Maven - The definitive guide en français est maintenant achevée et nous (&lt;a href="http://blog.xebia.fr/2009/12/04/maven-definitive-guide-fr-relecture-finale/"&gt;Erwan &lt;/a&gt;et moi-même) attendons les retours de vos relectures. Pour vos remarques et vos corrections, passez par &lt;a href="http://github.com/ehsavoie/maven-guide-fr/issues"&gt;Github&lt;/a&gt; et pour lire soit le pdf ou la version HTML, une seule adresse : &lt;a href="http://www.maven-definitive-guide.fr/"&gt;http://www.maven-definitive-guide.fr/&lt;/a&gt;</description><link>http://www.ehsavoie.com/2009/12/ca-bouge-dans-les-alpes.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDCWD1uVUUpjV9YYr6mKZwOkHqCnwZrPxvpgG-VYFewY4Vh5NqrW7nyeyD4ejkPpX86OcWwUNw_FtAJXZ683nLGMXEFQS7QhfHuWtfxqdQPjqnN8UPC7bp5Ax6Yx6kZgx38ZiFL3UlGe8/s72-c/AlpesJuggy.jpg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-5037595015760079697</guid><pubDate>Wed, 25 Nov 2009 10:49:00 +0000</pubDate><atom:updated>2009-11-25T16:02:00.799+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">CARA</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><category domain="http://www.blogger.com/atom/ns#">video</category><title>Soigner sa schizophrénie</title><description>Voici la présentation que nous avons donnée avec Hervé Lourdin d'Octo lors de l'Agile Tour 2009 à Grenoble:&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_2364839"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ehsavoie/at2009-soigner-sa-schizophrenie-12" title="At2009 Soigner Sa Schizophrenie 1.2"&gt;At2009 Soigner Sa Schizophrenie 1.2&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=at2009geneve-soignersaschizophrenie-1-2-091028061928-phpapp01&amp;stripped_title=at2009-soigner-sa-schizophrenie-12" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=at2009geneve-soignersaschizophrenie-1-2-091028061928-phpapp01&amp;stripped_title=at2009-soigner-sa-schizophrenie-12" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/ehsavoie"&gt;Emmanuel Hugonnet&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Pour télécharger le flash : &lt;a href="http://repository.silverpeas.org/files/Schizo%20finale.swf" alt="Soigner sa schizophrenie"&gt;A ouvrir dans un navigateur&lt;/a&gt;</description><link>http://www.ehsavoie.com/2009/11/soigner-sa-schizophrenie.html</link><author>noreply@blogger.com (ehsavoie)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-6893185773936713380</guid><pubDate>Mon, 26 Oct 2009 11:44:00 +0000</pubDate><atom:updated>2009-11-09T11:59:19.799+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">atdd</category><category domain="http://www.blogger.com/atom/ns#">bdd</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><title>Agile Tour 2009 c'est fini (enfin pour moi)</title><description>Cette année j'ai quitté la vallée grenobloise pour m'exporter chez nos voisins genevois et valentinois. C'est donc à 3 sessions de l'Agile Tour 2009 auxquelles j'ai pu participer (avec 2 conférences à chaque fois).&lt;br /&gt;J'ai commencé par l'étape de Genève où j'ai donné dans la schizophrénie avec Rémy, avant que nous nous lancions dans le Coding Dojo sur l'ATDD avec &lt;a href="http://wiki.github.com/aslakhellesoy/cuke4duke"&gt;cuke4duke&lt;/a&gt;. C'est là que nous nous sommes rendu-compte qu'une heure c'est vraiment très court pour un dojo. Pour les sessions suivantes nous avons donc essayé d'optimiser la partie codage (que nos amis suisses se rassurent la session de Grenoble a été filmée et j'espère pouvoir la mettre en ligne rapidement). J'ai rapidement épuisé mes autocollants &lt;a href="http://arxta.net"&gt;ARxTA&lt;/a&gt; durant ces sessions mais j'ai gagné un bracelet "TestObsessed". J'ai vraiment apprécié l'ambiance de cette étape (et surtout la criée des orateurs pour laquelle je pousserai dorénavant à Grenoble) qui s'est terminée autour d'un verre :)&lt;br /&gt;&lt;img src="http://farm3.static.flickr.com/2586/4019231011_ec0fc334ce.jpg" border="0" alt="" style="width: 400px; height: 200px;"/&gt;&lt;br /&gt;C'est par un verre qu'a d'ailleurs commencé l'étape grenobloise. La veille au soir nous avons pu profiter de nos deux guest speakers &lt;a href="http://testobsessed.com/"&gt;Elisabeth Hendrickson&lt;/a&gt; et &lt;a href="http://www.crisp.se/henrik.kniberg"&gt;Henrik Kniberg&lt;/a&gt;. Une soirée très sympathique où les stars ne se prenaient pas pour des stars justement, avec des discussions très ouvertes et variées. &lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzsyMtQVaj70k1wnCV7StIYbQYzXTPy1Meogwv5gC60iS98L0WuiyyfWOgGjRvT1OyLNtyOmOmstdNXNW-XoDsL751EfN2Uze0HriajZqLRyHeyVoWILYG4pIoFr-IVhtSZv_h7p3A1lY/s1600-h/agile_tour_grenoble_2009.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzsyMtQVaj70k1wnCV7StIYbQYzXTPy1Meogwv5gC60iS98L0WuiyyfWOgGjRvT1OyLNtyOmOmstdNXNW-XoDsL751EfN2Uze0HriajZqLRyHeyVoWILYG4pIoFr-IVhtSZv_h7p3A1lY/s200/agile_tour_grenoble_2009.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5402056097015301954" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBK4utfVZxbcpm4sgFNZMl-lTr6hADno0iJxPI27ICaubWeSZ74ZL0dTGg3_mqJkigDBazcSTJHU-kiKeJA8YtLU-WfByjihHZaPUdFUW7kiJOZdojL6BvqGRRptYXf8CARdKBqfHAPRE/s1600-h/agile_tour_grenoble_2009_bis.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBK4utfVZxbcpm4sgFNZMl-lTr6hADno0iJxPI27ICaubWeSZ74ZL0dTGg3_mqJkigDBazcSTJHU-kiKeJA8YtLU-WfByjihHZaPUdFUW7kiJOZdojL6BvqGRRptYXf8CARdKBqfHAPRE/s200/agile_tour_grenoble_2009_bis.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5402056736525306738" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Le lendemain ce fut la foule avec plus de 300 personnes (ce qui nous a valu un article dans le Dauphiné Libéré).&lt;br /&gt;&lt;a href="http://www.agilex.fr/2009/10/dauphine-libere-agile-grenoble/"&gt;&lt;img src="http://www.agilex.fr/wp-content/uploads/2009/10/DL-2009-10-23-Agile-tour.jpg" alt="" border="0" style="width: 300px; height: 300px;"/&gt;&lt;/a&gt;   &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKyH98-U5E66hdojGWyb8QLuVHaozj_wNcUr0pM0oUPJvm2zW1e8gBSMitinWiASEFUQNEmKaaZn2x17P2hmIJ3KjP94Uc3GHHt9mk4PI8QJqn1cdBEpwOZJi1LA-UGK4N0eF4kTaPYWY/s1600-h/Photo0145.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKyH98-U5E66hdojGWyb8QLuVHaozj_wNcUr0pM0oUPJvm2zW1e8gBSMitinWiASEFUQNEmKaaZn2x17P2hmIJ3KjP94Uc3GHHt9mk4PI8QJqn1cdBEpwOZJi1LA-UGK4N0eF4kTaPYWY/s200/Photo0145.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5397615148024136498" /&gt;&lt;/a&gt;&lt;br /&gt;Enfin jeudi tout s'est terminé à Valence avec une organisation au poil et des salles là encore combles :o)&lt;br /&gt;Je remercie tous les organisateurs pour ces conférences de qualité . Il me reste un an pour préparer de nouveaux sujets ...&lt;br /&gt;En attendant voici mes slides :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_2364839"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ehsavoie/at2009-soigner-sa-schizophrenie-12" title="At2009 Soigner Sa Schizophrenie 1.2"&gt;At2009 Soigner Sa Schizophrenie 1.2&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=at2009geneve-soignersaschizophrenie-1-2-091028061928-phpapp01&amp;stripped_title=at2009-soigner-sa-schizophrenie-12" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=at2009geneve-soignersaschizophrenie-1-2-091028061928-phpapp01&amp;stripped_title=at2009-soigner-sa-schizophrenie-12" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/ehsavoie"&gt;Emmanuel Hugonnet&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_2364814"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ehsavoie/at2009-coding-dojo-atdd" title="At2009 Coding Dojo ATDD"&gt;At2009 Coding Dojo ATDD&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=at2009geneve-codingdojo-kataatdd-05-091028061118-phpapp02&amp;stripped_title=at2009-coding-dojo-atdd" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=at2009geneve-codingdojo-kataatdd-05-091028061118-phpapp02&amp;stripped_title=at2009-coding-dojo-atdd" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/ehsavoie"&gt;Emmanuel Hugonnet&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Le &lt;a href="http://github.com/ehsavoie"&gt;code source sur Github&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Quelques liens :&lt;br /&gt;&lt;a href="http://homoagilis.blogspot.com/2009/10/agile-tour-grenoble-2009-c-fini.html"&gt;Emmanuel Etasse&lt;/a&gt;.&lt;br /&gt;&lt;a href="http://myblog.moquillon.free.fr/index.php?post/2009/10/21/L-Agile-Tour-2009-%C3%A0-Grenoble"&gt;Miguel Moquillon&lt;/a&gt;.&lt;br /&gt;&lt;a href="http://www.agilex.fr/2009/10/300-participants-a-grenoble/"&gt;Alexandre Boutin&lt;/a&gt;.</description><link>http://www.ehsavoie.com/2009/10/agile-tour-2009-cest-fini-enfin-pour.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://farm3.static.flickr.com/2586/4019231011_ec0fc334ce_t.jpg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-132148812795966308</guid><pubDate>Wed, 30 Sep 2009 06:55:00 +0000</pubDate><atom:updated>2009-09-30T09:14:29.834+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">livres</category><category domain="http://www.blogger.com/atom/ns#">maven</category><category domain="http://www.blogger.com/atom/ns#">projet</category><title>Maven, vers un guide ultime</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.sonatype.com/images/page7_3.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 315px; height: 315px;" src="http://www.sonatype.com/images/page7_3.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Cela fait maintenant quelques mois &lt;a href="http://www.nabble.com/forum/ViewPost.jtp?post=22905160&amp;framed=y"&gt;j'avais lancé l'idée&lt;/a&gt; de traduire le livre sous Commons License &lt;span style="font-weight:bold;"&gt;&lt;a href="http://www.sonatype.com/products/maven/documentation/book-defguide"&gt;Maven - The definitive guide&lt;/a&gt;&lt;/span&gt; écrit par &lt;a href="http://www.sonatype.com"&gt;Sonatype&lt;/a&gt; et publier chez &lt;a href="http://oreilly.com/"&gt;O'Reilly&lt;/a&gt;.&lt;br /&gt;Ce travail avance vite grâce à mes deux co-traducteurs de choc que sont &lt;span style="font-style:italic;"&gt;&lt;a href="http://blog.xebia.fr/2009/09/30/traduction-du-maven-definitive-guide-premiere-relecture-publique/"&gt;Erwan Alliaume&lt;/a&gt;&lt;/span&gt; de chez &lt;span style="font-weight:bold;"&gt;&lt;a href="http://www.xebia.fr"&gt;Xebia&lt;/a&gt;&lt;/span&gt; et &lt;span style="font-style:italic;"&gt;&lt;a href="http://blog.octo.com/litterature-maven-francaise/"&gt;Jérôme Van Der Linden&lt;/a&gt;&lt;/span&gt; de chez &lt;span style="font-weight:bold;"&gt;&lt;a href="http://www.octo.com"&gt;Octo Technology&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;Nous venons de finir de traduire la première partie du livre, et nous lançons donc une première relecture publique : &lt;br /&gt;&lt;p&gt;Pour démarrer :&lt;br/&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.maven-definitive-guide.fr/" title="Build journalier"&gt;Build journalier&lt;/a&gt; de la traduction ou son &lt;a href="https://repository.silverpeas.org/maven-guide.html" title="Build journalier mirroir"&gt;mirroir;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Sources de la traduction sur notre projet &lt;a href="http://wiki.github.com/ehsavoie/maven-guide-fr" title="GitHub"&gt;GitHub&lt;/a&gt; ;&lt;/li&gt;&lt;li&gt;&lt;a href="https://github.com/signup/free" title="Créez un compte sur github"&gt;Créez un compte sur github&lt;/a&gt; pour pouvoir nous soumettre vos retours via l’&lt;a href="http://github.com/ehsavoie/maven-guide-fr/issues" title="Issue Tracker"&gt;Issue Tracker&lt;/a&gt; et télécharger la &lt;a href="http://github.com/ehsavoie/maven-guide-fr" title="version XML du docbook"&gt;version XML du docbook&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Pour suivre l'évolution du projet sur &lt;a href="http://twitter.com/mavenbook_fr "&gt;Twitter&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;N’hésitez pas à contacter l’un des &lt;a href="http://wiki.github.com/ehsavoie/maven-guide-fr/qui-fait-quoi" title="membres de lquipe"&gt;membres de l’équipe&lt;/a&gt; pour toute question (mon adresse email : emmanuel DOT hugonnet AT gmail.com).&lt;/p&gt;</description><link>http://www.ehsavoie.com/2009/09/maven-vers-un-guide-ultime.html</link><author>noreply@blogger.com (ehsavoie)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-5302257192888505984</guid><pubDate>Wed, 23 Sep 2009 09:09:00 +0000</pubDate><atom:updated>2009-09-23T11:14:01.250+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">lean</category><title>AgileCamp à Grenoble</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSwCTqfujG6MhS-l74Ib5YFdhVj2j4rPEEkMak18JsRLLgiWCUIp-kfKtijRinLnnRXiLTLsmjyXyu3PIkQEjXQAzmz0uF6tr0TTntQRvZd0vchzVKBvJ7USNkMWyfvOZW9_YFfejO0LY/s1600-h/barcamp_logo_white.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 106px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSwCTqfujG6MhS-l74Ib5YFdhVj2j4rPEEkMak18JsRLLgiWCUIp-kfKtijRinLnnRXiLTLsmjyXyu3PIkQEjXQAzmz0uF6tr0TTntQRvZd0vchzVKBvJ7USNkMWyfvOZW9_YFfejO0LY/s320/barcamp_logo_white.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5384587860379099474" /&gt;&lt;/a&gt;&lt;br /&gt;Pour redémarrer l'année des réunions mensuelles du &lt;a href="http://www.clubagile.org/"&gt;CARA&lt;/a&gt;, Rémy Sanlaville et moi-même vous proposons de vivre l'expérience du premier AgileCamp à Grenoble, qui sera animé par Luc Bizeul.&lt;br /&gt;Lors de ce BarCamp nous pourrons partager au cours de discussions libres nos idées et nos dernières nouvelles autour des méthodes Agiles.&lt;br /&gt;La soirée est libre, ouverte à tous et ne demande simplement qu'une inscription car le nombre de place est limitée.&lt;br /&gt;&lt;br /&gt;Qu'est-ce qu'un BarCamp ? Quand cela se passera-t-il ? Comment s'inscrire ?...&lt;br /&gt;Toutes les réponses à vos questions sur la &lt;a href="http://barcamp.org/AgileCampGrenoble1"&gt;page web dédiée&lt;/a&gt; à cet évènement.&lt;br /&gt;&lt;br /&gt;Rendez-vous donc mardi 29 septembre 2009 à l'ENSIMAG.</description><link>http://www.ehsavoie.com/2009/09/barcamp-agile.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSwCTqfujG6MhS-l74Ib5YFdhVj2j4rPEEkMak18JsRLLgiWCUIp-kfKtijRinLnnRXiLTLsmjyXyu3PIkQEjXQAzmz0uF6tr0TTntQRvZd0vchzVKBvJ7USNkMWyfvOZW9_YFfejO0LY/s72-c/barcamp_logo_white.png" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-7891375168542415309</guid><pubDate>Fri, 10 Jul 2009 07:04:00 +0000</pubDate><atom:updated>2009-07-10T09:28:05.300+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">arxta</category><category domain="http://www.blogger.com/atom/ns#">brian marick</category><category domain="http://www.blogger.com/atom/ns#">photos</category><category domain="http://www.blogger.com/atom/ns#">video</category><title>Récursivité</title><description>Hier je regardais tranquillement dans mon TER la fin de la vidéo de Brian Marick à &lt;a href="http://www.agileroots.com/"&gt;AgileRoots&lt;/a&gt;. Je n'avais pu voir que les premières minutes ayant été trop pris par l'USI.&lt;br /&gt;Quelle ne fût pas ma surprise en voyant les 5 dernières minutes .....&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsrQiqrCcUnED9x0wxalu9D-viLqlOGIFXLHJnxNV58kDwTcpiL6MozEuQdRJ7aLmyqzotmdgMYVNxLBIjoACQgE_OjFUPcOK5iLeIpxFm3-0MJ2gHhayBRaFQefIFlf8STzec1gsPGAs/s1600-h/yesssssssssssssssssssssssss.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsrQiqrCcUnED9x0wxalu9D-viLqlOGIFXLHJnxNV58kDwTcpiL6MozEuQdRJ7aLmyqzotmdgMYVNxLBIjoACQgE_OjFUPcOK5iLeIpxFm3-0MJ2gHhayBRaFQefIFlf8STzec1gsPGAs/s320/yesssssssssssssssssssssssss.png" alt="" id="BLOGGER_PHOTO_ID_5356725344160024178" border="0"&gt;&lt;/a&gt;&lt;br /&gt;Afficher une image d'une présentation qui cite mon blog sur mon blog m'a fait prendre conscience que j'étais devenu un vrai informaticien ;o)&lt;br /&gt;&lt;br /&gt;Voici la vidéo complète que je vous engage à regarder.&lt;br /&gt;&lt;br /&gt;&lt;embed src="http://agileroots2009.confreaks.com/player.swf" height="380" width="640" allowscriptaccess="always" allowfullscreen="true" flashvars="image=images%2F16-jun-2009-09-00-artisanal-retro-futurism-team-scale-anarcho-syndicalism-brian-marick-preview.png&amp;file=http%3A%2F%2Fagileroots2009.confreaks.com%2Fvideos%2F16-jun-2009-09-00-artisanal-retro-futurism-team-scale-anarcho-syndicalism-brian-marick-small.mp4&amp;plugins=viral-1" &gt;&lt;/embed&gt;</description><link>http://www.ehsavoie.com/2009/07/recursivite.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsrQiqrCcUnED9x0wxalu9D-viLqlOGIFXLHJnxNV58kDwTcpiL6MozEuQdRJ7aLmyqzotmdgMYVNxLBIjoACQgE_OjFUPcOK5iLeIpxFm3-0MJ2gHhayBRaFQefIFlf8STzec1gsPGAs/s72-c/yesssssssssssssssssssssssss.png" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-5738439698301298412</guid><pubDate>Thu, 09 Jul 2009 09:48:00 +0000</pubDate><atom:updated>2009-07-27T10:19:56.733+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">atdd</category><category domain="http://www.blogger.com/atom/ns#">bdd</category><category domain="http://www.blogger.com/atom/ns#">cucumber</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><category domain="http://www.blogger.com/atom/ns#">tdd</category><category domain="http://www.blogger.com/atom/ns#">video</category><title>Innovations Techniques Au Service Du Test De Recette Automatisé</title><description>Voici la présentation que nous avons faite Hervé et moi-même lors de l'USI 2009:
&lt;br /&gt;Bon visionnage :o)
&lt;br /&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="682" height="467" align="left" &gt;&lt;param name="allowScriptAccess" value="sameDomain" /&gt;&lt;param name="movie" value="http://storage03.brainsonic.com/customers/octo_technology/20090702_usi/player.swf?richPlayerConfigFileUrl=http://storage03.brainsonic.com/customers/octo_technology/20090702_usi/xml/T18.xml" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="quality" value="high" /&gt;
&lt;br /&gt;&lt;embed src="http://storage03.brainsonic.com/customers/octo_technology/20090702_usi/player.swf?richPlayerConfigFileUrl=http://storage03.brainsonic.com/customers/octo_technology/20090702_usi/xml/T18.xml" quality="high" allowFullScreen="true" width="682" height="467" name="SmartPlayer" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"/&gt;&lt;/object&gt;
&lt;br /&gt;&lt;br/&gt;
&lt;br /&gt;Les slides:
&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_1699969"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ehsavoie/innovations-techniques-au-service-du-test-de-recette-automatis" title="Innovations Techniques Au Service Du Test De Recette Automatisé"&gt;Innovations Techniques Au Service Du Test De Recette Automatisé&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=innovationstechniquesauservicedutestderecetteautomatis-090709044758-phpapp01&amp;stripped_title=innovations-techniques-au-service-du-test-de-recette-automatis" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=innovationstechniquesauservicedutestderecetteautomatis-090709044758-phpapp01&amp;stripped_title=innovations-techniques-au-service-du-test-de-recette-automatis" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;documents&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/ehsavoie"&gt;Emmanuel Hugonnet&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;</description><link>http://www.ehsavoie.com/2009/07/innovations-techniques-au-service-du.html</link><author>noreply@blogger.com (ehsavoie)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-3385985366432405821</guid><pubDate>Wed, 08 Jul 2009 12:55:00 +0000</pubDate><atom:updated>2009-07-10T18:00:08.824+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">java</category><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">maven</category><category domain="http://www.blogger.com/atom/ns#">opensource</category><title>Maven en couleurs</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4tr3FqF4_uwqqL8OHm8Rs566r0vIUsgQkueE3BZy6zz_2znXOMqlQ8DEa3vomFiuGSjUjoz-ytAQwnnWPGvQ7hKDABtxxGFiibJwfquRLEimRaPOj6PiEiqZpBfWJk04OlsX5sCQvTEo/s1600-h/Konsole-KDE4.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 152px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4tr3FqF4_uwqqL8OHm8Rs566r0vIUsgQkueE3BZy6zz_2znXOMqlQ8DEa3vomFiuGSjUjoz-ytAQwnnWPGvQ7hKDABtxxGFiibJwfquRLEimRaPOj6PiEiqZpBfWJk04OlsX5sCQvTEo/s200/Konsole-KDE4.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5356074640744542114" /&gt;&lt;/a&gt;&lt;br /&gt;J'en avais marre de voir l'affreuse trace de Maven en noir et blanc lors de son exécution. Surtout après avoir testé mon application avec &lt;a href="http://wiki.github.com/aslakhellesoy/cucumber"&gt;Cucumber&lt;/a&gt;. Je me suis donc lancé dans l'immense tâche de colorier les traces de Maven.&lt;br /&gt;Pour cela j'ai utilisé les commandes ANSI supportées par les pseudo-terminaux X et j'ai fait un joli patch. Par contre je ne sais pas comment le faire marcher sous Windows (peut-être avec Cygwin).&lt;br /&gt;En attendant que tout soit intégré dans Maven je vous propose de télécharger la dernière version de Maven (2.2.0) en mode colorié ici:&lt;br /&gt;&lt;a href="https://repository.silverpeas.org/apache-maven-2.2.0-bin.tar.gz"&gt;apache-maven-2.2.0-bin.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;a href="https://repository.silverpeas.org/apache-maven-2.2.0-bin.tar.bz2"&gt;apache-maven-2.2.0-bin.tar.bz2&lt;/a&gt;&lt;br /&gt;&lt;a href="https://repository.silverpeas.org/apache-maven-2.2.0-bin.zip"&gt;apache-maven-2.2.0-bin.zip&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Il suffit d'exécuter la commande avec &lt;code&gt;-Dcolorized.console=true&lt;/code&gt;.&lt;br /&gt;Ce qui donne par exemple:&lt;br /&gt;&lt;code&gt;mvn -Dcolorized.console=true clean install &lt;/code&gt;&lt;br /&gt;Amusez-vous bien :o)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4iZxa50rJNr4sS8cWqOakjYtUuvKhb4Ah3Jc_OgnBKg2K_39bA2qvCP7xe74gdzwGSSTHfsjAIWIT4Qmo9gpZq2b3SIabj7GgASPiX7DJqka-h-3YCySAjwRehVAzB5ShrcoITbiKHbA/s1600-h/colorized_maven.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 148px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4iZxa50rJNr4sS8cWqOakjYtUuvKhb4Ah3Jc_OgnBKg2K_39bA2qvCP7xe74gdzwGSSTHfsjAIWIT4Qmo9gpZq2b3SIabj7GgASPiX7DJqka-h-3YCySAjwRehVAzB5ShrcoITbiKHbA/s200/colorized_maven.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5356368486604874578" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Pour changer les couleurs il suffit d'éditer dans maven-2.2.0-uber.jar:&lt;br /&gt;org/codehaus/plexus/logging/console/default.properties</description><link>http://www.ehsavoie.com/2009/07/maven-en-couleurs.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4tr3FqF4_uwqqL8OHm8Rs566r0vIUsgQkueE3BZy6zz_2znXOMqlQ8DEa3vomFiuGSjUjoz-ytAQwnnWPGvQ7hKDABtxxGFiibJwfquRLEimRaPOj6PiEiqZpBfWJk04OlsX5sCQvTEo/s72-c/Konsole-KDE4.png" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-7447910352641660633</guid><pubDate>Mon, 15 Jun 2009 07:35:00 +0000</pubDate><atom:updated>2009-06-15T10:43:47.695+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">article</category><category domain="http://www.blogger.com/atom/ns#">arxta</category><category domain="http://www.blogger.com/atom/ns#">brian marick</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><title>It's evolution baby, Do the revolution</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhb7fHdhuSnLcNWGlrrr3MNr9GfTlmCji8rWAiITAhCcli1hZmFKhNeqXYOf-1VIS2qlw2k5rX1fOgl04qOK-R5EAOq_LQfCQ-y61gEZMQQS04hEdpia4QGw6t1snACIgMWXbSKscjSDCU/s1600-h/Photo0063.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 120px; height: 160px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhb7fHdhuSnLcNWGlrrr3MNr9GfTlmCji8rWAiITAhCcli1hZmFKhNeqXYOf-1VIS2qlw2k5rX1fOgl04qOK-R5EAOq_LQfCQ-y61gEZMQQS04hEdpia4QGw6t1snACIgMWXbSKscjSDCU/s320/Photo0063.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5347456056550675090" /&gt;&lt;/a&gt;&lt;br /&gt;Une nouvelle cellule &lt;span style="font-weight:bold;font-style:italic;"&gt;&lt;a href="http://arxta.net/"&gt;Artisanal Retro-Futurism crossed with Team-Scale Anarcho-Syndicalism&lt;/a&gt;&lt;/span&gt;vient d'ouvrir dans les Alpes françaises.&lt;br /&gt;Je tiens à remercier &lt;a href="http://www.exampler.com"&gt;Brian Marick&lt;/a&gt;, un des créateurs du Manifeste Agile,pour ses autocollants et cette nouvelle forme d'Agilité. &lt;br /&gt;&lt;a title="View ARxTA on Scribd" href="http://www.scribd.com/doc/16430819/ARxTA" &gt;Voici donc la traduction: ARxTA&lt;/a&gt; &lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="doc_198150078651872" name="doc_198150078651872" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle" height="500" width="100%" rel="media:document" resource="http://d.scribd.com/ScribdViewer.swf?document_id=16430819&amp;access_key=key-1lrdl4xv2hdoj75l7ejw&amp;page=1&amp;version=1&amp;viewMode=" xmlns:media="http://search.yahoo.com/searchmonkey/media/" xmlns:dc="http://purl.org/dc/terms/" &gt;  &lt;param name="movie" value="http://d.scribd.com/ScribdViewer.swf?document_id=16430819&amp;access_key=key-1lrdl4xv2hdoj75l7ejw&amp;page=1&amp;version=1&amp;viewMode="&gt;   &lt;param name="quality" value="high"&gt;   &lt;param name="play" value="true"&gt;  &lt;param name="loop" value="true"&gt;   &lt;param name="scale" value="showall"&gt;  &lt;param name="wmode" value="opaque"&gt;   &lt;param name="devicefont" value="false"&gt;  &lt;param name="bgcolor" value="#ffffff"&gt;   &lt;param name="menu" value="true"&gt;  &lt;param name="allowFullScreen" value="true"&gt;   &lt;param name="allowScriptAccess" value="always"&gt;   &lt;param name="salign" value=""&gt;        &lt;embed src="http://d.scribd.com/ScribdViewer.swf?document_id=16430819&amp;access_key=key-1lrdl4xv2hdoj75l7ejw&amp;page=1&amp;version=1&amp;viewMode=" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" name="doc_198150078651872_object" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle"  height="500" width="100%"&gt;&lt;/embed&gt;&lt;/object&gt;          &lt;br /&gt;On ne pouvait terminer cette lecture sans un produit qui n'est pas loin de rassembler toutes ecs qualités (jusqu'à la couleur de l'emballage ;o) )&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7QKf9VkmEsA3d0kVo_w8TErL61CBZcr0JqsLT79bij8Kax0mii3rtItag_XJzzo9iWkVJtBEVsxrEDv0APk2uIyJ3o3wcaVpwRFzDSAwr4GgYMSqjv7TpoWqw721qrkwdQHj-0iCZsIc/s1600-h/pochatproduits.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7QKf9VkmEsA3d0kVo_w8TErL61CBZcr0JqsLT79bij8Kax0mii3rtItag_XJzzo9iWkVJtBEVsxrEDv0APk2uIyJ3o3wcaVpwRFzDSAwr4GgYMSqjv7TpoWqw721qrkwdQHj-0iCZsIc/s200/pochatproduits.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5347470203611909026" /&gt;&lt;/a&gt;</description><link>http://www.ehsavoie.com/2009/06/its-evolution-baby-do-revolution.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhb7fHdhuSnLcNWGlrrr3MNr9GfTlmCji8rWAiITAhCcli1hZmFKhNeqXYOf-1VIS2qlw2k5rX1fOgl04qOK-R5EAOq_LQfCQ-y61gEZMQQS04hEdpia4QGw6t1snACIgMWXbSKscjSDCU/s72-c/Photo0063.jpg" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-1287719032667975747</guid><pubDate>Sat, 30 May 2009 17:18:00 +0000</pubDate><atom:updated>2009-05-30T19:54:59.433+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">dojo</category><category domain="http://www.blogger.com/atom/ns#">maven</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><category domain="http://www.blogger.com/atom/ns#">tdd</category><category domain="http://www.blogger.com/atom/ns#">xpday</category><title>Xpday 2009 Paris 2ème Jour</title><description>La matinée commence par une série de &lt;span style="font-weight:bold;"&gt;lightning talks&lt;/span&gt; sur les outils logiciels.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX2TR74zmoUswC1T4CMhxbSxm1NX36N-JQ11THyEzWzDW4Ki96LSrCvywufZdIFLkDZqkjkZ1v_eLunc_O6jnqioYy8BD9a8Ks_kw6UBdRogII4UXuKmDfTb5VRgRqVDilHoEO3y08t14/s1600-h/Photo0026.jpg"&gt;&lt;img style="float:right; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX2TR74zmoUswC1T4CMhxbSxm1NX36N-JQ11THyEzWzDW4Ki96LSrCvywufZdIFLkDZqkjkZ1v_eLunc_O6jnqioYy8BD9a8Ks_kw6UBdRogII4UXuKmDfTb5VRgRqVDilHoEO3y08t14/s200/Photo0026.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341669123765048242" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sonar.codehaus.org/wp-content/themes/sonar/images/sonar-blackonwhite.png"&gt;&lt;img style="float:left; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 100px; height: 54px;" src="http://sonar.codehaus.org/wp-content/themes/sonar/images/sonar-blackonwhite.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;J'assiste enfin à une présentation de &lt;a href="http://sonar.codehaus.org/"&gt;Sonar&lt;/a&gt; (si Simon lit ça je vais me faire tuer :oP ) et je suis convaincu par l'outil.  Vivement que &lt;a href="http://www.silverpeas.com"&gt;Silverpeas&lt;/a&gt; soit entièrement sous Maven pour que je puisse le sonariser et que l'on rentre dans un cercle vertueux d'amélioration. J'y pense il faudra que je leur demande s'il y a une mesure Crap4J. &lt;br /&gt;La présentation suivante se fait sur le monde .net, pas sectaire je reste et je suis impressionné par la qualité des outils présentés par &lt;a href="http://www.mcnext.com/"&gt;MCNext&lt;/a&gt;. &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDVxCf6hNr5MuXRIpEamzqH7lXum_8g6Keb7KwdA_m87OcOQE3jj_ROFa8iGJp-U3AHBykfutdtYqobGODWJ6uLFqB-1gMkWmBXd1cZGN1XCKfdD-vrqm7d2xTOcapwsB0DDfLcVQIaQA/s1600-h/Photo0027.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDVxCf6hNr5MuXRIpEamzqH7lXum_8g6Keb7KwdA_m87OcOQE3jj_ROFa8iGJp-U3AHBykfutdtYqobGODWJ6uLFqB-1gMkWmBXd1cZGN1XCKfdD-vrqm7d2xTOcapwsB0DDfLcVQIaQA/s200/Photo0027.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341669625016196610" /&gt;&lt;/a&gt;&lt;br /&gt;Comme d'habitude Microsoft fournit un outil tout intégré qui fait tout, coute les yeux de la tête et rame ;o) (j'ai pas pu m'en empêcher). &lt;a href="http://www.ndepend.com/"&gt;Ndepend&lt;/a&gt; est vraiment très bien fait, je comprends mieux se qu'a voulu faire Octo avec son &lt;a href="http://www.xdepend.com/"&gt;Xdepend&lt;/a&gt;. &lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisVvlNQcDRdaj6DCQYDWLttFPQkr-yLR7NL7o65s0ztZQEgzXX7Td0m1iKt9R6gxBiRaTU4ENQn8MoZ0rPXMkWocptue16d0nxTPyze94WW-WSYWsL2fA_yKOPEoUN3PJzHyKZE11u2_g/s1600-h/Photo0028.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisVvlNQcDRdaj6DCQYDWLttFPQkr-yLR7NL7o65s0ztZQEgzXX7Td0m1iKt9R6gxBiRaTU4ENQn8MoZ0rPXMkWocptue16d0nxTPyze94WW-WSYWsL2fA_yKOPEoUN3PJzHyKZE11u2_g/s200/Photo0028.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341670836780463442" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.pyxis-tech.com/images/greenpepper.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:right;cursor:pointer; cursor:hand;width: 114px; height: 30px;" src="http://www.pyxis-tech.com/images/greenpepper.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Enfin on termine par une présentation en mode fire in da house de &lt;a href="http://www.pyxis-tech.com/fr/"&gt;Pyxis&lt;/a&gt; et de leur outil pour les tests d'acceptance &lt;a href="http://www.greenpeppersoftware.com/en/"&gt;GreenPepper&lt;/a&gt;. La discussion post-présentation est fort intéressante, j'en profite pour faire remonter mes remarques. Il va falloir que je regarde d'un peu plus près la partie opensource de ce moteur. &lt;br /&gt;&lt;br /&gt;J'intègre l'atelier sur les Styles sociaux en action où je ne reste pas le modèle me semblant très proche de celui de HBI que nous avait présenté Marc Vilcot à la réunion du CARA. &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK0SGnbq3VjqFX7AE3MHLq_WyzoouanJdB053Sl4V8A_SMkPlxBjmSF0dm35-n8Hzpc8FcEZNnWDyKKy6bEGCl6SOv2Fzeog1gaZvFT8ZrZ-h4y48leExYts6mZ0OMMQHmKqDzeLasw3E/s1600-h/Photo0035.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK0SGnbq3VjqFX7AE3MHLq_WyzoouanJdB053Sl4V8A_SMkPlxBjmSF0dm35-n8Hzpc8FcEZNnWDyKKy6bEGCl6SOv2Fzeog1gaZvFT8ZrZ-h4y48leExYts6mZ0OMMQHmKqDzeLasw3E/s200/Photo0035.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341672046482768434" /&gt;&lt;/a&gt;Je vais donc voir une présentation de Lean où on nous présente un retour d'expérience de Valtech sur la mise en pratique des outils Lean: Value Stream Mapping, les 5 pourquoi, les graphes Ishikawa et Paruto. Intéressant, même si j'en aurais aimé qu'on passe plus de temps sur les retours plutôt que sur la classique introduction aux concepts Lean. J'apprends que Mary Poppendieck va sortir son troisième livre cet automne.&lt;br /&gt;&lt;br /&gt;Après-midi chargé car on a deux présentations avec Rémy (même si pour la dernière je n'interviens que pour les questions finales). Je passe donc tout mon temps dans la Salle Belvédère. &lt;br /&gt;Eric Lefèvre-Ardant nous présente une introduction au TDD pour les managers, sous Excel. C'est bien mené, et le duo fonctionne bien même si on peut regretter l'usage d'un outil propriétaire ;o) Mais bon, c'est un truc de managers. Rien de bien neuf pour un développeur comme moi si ce n'est un vocabulaire et une idée à creuser pour convaincre et évangéliser les managers qui sont souvent un frein aux pratiques.&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_1499830"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ehsavoie/coding-dojo-in-the-alps-retour-dexprience?type=powerpoint" title="Coding Dojo in the Alps - Retour d&amp;#39;expérience"&gt;Coding Dojo in the Alps - Retour d&amp;#39;expérience&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=xpdaysfr-codingdojo-retourexperience-02-090528040324-phpapp02&amp;stripped_title=coding-dojo-in-the-alps-retour-dexprience" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=xpdaysfr-codingdojo-retourexperience-02-090528040324-phpapp02&amp;stripped_title=coding-dojo-in-the-alps-retour-dexprience" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;OpenOffice presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/ehsavoie"&gt;Emmanuel Hugonnet&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaKzPVOo_ddzKAoktnos3lEPvkQHcOjas1dFGgyO4kUcnRaCExsme46KIkSMGO7CCsZX3L6HLYqkQhnWxji3T01f7CGqtKAuW8MnHSuBtX9_M4_8QElxRPXaZ6UOFPsQTHPTCBNsY7gYk/s1600-h/Photo0042.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaKzPVOo_ddzKAoktnos3lEPvkQHcOjas1dFGgyO4kUcnRaCExsme46KIkSMGO7CCsZX3L6HLYqkQhnWxji3T01f7CGqtKAuW8MnHSuBtX9_M4_8QElxRPXaZ6UOFPsQTHPTCBNsY7gYk/s200/Photo0042.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341673413655666498" /&gt;&lt;/a&gt;&lt;br /&gt;Nous voilà donc avec une toute petite demi-heure pour présenter ce qu'on essaye de faire aux coding dojos de Grenoble. Une demi-heure c'est court, aussi on met aux votes les trois points qu'on a préparés histoire de répondre le mieux à notre audience. C'est vraiment un format intéressant lorsqu'on a peur de manquer de temps, ça permet d'apporter le maximum de valeur.&lt;br /&gt;Rémy poursuit par le retour d'expérience d'Orange sur la mise en place de son usine logicielle.  J'en profite pour prendre quelques photos. Une fois qu'il a terminé sa présentation, je réponds aux questions de l'assistance pendant qu'il reprend son souffle. &lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_1499829"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ehsavoie/usine-logicielle-orange-labs?type=powerpoint" title="Usine logicielle à Orange Labs"&gt;Usine logicielle à Orange Labs&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=xpdaysfr-usinelogicielle-02-090528040331-phpapp02&amp;stripped_title=usine-logicielle-orange-labs" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=xpdaysfr-usinelogicielle-02-090528040331-phpapp02&amp;stripped_title=usine-logicielle-orange-labs" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;OpenOffice presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/ehsavoie"&gt;Emmanuel Hugonnet&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgsEv-NQ6IOaKbNg1Zt9VMgeAwO_vHK0XqL-1K7rasEMB0owIVNBIkeR0yUBDLLMttlVPpxmeLNhARP5NEwouyMN18LxtzxyW1kbHkv8LYsZLO9wM8mbMITS0kPpH8UA3YoMZvKP77ID4/s1600-h/Photo0046.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgsEv-NQ6IOaKbNg1Zt9VMgeAwO_vHK0XqL-1K7rasEMB0owIVNBIkeR0yUBDLLMttlVPpxmeLNhARP5NEwouyMN18LxtzxyW1kbHkv8LYsZLO9wM8mbMITS0kPpH8UA3YoMZvKP77ID4/s200/Photo0046.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341673829461685218" /&gt;&lt;/a&gt;On laisse alors la plac à &lt;a href="http://etreagile.thierrycros.net/home/index.php"&gt;Thierry Cros&lt;/a&gt; et Jean-Marie Damas pour conclure ces xpday pour un &lt;a href="http://etreagile.thierrycros.net/home/index.php?post/2009/05/28/Manifeste-pour-une-informatique-h%C3%A9doniste-et-responsable"&gt;manifeste d'une informatique hédoniste et responsable&lt;/a&gt;. Jean-Marie nous présente cette recherche du plaisir, et Thierry apporte sa pierre à chaque étape en nous exposant comment en assumant nos responsabilités et uniquement celles-ci on arrive à respecter cette recherche du plaisir. L'épisode de Challenger est le point d'orgue de cette notion de responsabilité, puisque l'ingénieur s'est retrouvé à changer de casquette pour devenir manager le temps d'une prise de décision qui incombait à ses responsables.&lt;br /&gt;&lt;br /&gt;Les xpday se terminent et nous courrons prendre nos trains respectifs. Le mien est quasiment vide (grève SNCF oblige) et je rentre heureux mais vidé de ces xpdays. Vivement l'année prochaine et ce coup-ci je prépare mon programme à l'avance ;o) surtout que maintenant je connais les speakers.</description><link>http://www.ehsavoie.com/2009/05/xpday-2009-paris-2eme-jour.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX2TR74zmoUswC1T4CMhxbSxm1NX36N-JQ11THyEzWzDW4Ki96LSrCvywufZdIFLkDZqkjkZ1v_eLunc_O6jnqioYy8BD9a8Ks_kw6UBdRogII4UXuKmDfTb5VRgRqVDilHoEO3y08t14/s72-c/Photo0026.jpg" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-7880301080486649967</guid><pubDate>Sat, 30 May 2009 15:14:00 +0000</pubDate><atom:updated>2009-05-30T18:56:24.080+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">atdd</category><category domain="http://www.blogger.com/atom/ns#">bdd</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><category domain="http://www.blogger.com/atom/ns#">xpday</category><title>Xpday Paris 2009 - 1er jour</title><description>Enfin un peu de repos, …&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjK_hrGHeiucQSUpWcE2r1oXmstUqxGdDKrfT3X7g6vIBc5u5VFYYsOimfAxHJS1hPUDDJ2vn34pGXPvkszYreWkUGlrKA6HesStbs8tdl0HhAQUxFqKk2RbhUGAwcjCkKdJ2ntyuR-IKk/s1600-h/3578711946_59118fdec0_b.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 133px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjK_hrGHeiucQSUpWcE2r1oXmstUqxGdDKrfT3X7g6vIBc5u5VFYYsOimfAxHJS1hPUDDJ2vn34pGXPvkszYreWkUGlrKA6HesStbs8tdl0HhAQUxFqKk2RbhUGAwcjCkKdJ2ntyuR-IKk/s200/3578711946_59118fdec0_b.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341658874308970642" /&gt;&lt;/a&gt;&lt;br /&gt;La première série de conférences s'achève avec les XpDay 2009.&lt;br /&gt;Voici donc mon retour sur l'ensemble de ces deux journées.&lt;br /&gt;Nous avons eu la chance de lancer le bal avec notre présentation "&lt;span style="font-weight:bold;font-style:italic;"&gt;Soigner sa schizophrénie MOA/MOE: voyage au pays des spécifications exécutables&lt;/span&gt;".&lt;br /&gt;&lt;br /&gt;La salle était pleine pour cette session qui du point de vue orateurs s'est très bien déroulée. Le ROTI laisse à penser que le public était lui aussi satisfait de notre prestation. Je vous laisse lire les retours trouvés sur différents blogs:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.touilleur-express.fr/2009/05/27/xp-day-france-2009-journee-1/"&gt;Le Touilleur Express&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.richand.info/blog/?p=62"&gt;Nathaniel RICHAND&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Petite remarque, nous avons présenté &lt;a href="http://www.fitnesse.org/"&gt;FitNesse/SLIM&lt;/a&gt; lors de notre présentation pour l'aspect graphique de FitNesse, cependant ce n'était pas une préconisation. D'ailleurs personnellement j'ai été séduit par &lt;a href="http://jbehave.org/"&gt;JBehave2&lt;/a&gt; pour Java, et &lt;a href="http://wiki.github.com/aslakhellesoy/cucumber/"&gt;Cucumber&lt;/a&gt; pour Ruby qui présentent la même approche et (du point de vue développeur) sont plus intuitifs. Cependant il leur manque l'éditeur sexy et collaboratif. &lt;br /&gt;Voici nos slides :&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_1494290"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ehsavoie/soigner-sa-schizophrnie?type=powerpoint" title="Soigner Sa Schizophrénie"&gt;Soigner Sa Schizophrénie&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=soignersaschizophrniehandout-090527033542-phpapp02&amp;stripped_title=soigner-sa-schizophrnie" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=soignersaschizophrniehandout-090527033542-phpapp02&amp;stripped_title=soigner-sa-schizophrnie" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;Microsoft Word documents&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/ehsavoie"&gt;Emmanuel Hugonnet&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Nous avons ensuite laissé la main à un retour d'expérience Valtech notamment autour de FitNesse, qui venait corroborer notre présentation :o).&lt;br /&gt;Je suis ensuite allé voir la présentation de &lt;a href="http://conception.developpez.com/reportage/agilite/xp-day-suisse-2009/?page=session-philosophique"&gt;Dominic Williams&lt;/a&gt; sur le développement hédoniste où il faisait le parallèle entre l'école de pensée hédoniste et matérialiste et le développement agile. &lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBlEbbWhyphenhyphenMdmgXkRwsN5uSckLDv4WHIpGVNuGs-Bnrqc_UsYUSK6wiRJ-Ei15FcGyGS6qp_hV7Wv6OySMU1aO8fQyEL76NctWfHe6oYVX8rm1_EEeJAPgxdvjozICjhsTgCyn2WoL_DHs/s1600-h/Photo0008.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBlEbbWhyphenhyphenMdmgXkRwsN5uSckLDv4WHIpGVNuGs-Bnrqc_UsYUSK6wiRJ-Ei15FcGyGS6qp_hV7Wv6OySMU1aO8fQyEL76NctWfHe6oYVX8rm1_EEeJAPgxdvjozICjhsTgCyn2WoL_DHs/s200/Photo0008.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341657167497211570" /&gt;&lt;/a&gt;&lt;br /&gt;On parle Démocrite, Epicure, Nietzsche par opposition à Platon et sa vision transcendantale. La présentation est très dynamique, alternant vidéo de Matrix, tableaux classiques (Poussin, Raphael, …)  et citations de Deleuze.  Tout s'articule autour des quatre principes du manifeste Agile.&lt;br /&gt;1- &lt;span style="font-weight:bold;"&gt;Le matérialisme&lt;/span&gt;&lt;br /&gt;Un logiciel qui s'exécute plutôt que la documentation.&lt;br /&gt;La documentation est platonicienne, elle fait partie du monde des idées, de la recherche d'un idéal. Le logiciel qui fonctionne (plus ou moins) est matérialiste. Si pour Platon nous sommes encore dans la Caverne, la production de livrables qui tournent nous engagent plutôt à faire usage de nos sens et de notre perception directe de la réalité.&lt;br /&gt;2- &lt;span style="font-weight:bold;"&gt;Le Jardin d'Epicure&lt;/span&gt;&lt;br /&gt;Epicure et son jardin égalitariste s'oppose là encore à l'académie platonicienne. Il faut rester ouvert, accepter tout le monde pour créer une communauté. On en choisit les membres par élection et éviction. L'anecdote autour des cornalines (bague portant l'effigie d'Epicure) me fait penser à Unclebob et son Green Band pour un code propre. &lt;br /&gt;3- &lt;span style="font-weight:bold;"&gt;Dieu&lt;/span&gt;&lt;br /&gt;Pour bien développer il faut développer heureux et prendre du plaisir. &lt;br /&gt;Il faut tuer le Bouddha (ou Dieu, c'est selon) pour se libérer de ses chaines et devenir enfin libre et donc heureux (ce qui correspond d'ailleurs pour moi au passage au niveau Compétent du modèle de Dreyfus, lorsqu'on commence à prendre en autonomie). Nietzsche et son éternel retour, le fait de ne choisir d'agir que pour avoir vécu une vie où on ne changerait rien de ses choix me fait penser aux rétrospectives, on élimine par ce mode de pensée (que dois je garder de mes actions dont je suis vraiment heureux du résultat pour moi) les actes commis sous la pression social, religieuse, … On s'améliore personnellement et on se libère ainsi. &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://arxta.net/images/arxta-with-url.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 120px;" src="http://arxta.net/images/arxta-with-url.png" border="0" alt="" /&gt;&lt;/a&gt;Il faut tuer le Bouddha pour se libérer et pouvoir assumer et prendre plaisir dans chacun de ses actes. Cet appel anarchiste me fait penser à Brai Marick et son &lt;a href="http://arxta.net  "&gt;AR⊗TA (Artisanal Retro-Futurism crossed with Team-Scale Anarcho-Syndicalism)&lt;/a&gt;. &lt;br /&gt;4- &lt;span style="font-weight:bold;"&gt;Le Plaisir&lt;/span&gt;&lt;br /&gt;Pour atteindre le plaisir il faut surtout éviter le déplaisir: aussi pour éviter les bugs qui nous pourrissent la vie on va suivre un cycle incrémental. Bref en bon geek on va suivre une Hacker Ethic (de Pekka Himanen) et prendre plaisir à ce qu'on fait.&lt;br /&gt;&lt;br /&gt;Sur ces bonnes paroles ma première matinée se termine.&lt;br /&gt;&lt;br /&gt;L'après-midi commence avec un retour d'expérience de &lt;span style="font-weight:bold;"&gt;Sébastien Sacard&lt;/span&gt; sur son rôle en tant que Product Owner. &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM8WbWGMNVQ2fL0axqJMKM6DalMLZ563onc5MvFYnnhK-4aXhmGSzjfWd_4Ph4UUBgywdLgTwMFp0N3GaYAdtjk1Zwha4MYFfhE9LwwPcaJoFhVcKMH-YUaBG-xEJNs0cpSqsdD8jqKss/s1600-h/Photo0011.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM8WbWGMNVQ2fL0axqJMKM6DalMLZ563onc5MvFYnnhK-4aXhmGSzjfWd_4Ph4UUBgywdLgTwMFp0N3GaYAdtjk1Zwha4MYFfhE9LwwPcaJoFhVcKMH-YUaBG-xEJNs0cpSqsdD8jqKss/s200/Photo0011.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341659350358728978" /&gt;&lt;/a&gt;&lt;br /&gt;Suite à un problème technique il démarre un peu tard et se retrouve donc à devoir avancer rapidement dans ses slides (ce qui est dommage, surtout quand on sait que les retours d'expérience ).  Si on doit retenir une chose de cette présentation c'est qu'un bon Product Owner doit avoir un passé technique pour ne pas s'en laisser trop conter par l'équipe ;o). Ce rôle, que l'on qualifie souvent de central dans la démarche Scrum, est relativement mal défini et les formations sont peu nombreuses ou mal adaptées d'où l'importance de l'expérience. Il nous explique comment il conçoit son rôle de diplomate envers le Business Owner dont il faut freiner les ardeurs tout en lui donnant de la visibilité au travers d'une feuille de route sur les deux ou trois itérations à suivre. Puis son rôle de leader pour l'équipe à qui il doit apporter et conserver la vision du produit tout en la protégeant pour ne pas que l'enthousiasme s'effrite.&lt;br /&gt;Il nous parle de sa gestion des backlogs: un backlog produit où on retrouve les exigences fonctionnelles et un backlog technique pour les exigences non fonctionnelles.&lt;br /&gt;Hélas le temps lui manque et on ne peut lui poser de question :o(&lt;br /&gt;&lt;br /&gt;La présentation suivante s'enchaine pour nous parler de TDD et de Mock.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtVcp25DPpq__n_ov3OO8_S2eu9xtZxa_IvZbf323A6aGkGMZco_wwqhoTVg-fbIrTySlSEjcgDoJ4AemhAIvBCrrWa_CM_29EP-eMz0eCgSpUVn21UAvz4ZGBhm4MjbY2OjH5JVF5gBg/s1600-h/Photo0015.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtVcp25DPpq__n_ov3OO8_S2eu9xtZxa_IvZbf323A6aGkGMZco_wwqhoTVg-fbIrTySlSEjcgDoJ4AemhAIvBCrrWa_CM_29EP-eMz0eCgSpUVn21UAvz4ZGBhm4MjbY2OjH5JVF5gBg/s200/Photo0015.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341659910853606690" /&gt;&lt;/a&gt;&lt;br /&gt;Le framework de moking choisi est EasyMock (dommage j'aurai préféré Mockito). Même les intervenants maitrisent excellemment Eclipse et même si tout s'enchaine parfaitement, on assiste plus à une introduction au TDD qu'à une vraie discussion sur le mocking. Les mocks n'arrivent d'ailleurs qu'à la fin de la présentation, rien n'est dit sur les bonnes pratiques d'utilisation de ceux-ci, sur la différence mock/stub. Je reste donc sur ma faim :o((&lt;br /&gt;&lt;br /&gt;Une fois la pause passée je vais voir la présentation d'&lt;a href="http://www.oqube.com/"&gt;Arnaud Bailly&lt;/a&gt; sur Javascript. Une vraie présentation de geek, purement géniale et très très agréable à suivre. Dans sa rétrospective il indique qu'il pense avoir été trop vite et qu'il a perdu du monde en route. Moi j'ai trouvé ça plus que génial, j'en aurais bien pris encore quelques heures alors que pourtant Javascript et moi on est fâché de longue date (qui parle encore de Netscape/ Internet Explorer 4). &lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlkDkPDweWru7Fh8JYZAOxDcqIkUGVUek7N4TtoghmAonKYWA_i_NKvS3wmbJOCiJ7hEOmulZXOJlu4dZCVAzIoTWQPMen2NutpMq8oUnEw5XzTDrH1Wd5ZsFD4A-CzB0aSoboSm3St-E/s1600-h/Photo0019.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlkDkPDweWru7Fh8JYZAOxDcqIkUGVUek7N4TtoghmAonKYWA_i_NKvS3wmbJOCiJ7hEOmulZXOJlu4dZCVAzIoTWQPMen2NutpMq8oUnEw5XzTDrH1Wd5ZsFD4A-CzB0aSoboSm3St-E/s200/Photo0019.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5341660123526856690" /&gt;&lt;/a&gt; J'avais lu quelques articles sur les langages à prototype mais après cette présentation tout s'éclaire :o). Je n'aime toujours pas les langages à typage de canard (on ne se refait pas) mais j'ai vraiment apprécié la création de ce simple DSL de validation de formulaire. Arnaud revient !!!! &lt;br /&gt;Pour la démo et les slides c'est &lt;a href="http://www.oqube.com/forum-php-2008/index.html"&gt;ici&lt;/a&gt;.&lt;br /&gt;J'apprends un peu plus tard que j'ai raté une de ses présentations le matin même, je suis trop déçu o:(( j'ai perdu trop de temps sur ce programme où les intervenants n'étaient pas nommés pas.&lt;br /&gt;&lt;br /&gt;La journée se termine par une introduction au coaching Agile. C'est dynamique, sympathique et on nous présente bien le rôle de coach mais je regrette encore Arnaud et son Emacs magique ;o).</description><link>http://www.ehsavoie.com/2009/05/xpday-paris-2009-1er-jour.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjK_hrGHeiucQSUpWcE2r1oXmstUqxGdDKrfT3X7g6vIBc5u5VFYYsOimfAxHJS1hPUDDJ2vn34pGXPvkszYreWkUGlrKA6HesStbs8tdl0HhAQUxFqKk2RbhUGAwcjCkKdJ2ntyuR-IKk/s72-c/3578711946_59118fdec0_b.jpg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-967176289538817161</guid><pubDate>Fri, 22 May 2009 11:16:00 +0000</pubDate><atom:updated>2009-06-10T14:38:46.519+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">atdd</category><category domain="http://www.blogger.com/atom/ns#">bdd</category><category domain="http://www.blogger.com/atom/ns#">cucumber</category><category domain="http://www.blogger.com/atom/ns#">dojo</category><category domain="http://www.blogger.com/atom/ns#">ruby</category><title>Behaviour Driven Dojo</title><description>Mercredi dernier nous avons commencé à mettre en pratique le &lt;span style="font-weight:bold;"&gt;&lt;a href="http://dannorth.net/introducing-bdd"&gt;Behaviour Driven Development&lt;/a&gt;&lt;/span&gt; lors de notre &lt;a href="http://groups.google.fr/group/cara-dojo"&gt;Coding Dojo&lt;/a&gt;.&lt;br /&gt;Ce dojo faisait suite à la présentation que nous avions faite Rémy et moi lors du précédent dojo:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTmWwwR_9MQ7jk__PHvgNU4UasgNY4JH7zflPQMITP48GqGP4c2nF9IzVym7spZWXTMRMGJa_JMFYgsuKRI6P8ZWo3Gb61zf-pYT38wIksdcB4VXP-lA0CxSfcUrAWVFkFZnc0lkgeCkk/s1600-h/06052009121.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTmWwwR_9MQ7jk__PHvgNU4UasgNY4JH7zflPQMITP48GqGP4c2nF9IzVym7spZWXTMRMGJa_JMFYgsuKRI6P8ZWo3Gb61zf-pYT38wIksdcB4VXP-lA0CxSfcUrAWVFkFZnc0lkgeCkk/s200/06052009121.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5345677424630270066" /&gt;&lt;/a&gt;&lt;br /&gt;Après un atelier de spécification avec notre 'Product Owner' Emmanuel, nous nous sommes séparés en plusieurs groupes pour réaliser notre jeu du pendu. &lt;br /&gt;pour ma part j'ai rejoins le monde Ruby sous &lt;a href="http://www.netbeans.org"&gt;Netbeans &lt;/a&gt;avec &lt;a href="http://wiki.github.com/aslakhellesoy/cucumber"&gt;Cucumber&lt;/a&gt;.&lt;br /&gt;Voici mes codisciples alors que Sébastien Nicouleaud nous montre comment utiliser Cucumber :&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh6.ggpht.com/_OuAeEWlS2mY/ShP8CAnqB8I/AAAAAAAAAM4/ZEahOuJ71j8/s912/20052009138.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 912px; height: 684px;" src="http://lh6.ggpht.com/_OuAeEWlS2mY/ShP8CAnqB8I/AAAAAAAAAM4/ZEahOuJ71j8/s912/20052009138.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Mes vagues connaissances de Ruby étaient amplement suffisantes pour suivre et j'ai trouvé Cucumber très simple d'utilisation. Il est vraiment très proche de &lt;a href="http://jbehave.org/"&gt;JBehave&lt;/a&gt; et j'aime vraiment cette idée d'écrire les scénarii dans un format texte avec le trigramme: &lt;span style="font-style:italic;"&gt;Given / When  / Then&lt;/span&gt;.&lt;br /&gt;Avec Cucumber on peut même le faire en français ;o) (pour JBehave ça ne doit pas être compliqué à ajouter).&lt;br /&gt;J'attends avec impatience de reprendre ce dojo, car ayant dû partir avant la fin:o(, j'ai envie de mettre la main à la pate.&lt;br /&gt;Si Ruby n'est pas votre tasse de thé, Bruno Orsier a lui participé au groupe .Net et NBehave, et donne ses conseils et ses retours sur son &lt;a href="http://blog.developpez.com/bruno-orsier/p7624/bdd/mes-premiers-pas-en-bdd-behavior-driven/#more7624"&gt;blog&lt;/a&gt;.</description><link>http://www.ehsavoie.com/2009/05/behaviour-driven-dojo.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTmWwwR_9MQ7jk__PHvgNU4UasgNY4JH7zflPQMITP48GqGP4c2nF9IzVym7spZWXTMRMGJa_JMFYgsuKRI6P8ZWo3Gb61zf-pYT38wIksdcB4VXP-lA0CxSfcUrAWVFkFZnc0lkgeCkk/s72-c/06052009121.jpg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-8436073158695470689</guid><pubDate>Fri, 15 May 2009 09:48:00 +0000</pubDate><atom:updated>2009-05-15T12:12:09.595+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">dreyfus</category><category domain="http://www.blogger.com/atom/ns#">livres</category><title>Cerveau Gauche / Cerveau Droit</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6Ogj5b_z8BkEl6VEnBNM8BF3itg8AAngp1ii8OGaTWxkLHbS3pvfUd1tA6KxGOgp36-Fm95bjM9f4OZXxS-zDwC7dhkPJF1p_u4y5_4GpKfaDnpw7ugZ_gCR_fIcNdfYWp9JNey0IeM0/s1600-h/41GMBp-ziOL._SS500_.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 320px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6Ogj5b_z8BkEl6VEnBNM8BF3itg8AAngp1ii8OGaTWxkLHbS3pvfUd1tA6KxGOgp36-Fm95bjM9f4OZXxS-zDwC7dhkPJF1p_u4y5_4GpKfaDnpw7ugZ_gCR_fIcNdfYWp9JNey0IeM0/s320/41GMBp-ziOL._SS500_.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5335990914640863314" /&gt;&lt;/a&gt;&lt;br /&gt;Je viens de terminer a &lt;a href="http://www.amazon.fr/Whole-New-Mind-Right-Brainers-Future/dp/1594481717/ref=sr_1_1?ie=UTF8&amp;s=english-books&amp;qid=1242381175&amp;sr=8-1"&gt;"Whole New Mind"&lt;/a&gt; de &lt;a href="http://www.danpink.com/"&gt;Daniel Pink&lt;/a&gt; (oui le même qui était derrière le &lt;a href="http://www.ehsavoie.com/2009/03/johnny-bunko-un-manga-agile.html"&gt;manga agile&lt;/a&gt;).&lt;br /&gt;Dans ce livre il nou explique que si la révolution industrielle a été possible grâce à notre 'cerveau gauche' et sa logique, une nouvelle ère arrive: l'age conceptuel durant lequel il va nous falloir apprendre à utiliser notre cerveau droit en combinaison avec notre cerveau gauche.&lt;br /&gt;Pour lui l'automatisation (par l'ordinateur) et la mondialisation (Chine, Inde) rendent l'aspect cerveau gauche caduque: le raisonnement, l'analyse et la logique pure peuvent être ou automatisés ou délocalisés. Il faut donc apporter du sens, de l'émotion, de l'empathie à nos produits / travaux et donc il faut faire pénétrer le cerveau droit dans le monde du travail exclusivement tourné vers notre cortex gauche.&lt;br /&gt;Il présente les six nouveaux sens qu'il va nous falloir développer dans ce nouvel age:&lt;ol&gt;&lt;li&gt;le Design&lt;/li&gt;&lt;li&gt;l'histoire (à raconter)&lt;/li&gt;&lt;li&gt;la Symphonie&lt;/li&gt;&lt;li&gt;l'Empathie&lt;/li&gt;&lt;li&gt;le Jeu&lt;/li&gt;&lt;li&gt;le Sens&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Chaque point est décrit puis une séri d'exercices, des lectures et de compléments est fournie pour pouvoir le travailler.&lt;br /&gt;Je n'ai pu  m'empêcher de penser à l'agilit (oui ça me travaille en ce moment ce sujet ;o) )lorsque j'ai lu la partie histoire qui ressemble à s'y méprendre à une introduction aux histoires d'utilisateur.&lt;br /&gt;De même qund il explique le rôle du jeu et de l'amusement dans l'apprentissage je pense à nos dojos de code où on essaye de se faire plaisir en codant ce qu'on a rarement la possibilité de faire dans un contexte professionnel.&lt;br /&gt;Bref un bon moment de lecture....</description><link>http://www.ehsavoie.com/2009/05/cerveau-gauche-cerveau-droit.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6Ogj5b_z8BkEl6VEnBNM8BF3itg8AAngp1ii8OGaTWxkLHbS3pvfUd1tA6KxGOgp36-Fm95bjM9f4OZXxS-zDwC7dhkPJF1p_u4y5_4GpKfaDnpw7ugZ_gCR_fIcNdfYWp9JNey0IeM0/s72-c/41GMBp-ziOL._SS500_.jpg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-8344239605176122879</guid><pubDate>Mon, 27 Apr 2009 21:31:00 +0000</pubDate><atom:updated>2009-04-28T00:05:17.303+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">jackrabbit</category><category domain="http://www.blogger.com/atom/ns#">java</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><title>Et une de plus</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipfYFCdo7qd_oZjh0a1wr5vYcrbV1sL1ZtaT4jYiGRoIiUKv6xaiw-_r-HALB6bxWupDO6SK5EWiZ0vFuVEkBhZq2oZMP_8OPCcsvR7UKWFifH87pq7d_IOW9NMXEjJXSwjFWo1a6JjpE/s1600-h/logo200x70.jpeg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 70px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipfYFCdo7qd_oZjh0a1wr5vYcrbV1sL1ZtaT4jYiGRoIiUKv6xaiw-_r-HALB6bxWupDO6SK5EWiZ0vFuVEkBhZq2oZMP_8OPCcsvR7UKWFifH87pq7d_IOW9NMXEjJXSwjFWo1a6JjpE/s200/logo200x70.jpeg" border="0" alt=""id="BLOGGER_PHOTO_ID_5329495597716502306" /&gt;&lt;/a&gt;&lt;br /&gt;Je vais enfin pouvoir rencontrer les membres du JUG lyonnais le 19 mai, puisque je vais aller y parler de Java Content Repository (JSR-170) et plus précisément de &lt;a href="http://jackrabbit.apache.org"&gt;Jackrabbit&lt;/a&gt; que j'ai mis en œuvre dans le cadre de notre produit &lt;a href="http://www.silverpeas.com"&gt;Silverpeas&lt;/a&gt;.&lt;br /&gt;En attendant que Silverpeas soit enfin OpenSource (et on y travaille dur) et que l'on puisse complètement migrer notre solution sur cette API, je vous propose de venir en discuter &lt;a href="http://www.lyonjug.org/bin/view/Main/20090519"&gt;à l'INSA de Lyon le 19 mai&lt;/a&gt;.</description><link>http://www.ehsavoie.com/2009/04/et-une-de-plus.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipfYFCdo7qd_oZjh0a1wr5vYcrbV1sL1ZtaT4jYiGRoIiUKv6xaiw-_r-HALB6bxWupDO6SK5EWiZ0vFuVEkBhZq2oZMP_8OPCcsvR7UKWFifH87pq7d_IOW9NMXEjJXSwjFWo1a6JjpE/s72-c/logo200x70.jpeg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-6957482595454806062</guid><pubDate>Mon, 20 Apr 2009 15:22:00 +0000</pubDate><atom:updated>2009-04-20T17:33:08.107+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">java</category><category domain="http://www.blogger.com/atom/ns#">netbeans</category><category domain="http://www.blogger.com/atom/ns#">opensource</category><title>Oracle rachète Sun</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.lets-jam.com/images/eclipse_soleil.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 287px;" src="http://www.lets-jam.com/images/eclipse_soleil.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Tout est dit dans le titre, maintenant il ne reste plus qu'à attendre pour compter les pots cassés :o(&lt;br /&gt;Que vont devenir la JVM de Sun (ou Jrockit), Glassfish (ou Bea Weblogic), MySQL, Netbeans (ou JDeveloper) ? Je ne sais pas si IBM aurait fait mieux mais c'est clair que j'aurai du mal à voir disparaitre tous ces produits qui m'ont suivi tout au long de ma carrière de développeur, parfois même avant que Sun ne les rachète.&lt;br /&gt;C'est avec un brin de nostalgie et de tristesse que je vois disparaitre l'un des cavaliers blancs. Une société vraiment orientée technique, c'est surement pour cela que leurs produits me plaisaient autant.&lt;br /&gt;Bye bye Sun, finalement ce n'est pas Eclipse (et IBM) qui auront eu raison de toi :o((</description><link>http://www.ehsavoie.com/2009/04/oracle-rachete-sun.html</link><author>noreply@blogger.com (ehsavoie)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-2434468828143328233</guid><pubDate>Thu, 09 Apr 2009 11:44:00 +0000</pubDate><atom:updated>2009-04-09T14:15:09.253+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">atdd</category><category domain="http://www.blogger.com/atom/ns#">bdd</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><category domain="http://www.blogger.com/atom/ns#">tdd</category><title>Autopromotion :o)</title><description>C'était encore secret mais vu que ça apparait officiellement sur les sites je vais tout avouer ;o)&lt;br /&gt;Je vais passer quelques jours à Paris cet été:&lt;ul&gt;&lt;li&gt;Aux XPDays 2009 où je vais parler de &lt;a href="http://xpday.fr/programme#SoignerSaSchizophrenieProjetMOAMOEVoyageAutourDesExigencesFonctionnellesExecutables"&gt;la schizophrénie&lt;/a&gt; que l'on rencontre sur les projets informatiques et où avec Rémy on présentera un &lt;a href="http://xpday.fr/programme#CodingDojoUnRetourDExperience"&gt;Coding Dojo&lt;/a&gt; autour de ce que l'on a monté à Grenoble (&lt;a href="http://clubagile.org/evenements/coding-dojo/"&gt;Coding Dojo de Grenoble&lt;/a&gt;).&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Puis en juillet aux Universités du SI où je parlerai de &lt;a href="http://usi2009.universite-du-si.com/Emmanuel-Hugonnet-1-151.html"&gt;BDD et de communication entre MOA et MOE&lt;/a&gt;.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;Bon je retourne à mes slides :o)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://xpday.fr"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 230px; height: 104px;" src="http://xpday.fr/images/logo_230x104.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://usi2009.universite-du-si.com"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 91px; height: 113px;" src="http://www.universite-du-si.com/public/img/logo_usi.jpg" border="0" alt="" /&gt;&lt;/a&gt;</description><link>http://www.ehsavoie.com/2009/04/autopromotion-o.html</link><author>noreply@blogger.com (ehsavoie)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-1416564686716642323</guid><pubDate>Fri, 03 Apr 2009 07:35:00 +0000</pubDate><atom:updated>2009-04-03T10:32:11.119+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">présentation</category><category domain="http://www.blogger.com/atom/ns#">scrum</category><category domain="http://www.blogger.com/atom/ns#">tdd</category><category domain="http://www.blogger.com/atom/ns#">video</category><title>Scrum is XP without the Geekiness</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNDgi7YLOthseUcBwAcTy0MKwq93oALPTWfTBlkcv3BY7Z3y693IsrHBkGJPXsVATVj7Y4wLPEwS_dKykeWXXxkV6601d6rpxPywSnE-dtbpwO77TvOYOsqVJn5PgIHBqZY8mmBqeiEz0/s1600-h/i_woodworking.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 173px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNDgi7YLOthseUcBwAcTy0MKwq93oALPTWfTBlkcv3BY7Z3y693IsrHBkGJPXsVATVj7Y4wLPEwS_dKykeWXXxkV6601d6rpxPywSnE-dtbpwO77TvOYOsqVJn5PgIHBqZY8mmBqeiEz0/s200/i_woodworking.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5320380083142321138" /&gt;&lt;/a&gt;&lt;br /&gt;Ceux qui me lisent depuis quelques temps savent que je suis un grand fan d'&lt;a href="http://blog.objectmentor.com/articles/category/uncle-bobs-blatherings"&gt;UncleBob&lt;/a&gt; et de ses concepts de craftmanship.&lt;br /&gt;Aussi je cède au plaisir de vous faire découvrir cette vidéo prise à Chicago lors d'une réunion du groupe &lt;a href="http://chicagoalt.net/"&gt;Chicago ALT.NET&lt;/a&gt; local. Cette présentation intitulée &lt;span style="font-weight:bold;font-style:italic;"&gt;"XP: After 10 years, why are we still talking about it?"&lt;/span&gt;.&lt;br /&gt;Un peu de Scrum Bashing ;o) &lt;br /&gt;&lt;blockquote&gt;Scrum is XP without the Geekiness&lt;/blockquote&gt;&lt;br /&gt;mais pour en revenir aux fondamentaux : Scrum sans de bonnes pratiques de développement ne permet pas de s'en sortir. On s'en aperçoit tous les jours avec des équipes qui passent à Scrum sans mettre en place des pratiques de qualité pour le développement : TDD, Intégration Continue, Métriques, .... Toutes ces pratiques qui nous viennent d'XP en grande partie ;o)&lt;br /&gt;&lt;br /&gt;&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="437" height="370" id="viddler"&gt;&lt;param name="movie" value="http://www.viddler.com/player/ef4eb06a/" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;embed src="http://www.viddler.com/player/ef4eb06a/" width="437" height="370" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" name="viddler" &gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;La discussion qui a suivi la présentation a été aussi enregistrée :&lt;br /&gt;On y parle de TDD, de Programmation Fonctionnelle, bref c'est fort intéressant aussi :o)&lt;br /&gt;&lt;br /&gt;&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="437" height="333" id="viddler"&gt;&lt;param name="movie" value="http://www.viddler.com/player/1aab8707/" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;embed src="http://www.viddler.com/player/1aab8707/" width="437" height="333" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" name="viddler" &gt;&lt;/embed&gt;&lt;/object&gt;</description><link>http://www.ehsavoie.com/2009/04/scrum-is-xp-without-geekiness.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNDgi7YLOthseUcBwAcTy0MKwq93oALPTWfTBlkcv3BY7Z3y693IsrHBkGJPXsVATVj7Y4wLPEwS_dKykeWXXxkV6601d6rpxPywSnE-dtbpwO77TvOYOsqVJn5PgIHBqZY8mmBqeiEz0/s72-c/i_woodworking.jpg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-3766375869220299702</guid><pubDate>Tue, 31 Mar 2009 18:52:00 +0000</pubDate><atom:updated>2009-04-01T10:26:08.104+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">lean</category><category domain="http://www.blogger.com/atom/ns#">livres</category><title>Johnny Bunko - un manga Agile ?</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8qtnVqSLnICOB8BDJGlWxd8rvi7ysPUVraSGTGwo9CpAJiPo9aQXiS5w3ZwcK1ZTO2BMC_O3nRR4h_obxenEWMsaUtQI9DZYuVffnDkJxQnV2bBkF0_XRaPIwCjQOe6whsSTUCUOc2PQ/s1600-h/johnny-bunko.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 205px; height: 320px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8qtnVqSLnICOB8BDJGlWxd8rvi7ysPUVraSGTGwo9CpAJiPo9aQXiS5w3ZwcK1ZTO2BMC_O3nRR4h_obxenEWMsaUtQI9DZYuVffnDkJxQnV2bBkF0_XRaPIwCjQOe6whsSTUCUOc2PQ/s320/johnny-bunko.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5319461196042725730" /&gt;&lt;/a&gt;&lt;br /&gt;J'ai lu l'excellent &lt;span style="font-style:italic;"&gt;&lt;a href="http://www.johnnybunko.com/"&gt;Johnny Bunko: le seul guide de carrière dont vous avez besoin&lt;/a&gt;&lt;/span&gt;. Daniel H. Pink, auteur du célèbre &lt;span style="font-weight:bold;font-style:italic;"&gt;&lt;a href="http://www.amazon.com/Whole-New-Mind-Information-Conceptual/dp/1573223085"&gt;A Whole New Mind: Why Right-brainers Will Rule the Future&lt;/a&gt;&lt;/span&gt;, nous y donne les 6 clefs de la réussite :&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Les plans ça n'existe pas.&lt;/li&gt;&lt;li&gt;Pense tes forces, pas tes faiblesses.&lt;/li&gt;&lt;li&gt;L'important ce n'est pas toi.&lt;/li&gt;&lt;li&gt;La persévérance l'emporte sur le talent.&lt;/li&gt;&lt;li&gt;Fais des erreurs mais fais les biens.&lt;/li&gt;&lt;li&gt;Laisse ton empreinte.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;On y retrouve donc une partie des valeurs Agiles. &lt;br /&gt;Le premier chapitre nous explique qu'il est illusoire de vouloir suivre un plan et qu'il faut s'en cesse s'adapter. &lt;br /&gt;La troisième règle nous explique nous ne travaillons pas pour nous même mais pour satisfaire un client.&lt;br /&gt;L'erreur est acceptée, si elle permet d'avancer, ce qui n'est pas sans rappeler le "fail fast" du développement agile.&lt;br /&gt;L'humain reste au centre avec les trois autres règles puisqu'elles nous expliquent comment atteindre un certain épanouissement personnel.&lt;br /&gt;&lt;br /&gt;Si vous voulez lire les 61 premières pages (en anglais) suivez &lt;a href="http://www.mypaper.se/show/johnnybunko/show.asp?pid=345241358165554&amp;initPage="&gt;le guide&lt;/a&gt;.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Mise à jour suite au commentaire d'Alexandre:&lt;/span&gt;&lt;br /&gt;L'idée derrière tout ça est qu'il faut changer le monde. Tout le monde n'étant pas le Mahatma Gandhi, laisser son empreinte siginifie ici toucher et améliorer le monde autour de soi, à son échelle. &lt;br /&gt;&lt;br /&gt;Bref, un manga bien sympathique qui aborde de vraies questions sous un angle original et ludique.&lt;br /&gt;Pour vous mettre l'eau à la bouche, un petit trailer présentant le livre:&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/WtRNiMZsTro&amp;hl=fr&amp;fs=1&amp;color1=0x006699&amp;color2=0x54abd6"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/WtRNiMZsTro&amp;hl=fr&amp;fs=1&amp;color1=0x006699&amp;color2=0x54abd6" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;</description><link>http://www.ehsavoie.com/2009/03/johnny-bunko-un-manga-agile.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8qtnVqSLnICOB8BDJGlWxd8rvi7ysPUVraSGTGwo9CpAJiPo9aQXiS5w3ZwcK1ZTO2BMC_O3nRR4h_obxenEWMsaUtQI9DZYuVffnDkJxQnV2bBkF0_XRaPIwCjQOe6whsSTUCUOc2PQ/s72-c/johnny-bunko.jpg" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-5266618990138080322</guid><pubDate>Wed, 25 Mar 2009 08:25:00 +0000</pubDate><atom:updated>2009-03-25T09:38:01.840+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">atdd</category><category domain="http://www.blogger.com/atom/ns#">bdd</category><category domain="http://www.blogger.com/atom/ns#">tdd</category><title>Agile Testing</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvv8UyysdiZ0KhjCZdWPKp0f2JYzDZdsKlNkfXPPlDjraGmd6VhENiob314id_Ib-gcxUF5vpy3Euh511JB7IpXUCqv_XRcjv7YGI_ZurLXNaHeIc1bf7fT5MA-wkwqJa0ub4LOriAeHs/s1600-h/tocertsm1.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 238px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvv8UyysdiZ0KhjCZdWPKp0f2JYzDZdsKlNkfXPPlDjraGmd6VhENiob314id_Ib-gcxUF5vpy3Euh511JB7IpXUCqv_XRcjv7YGI_ZurLXNaHeIc1bf7fT5MA-wkwqJa0ub4LOriAeHs/s320/tocertsm1.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5317040701946012194" /&gt;&lt;/a&gt;&lt;br /&gt;Ce vendredi j'ai eu la chance de participer à un cours donné par &lt;a href="http://www.qualitytree.com/company/elisabeth/"&gt;Elisabeth Hendrickson&lt;/a&gt; sur ATDD. J'ai connu Elisabeth à travers &lt;a href="http://www.youtube.com/watch?v=bqrOnIECCSg"&gt;sa vidéo chez Google&lt;/a&gt; et &lt;a href="http://testobsessed.com"&gt;son blog&lt;/a&gt;. Venant du monde des testeurs et de la qualité elle apporte une nouvelle vision de l'agilité et réconcilie mon âme de développeur avec le monde du test.&lt;br /&gt;Ce vendredi donc, nous étions 6 (un français, un danois, une indienne et deux anglais) pour un cours par internet avec webcam. Une fois tous les réglages effectués nous voilà embarqués pour un voyage dans le monde de l'ATDD. &lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY6MZRpEfOZmUppnEd-xA8XbMkxSKqpl7PQ3zudBS871JiKysPcfghg0qVQda0o0bvc0mo3Mr-9Eaz3afWPjwM348doNiAKYJRxWboFA6ES0eLFbutlnvWg7S2wgI8vFGtEpI-m3X2akw/s1600-h/atdd.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 347px; height: 327px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY6MZRpEfOZmUppnEd-xA8XbMkxSKqpl7PQ3zudBS871JiKysPcfghg0qVQda0o0bvc0mo3Mr-9Eaz3afWPjwM348doNiAKYJRxWboFA6ES0eLFbutlnvWg7S2wgI8vFGtEpI-m3X2akw/s400/atdd.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5317040459586662242" /&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;L'un fut désigné " responsable du produit ", et nous avons commencé à définir notre histoire d'utilisateur et les différents éléments qui allaient nous permettre de la considérer comme " faite ". C'est la partie " discuss " de l'ATDD (ou les ateliers de spécification selon &lt;a href="http://gojko.net/"&gt;Gojko Adzik&lt;/a&gt;).&lt;br /&gt;Puis nous sommes passés à l'étape " distill ", dans laquelle nous avons transposé le résultat de notre discussion dans une page HTML pour l'outil &lt;a href="http://robotframework.org"&gt;RobotFramework&lt;/a&gt;. Je dis nous car le cours n'était pas directif et nous pouvions facilement prendre le contrôle de la page pour écrire nos scénarii.&lt;br /&gt;Enfin une fois cette étape réalisée, nous avons pu développer en étant dirigés par nos tests d'acceptance : comme aucun tests d'acceptance n'était écrit nous avons commencé par écrire le premier, puis une fois cela fait, comme pour du TDD, nous étions avec un test au rouge. Il nous a fallu commencer à écrire notre code. Comme nous sommes des développeurs consciencieux nous avons pris une approche TDD justement. Une fois que les tests unitaires sont passés au vert, nous avons vérifié que le test d'acceptance changeait lui aussi de couleur. Nous pouvions passer au test d'acceptance suivant. On se retrouve dans le cercle classique du &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWc4as95yrPa45aqf9nEmJa2bndn3TxT6AhixJAKZNBizRw5IKZ45XOtPJJp2511yJiiGB3vf8V4UaEC399Q8Xpa_U3AbXV2eL8lgPK1xxkdAm5ql1sQnXwbegTFvfR6mRcJJhyphenhyphenNXwnB8/s1600-h/rgr.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 176px; height: 18px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWc4as95yrPa45aqf9nEmJa2bndn3TxT6AhixJAKZNBizRw5IKZ45XOtPJJp2511yJiiGB3vf8V4UaEC399Q8Xpa_U3AbXV2eL8lgPK1xxkdAm5ql1sQnXwbegTFvfR6mRcJJhyphenhyphenNXwnB8/s200/rgr.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5317041334238084418" /&gt;&lt;/a&gt;.&lt;br /&gt;Premières impressions sur ce cours en ligne.&lt;br /&gt;Mise à part quelques soucis techniques, essentiellement sur le son dont le niveau changeait complètement d'un intervenant à l'autre, c'était vraiment très agréable. Elisabeth est une personne très dynamique et enthousiaste ce qui a permis de compenser l'aspect distribué des participants.&lt;br /&gt;Sur le fond c'était vraiment super, en deux heures on a pu voir un cycle complet d'ATDD sur l'outil Robotframework. En tant que développeur je me suis vite senti à l'aise dans ce cycle de part sa proximité avec le TDD. J'ai pu voir la valeur ajoutée des tests exploratoires puisqu'en quelques minutes les testeurs purs ont réussi à mettre notre système à mal.&lt;br /&gt;&lt;br /&gt;J'espère partager cette expérience enrichissante lors d'un futur kata au &lt;a href="http://clubagile.org/evenements/coding-dojo/"&gt;Coding Dojo de Grenoble&lt;/a&gt;.</description><link>http://www.ehsavoie.com/2009/03/agile-testing.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvv8UyysdiZ0KhjCZdWPKp0f2JYzDZdsKlNkfXPPlDjraGmd6VhENiob314id_Ib-gcxUF5vpy3Euh511JB7IpXUCqv_XRcjv7YGI_ZurLXNaHeIc1bf7fT5MA-wkwqJa0ub4LOriAeHs/s72-c/tocertsm1.jpg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2323508953859629798.post-7050887431369844432</guid><pubDate>Fri, 13 Mar 2009 15:26:00 +0000</pubDate><atom:updated>2009-03-21T17:17:23.062+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">java</category><title>Le prix Turing 2008 pour Barbara Liskov</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmo3tSfIfMByn4304PecQAu0aSKaQCKTX8AHqZIcYFPAxQtOLXqWizq18QyZVoBxTS-tnInuqnWZy4Fn-Cu2ZcD51MBjtEEmxz8bjFVAN6kUAT5X18gX2qY9FmPgctNiu0MeK9ChUGxxI/s1600-h/GoldPrizeAMT.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 198px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmo3tSfIfMByn4304PecQAu0aSKaQCKTX8AHqZIcYFPAxQtOLXqWizq18QyZVoBxTS-tnInuqnWZy4Fn-Cu2ZcD51MBjtEEmxz8bjFVAN6kUAT5X18gX2qY9FmPgctNiu0MeK9ChUGxxI/s200/GoldPrizeAMT.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5312696475822117762" /&gt;&lt;/a&gt;&lt;br /&gt;Félicitations à Mme Liskov célèbre pour le principe de programmation objet qui porte son nom publié en 1987 :&lt;br/&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;If for each object o1 of type S there is an object o2 of type T such that for all programs P defined in terms of T, the behavior of P is unchanged when o1 is substituted for o2, then S is a subtype of T.&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Voici la nouvelle originale en français publiée sur &lt;a href="http://linuxfr.org//2009/03/12/25151.html"&gt;Linuxfr.org&lt;/a&gt;.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://fr.wikipedia.org/wiki/Principe_de_substitution_de_Liskov"&gt;Le principe de substitution de Liskov&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://blog.objectmentor.com/articles/2008/09/06/the-liskov-substitution-principle-for-duck-typed-languages"&gt;The Liskov Substitution Principle for "Duck-Typed" Languages&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;</description><link>http://www.ehsavoie.com/2009/03/le-prix-turing-2008-pour-barbara-liskov.html</link><author>noreply@blogger.com (ehsavoie)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmo3tSfIfMByn4304PecQAu0aSKaQCKTX8AHqZIcYFPAxQtOLXqWizq18QyZVoBxTS-tnInuqnWZy4Fn-Cu2ZcD51MBjtEEmxz8bjFVAN6kUAT5X18gX2qY9FmPgctNiu0MeK9ChUGxxI/s72-c/GoldPrizeAMT.jpg" width="72"/><thr:total>0</thr:total></item></channel></rss>