Fabien Bézagutag:fabien.bezagu.free.fr,2024:/index.php2013-10-09T15:57:10+02:00DotCleardaily12013-10-09T15:57:10+02:00Claviers et dispositions2013-10-09T15:57:10+02:00tag:fabien.bezagu.free.fr,2013-10-09:/41Fabien BezaguAu boulot, je passe souvent pour un extraterrestre. La raison ? J'ai un clavier différent. J'entends donc souvent les questions suivantes :
— « Qu'est-ce qu'il a de mieux ton clavier ? »
— « Ah oui, je connais, c'est un clavier BÉPO, c'est ça ? »... <p>Au boulot, je passe souvent pour un extraterrestre. La raison ? J'ai un clavier différent. J'entends donc souvent les questions suivantes :<br /></p>
<p>— « Qu'est-ce qu'il a de mieux ton clavier ? »<br />
— « Ah oui, je connais, c'est un clavier BÉPO, c'est ça ? »<br />
— « Il existe en QWERTY/AZERTY/BOUZANBA… ? »<br />
— « C'est bien pour programmer ton clavier ? »<br /></p>
<p>Je pars donc généralement dans de grandes explications — ce qui ne déplaît pas — mais j'ai parfois le sentiment de beaucoup me répéter et d'en oublier en route. Je m'adresse donc en tout premier lieu à toi, cher collègue, que je viens d'envoyer lapidairement sur ce billet ;-) Je reste bien entendu ouvert aux questions.</p>
<h3>Un clavier est un clavier</h3>
<p><img src="http://fabien.bezagu.free.fr/images/Clavier blank.jpg" alt="" /></p>
<p>Tout d'abord, je tiens à corriger une erreur très fréquente. Un clavier AZERTY n'existe pas. Un clavier BÉPO n'existe pas. Un clavier QWERTY n'existe pas. C'est clair ou je continue ? Comme dirais nos amis anglais : un clavier est un clavier est un clavier.
Tout ce que fais un clavier, c'est envoyer un code technique indiquant la touche qui vient d'être appuyée. Par exemple, la touche la plus à gauche de la première rangée a le code <AD01> sous Linux. Ce code n'a rien à voir avec ce qu'il peut être imprimé sur cette touche par votre fabricant. Qui n'a jamais appuyé sur cette touche en espérant voir un « A » apparaître et voir un « Q » s'afficher ?</p>
<p>Ok, un clavier est un clavier. Mais il y a bien des différences non ? Bien sûr. L'impact, le ressort des touches, le toucher, l'emplacement des touches sur le clavier, la largeur, hauteur, etc. sont autant de critères permettant de choisir son clavier. C'est vrai que le mien est « différent » :</p>
<p><img src="http://fabien.bezagu.free.fr/images/2030-blank-s.png" alt="" /></p>
<p>Sans entrer dans le détail ni le discours commercial, ses avantages sont :</p>
<ul>
<li>petite largeur pour plus de place pour la souris</li>
<li>petite hauteur et pas d'inclinaison pour éviter aux poignets d'être cassés</li>
<li>alignement orthogonal</li>
<li>touches Entrée et Effacement au centre</li>
</ul>
<p>Pour plus d'info, c'est un <a href="http://www.typematrix.com/">TypeMatrix</a>.</p>
<h3>Dispositions</h3>
<p>Une fois le clavier branché, il faut dire au système d'exploitation quelle disposition utiliser. Une disposition n'est ni plus ni moins qu'un tableau associatif entre code de touche et lettre à afficher :</p>
<ul>
<li><AD01> -> A</li>
<li><AD02> -> Z</li>
<li><AD03> -> E</li>
<li>…</li>
</ul>
<p>La disposition la plus répandue en France est l'AZERTY. C'est une version adaptée du QWERTY mais je vous laisse lire cette petite BD pour connaître son histoire : <a href="http://www.dvzine.org/">http://www.dvzine.org/</a>.
Des alternatives existent, notamment la disposition <a href="http://bepo.fr">BÉPO</a> dont le but est de dresser une carte plus adaptée pour une langue ou une utilisation précise.</p>
<p><img src="http://fabien.bezagu.free.fr/images/Carte-bepo-complete-s.png" alt="" /></p>
<p>Si vous m'avez bien suivi jusque là, vous avez compris que le clavier que vous avez sous les yeux peut tout à fait vous servir à taper avec la disposition BÉPO ! Génial non ?</p>
<p>Personnellement, j'ai réappris à taper sur un clavier en 2008 en utilisant la disposition BÉPO et le TypeMatrix en photo plus haut.</p>
<h3>Et la programmation ?</h3>
<p>Oui, question récurrente : « Est-ce que la disposition BÉPO est adaptée pour programmer ? ».</p>
<p>Réponse courte : est-ce qu'AZERTY est adapté pour programmer ? Et QWERTY ?</p>
<p>Je n'ai pas de certitude dans ce domaine. Je ne suis pas certain de voir les avantages de rester en AZERTY dans ce domaine spécifique. Quelques développeurs jurent qu'il faut passer au QWERTY. Les IDE et les langages de programmation ont été créés avec QWERTY en tête, j'en suis convaincu. Cela veut dire que les caractères spéciaux et les raccourcis seront peut-être un peu plus accessibles avec cette disposition.
Ce que je sais également, c'est que le projet BÉPO est né d'un milieu plutôt geek composé de nombreux développeurs qui ont pris en compte ces besoins particuliers. Je ne dis pas que c'est la panacée mais je trouve l'accès à plusieurs caractères que j'utilise souvent très pratique ({, }, (, ), [, ], ~, \, |, etc.)</p>
<h3>Conclusion</h3>
<p>J'espère que maintenant vous saurez bien faire la différence entre clavier et disposition. Le site <a href="http://bepo.fr">http://bepo.fr</a> est un point d'entrée d'une richesse incroyable pour découvrir ces aspects trop méconnus de l'ergonomie du poste de travail. Pour finir, mon conseil : quelle que soit votre disposition, apprenez à taper en aveugle !</p>JUG Summer Camp 20102010-06-21T09:40:11+02:00tag:fabien.bezagu.free.fr,2010-06-21:/40Fabien BezaguLe vendredi 10 septembre prochain se tiendra une journée de conférences à La Rochelle : le JUG Summer Camp. Je pense que j'y serai rien que pour le plaisir de revoir mes anciens collègues de Serli, une des rares société à m'avoir laissé un souvenir positif et que j'ai quitté avec regret. Serli... <p>Le vendredi 10 septembre prochain se tiendra une journée de conférences à La Rochelle : le <a href="http://www.jugsummercamp.org/" hreflang="fr">JUG Summer Camp</a>. Je pense que j'y serai rien que pour le plaisir de revoir mes anciens collègues de <a href="http://www.serli.com" hreflang="fr">Serli</a>, une des rares société à m'avoir laissé un souvenir positif et que j'ai quitté avec regret. Serli est sponsor principal de l'évènement.</p>Conférence Agile France 20102010-06-03T20:17:03+02:00tag:fabien.bezagu.free.fr,2010-06-03:/39Fabien BezaguLundi et mardi dernier se tenait la Conférence Agile France 2010. Mon but dans ce billet, cher lecteur, est de ne pas te faire perdre ton temps. Je vais donc partir du postulat que tu ne veux pas savoir tout ce qu'il s'est dit, mais ce que j'ai pensé et retenu des sessions auxquelles j'ai assisté.... <p>Lundi et mardi dernier se tenait la Conférence Agile France 2010. Mon but dans ce billet, cher lecteur, est de ne pas te faire perdre ton temps. Je vais donc partir du postulat que tu ne veux pas savoir tout ce qu'il s'est dit, mais ce que j'ai pensé et retenu des sessions auxquelles j'ai assisté. Tout ceci se fera donc en toute subjectivité.</p>
<h4>PNL (Programmation Neuro Linguistique) - Bruno Sbille</h4>
<p>Le triangle dramatique, composé de la victime, du sauveur et du persécuteur, est intérressant. J'y ai retrouvé plusieurs situations familières. Les points à retenir, c'est qu'on peut tour à tour endosser plusieurs de ces tempéraments et que, quoi qu'il arrive, ils sont tous à bannir d'une équipe, même le sauveur.</p>
<h4>DDD (Domain Driven Design) - François Wauquier et Nicolas Martignole</h4>
<p>Mon but était essentiellement de préparer une présentation similaire à l'Agile Tour Bordeaux. Je pense qu'ils sont allés un peu trop loin en voulant parler des patterns stratégiques et qu'ils n'ont pas assez creusé les points de recouvrement avec XP. Mon sentiment est donc mitigé sur cette présentation.</p>
<h4>Commencer petit pour finir grand : l'art de la construction incrémentale - Étienne Charignon</h4>
<p>J'ai beaucoup apprécié cette session présentée avec humour et fébrilité. Des dessins des enfants d'Étienne apportaient notamment une touche humaine.</p>
<p><img src="http://fabien.bezagu.free.fr/images/patate.JPG" alt="" /></p>
<p>Il a introduit le concept des abstractions qui fuient. Le terme "fuir" est une traduction de leaky mais il a aussi pensé à "transpirer", que j'aime bien, parce que la transpiration, ça pue. L'idée est que les abstractions posent parfois problème car on doit se préoccuper de ce qui est derrière. Enfin c'est ce que j'ai compris. Ce que je ne suis pas certain d'avoir compris, c'est le rapport avec la conception incrémentale. Mais c'était bien. J'ai aussi retenu qu'on devait se satisfaire de son niveau de connaissance de confort. À défaut, on se retrouve très vite dépassé.</p>
<h4>10 leçons apprises en rétrospectives - Stéphane Hanser et Emmanuel Gaillot</h4>
<p>C'était une piqure de rappel bienvenue sur l'importance des fondamentaux. Les plus importants selon moi :</p>
<ul>
<li>avoir un processus stable permet d'expérimenter,</li>
<li>il est très important de clarifier les positions de l'équipe sur des sujets polémiques qui se transforment régulièrement en bataille rangée entre deux protagonistes virulents,</li>
<li>il faut garder des tests automatisés légers, quitte à mocker ou sortir les tests d'intégration,</li>
<li>afficher une ou deux pistes d'amélioration par itération,</li>
<li>rester volontairement vocalisé, notamment en diminuant les blagues et autres digressions au moment des rétros et des démos,</li>
<li>intégrer le remboursement de la dette au processus de développement,</li>
</ul>
<h4>Agilité sous contraintes - David Brocard</h4>
<p>Je passe. Rien à retirer.</p>
<h4>Kata Robozzle en Haskell - Emmanuel Gaillot</h4>
<p>Super moment passé à regarder Emmanuel développer ce kata. Propre, sans bavure. Je ne connaissais pas du tout Haskell et je ne me suis pas senti perdu un instant.</p>
<h4>Self-help for Self-Organising Teams - Esther Derby</h4>
<p>Je ne suis pas sûr d'avoir pu retirer tout ce que je pouvais de cette keynote car elle était en anglais, et c'est chaud de rester concentré. J'ai retenu que les équipes heureuses l'étaient toutes la même façon (petite, approche commune, humaines...) tandis que les équipes malheureuses l'étaient chacune à leur façon. Dans ces dernières, on retrouve souvent des schémas répétitifs qu'il faut casser et le premier endroit où commencer, c'est soi-même.</p>
<h4>Satisfaire complètement son client avec le Problem Driven Development - Régis Médina</h4>
<p>Comment résumer une heure de pur plaisir ? Allez, je me lance.
Les méthodes agiles, c'est mieux que le cycle en V MAIS, il faut, en plus de faire un logiciel qui fonctionne, faire un logiciel qui satisfait le client. Il ne faut donc pas faire littéralement ce que dit le client, sinon on fait une usine à gaz. Une première idée intéressante est donc de demander à son client, pour chaque histoire livrée 1) si elle est conforme à sa demande et 2) si elle le satisfait. Attendons-nous à des surprises.
Le métier du client n'est pas le développement et il est donc de notre ressort de pouvoir le conseiller et de lui apporter des solutions à son problème. C'est le principe du Problem Driven Development (PDD) : résoudre complètement le problème du client. Pour cela deux principes :</p>
<ul>
<li>PDCA,</li>
<li>le gemba : réflexe d'aller voir dans les faits.</li>
</ul>
<p>Il est important de savoir ce que veut réellement le client. D'une manière générale, il ne veut pas qu'on lui fasse perdre son temps (muda) et que la solution qu'on lui apporte lui permette de réduire son lead-time (temps d'utilisation du système pour un problème donné). Il faut que ce temps soit le plus court possible : "No service is good service". Finalement, il y a un déplacement de l'approche "on ajoute de la valeur" à "on résoud efficacement son problème".
Régis a ensuite longuement parlé de l'importance de mesurer, de voir, de constater par soi-même grâce à des tests d'utilisabilité. Tout cela m'a rappelé les propos de Steve Krug dans "Je ne veux pas chercher".
Enfin, il nous a parlé des deux malédictions qui pesaient sur nous, pauvres développeurs :</p>
<ul>
<li>malédiction de la connaissance : nous connaissons trop bien notre système pour nous mettre à la portée de ses utilisateurs,</li>
<li>mélédiction de l'ignorance : nous ne connaissons pas assez bien le problème de l'utilisateur.</li>
</ul>
<p>Bravo Régis, super présentation.</p>
<h4>Consensus workshop - Thi Lan Huong Le</h4>
<p>Il s'agissait d'un atelier pendant lequel nous avons mis en oeuvre une méthode pour répondre à une question très ouverte. Je résiste pas à l'envie de mettre une image qui résume la méthode :</p>
<p><img src="http://fabien.bezagu.free.fr/images/consensus.JPG" alt="" /></p>
<p>Le consensus reste cependant assez frustrant sur un plan individuel même s'il faut reconnaître l'efficacité pour obtenir une réponse...consensuelle.</p>
<h4>Le modèle d'acquisition des compétences de Dreyfus - Emmanuel Hugonnet</h4>
<p>J'ai retenu la définition de cinq profils : le novice, le débutant avancé, le compétent, l'efficace et l'expert. Tout cela était présenté autour d'une métaphore sur la conduite automobile. Emmanuel a beaucoup insisté sur l'importance de ne pas forcer les experts à suivre des règles car cela est contre-productif pour eux qui fonctionnent à l'instinct et qui doivent pouvoir casser les limites pour innover.</p>
<h4>Réussir ses projets à coûts, délais, périmètres et qualité fixes - Bernard Notarianni</h4>
<p>Quand on prône un changement fort, ça grince. Bernard a voulu une session dynamique en laissant la parole à qui voulait la prendre. Et les débats ont fusé. La solution qu'il propose est très intérressante : le client fixe le délai et le coût, les développeurs définissent le périmètre et la qualité qui, évidemment, est au maximum. Le prérequis pour que ça marche est que les développeurs soient en contact avec le client. Le problème, c'est qu'on ne peut prendre n'importe quel développeur pour ça.
Une des idées que j'ai trouvé pertinente, c'est que les développeurs peuvent, s'ils ont besoin, s'adresser à une équipe d'expert métier qui n'est pas en frontal avec le client et qui vient donc en support des développeurs. Le client n'est en effet pas forcément un expert du métier.</p>
<h4>Conclusion</h4>
<p>Ces deux journées ont été intensives mais valaient le coup. Pour résumer, je retiens trois leçons :</p>
<ul>
<li>les agilistes renommés sont des valeurs sûres,</li>
<li>je vais m'intéresser au lean prochainement,</li>
<li>je me ferai quelques katas en programmation focntionnelle, juste pour voir (haskell ? clojure ? ocaml ?).</li>
</ul>ROA et DDD2009-11-19T15:48:54+01:00tag:fabien.bezagu.free.fr,2009-11-19:/38Fabien BezaguL'histoire retient des couples légendaires : Roméo et Juliette, Bonnie and Clyde, le pâté et le saucisson... Je suis aujourd'hui convaincu que ROA et DDD ont leur place parmi ces couples légendaires.
Parmi les livres que j'ai lus cette année, c'est indiscutablement RESTful Web Services qui... <p>L'histoire retient des couples légendaires : Roméo et Juliette, Bonnie and Clyde, le pâté et le saucisson... Je suis aujourd'hui convaincu que ROA et DDD ont leur place parmi ces couples légendaires.</p>
<p>Parmi les livres que j'ai lus cette année, c'est indiscutablement <a href="http://www.amazon.fr/Restful-Web-Services-Leonard-Richardson/dp/0596529260" hreflang="fr">RESTful Web Services</a> qui m'a le plus apporté. En deux mots, puisque ce n'est pas le sujet de ce billet, ce livre prône la simplicité en montrant que HTTP est suffisant pour créer des services web puissants sans ajouter de complexité inutile. Il introduit également Resource Oriented Architecture (ROA) qui est une approche pour créer des services web <a href="http://fr.wikipedia.org/wiki/Rest" hreflang="fr">RESTful</a> en mettant les ressources au coeur de l'architecture.</p>
<p>Plus je m'imprègne de ROA, plus je suis frappé par les parallèles qu'il est possible de faire avec DDD.</p>
<h3>Des objets, encore des objets</h3>
<p>Avec une conception orientée par le domaine (<a href="http://www.dddfrance.org" hreflang="fr">DDD</a>), le paradigme objet est totalement utilisé. On pousse au maximum l'imbrication des données et des méthodes qui travaillent sur ces données. On cherche à modéliser le métier au travers de design patterns adaptés (stratégie, spécification, composite...). A contrario, les services (un objet qui fait plutôt qu'un objet qui est) doivent être utilisés avec parcimonie.</p>
<p>Il en est de même avec ROA. Cette approche s'oppose en effet à un style Remote Procedure Call (RPC) à la façon de SOAP, Corba et les autres. La procédure <em>fait</em> quelque chose et je me permet de citer le livre :</p>
<blockquote><p><em>A resource</em> is <em>something, so I take an object-oriented approach to designing resouces. In fact, the resource-oriented design strategy could be called "extreme object-oriented."</em></p></blockquote>
<p>Ah ! Qu'ils sonnent bien à mes oreilles ces deux termes mariés ensemble (je vous avais dit que je parlerai de couples légendaires).</p>
<p>Avec une architecture orientée services (<a href="http://fr.wikipedia.org/wiki/Architecture_orientée_services" hreflang="fr">SOA</a>), ce sont les procédures qui sont mises en avant et il est alors légitime de vouloir y associer une approche RPC comme les WS-* (manière de désigner les gros services web à base de <a href="http://fr.wikipedia.org/wiki/Web_Services_Description_Language" hreflang="fr">WSDL</a> et de <a href="http://fr.wikipedia.org/wiki/Simple_Object_Access_Protocol" hreflang="fr">SOAP</a>, qui n'a de simple que le nom).</p>
<p>ROA et DDD se marient parfaitement pour mettre en avant les entités et les objets du domaine.</p>
<h3>URI et identité</h3>
<p>En DDD, on reconnaît une entité car elle est identifiable. Deux entités différentes auront des identités différentes. HTTP s'appuie sur le même type de concept : l'identifiant uniforme de ressource (<a href="http://fr.wikipedia.org/wiki/Uniform_Resource_Identifier" hreflang="fr">URI</a>). Chaque ressource est ainsi identifiée de manière unique.</p>
<p>Il est également très important de ne pas confondre la ressource et son identifiant, pratique malheureusement largement répandu qui consiste par exemple à mélanger joyeusement la référence d'un client et le client lui-même. L'URI découle de la modélisation d'une ressource, pas l'inverse.</p>
<h3>Associations et connectivité</h3>
<p>Pour naviguer dans un graphe d'objets complexe, DDD incite à modéliser les relations qui existent entre les entités via des associations. Les entités sont connectées comme dans un grand réseau, oserai-je dire toile ? Ça y est j'ai osé ! La connectivité est ce qui a permis au Web de devenir aussi riche et populaire. Sans lien, chaque ressource serait condamné à vivre sa vie isolée des ressources qui lui sont voisines. Là encore DDD et ROA sont vraiment similaires.</p>
<h3>Conclusion</h3>
<p>Je n'ai fait qu'effleurer le sujet et je suis sûr qu'on peut trouver beaucoup d'autres similitudes entre ROA et DDD. Ces deux approches sont, à mon avis, très similaires et complémentaires. Elles sont basées sur la modélisation de la complexité tout en restant très simple. En parlant de simplicité, je ne résiste pas à l'envie de recopier la citation en préface du livre sus-cité :</p>
<blockquote><p><em>A complex system that works is invariably found to have evolved from a simple system that worked.</em><br />
John Gall, <em>Systematics</em></p></blockquote>Ne m'appelez plus Mister2009-09-09T15:03:12+02:00tag:fabien.bezagu.free.fr,2009-09-09:/36Fabien BezaguSous ce titre douteux, j'aimerais faire un petit rappel des règles et usage concernant la dénomination des personnes.
Régulièrement, je me retrouve dans des situations où je constate que les règles typographiques, de bienséance et légales ne sont pas respectées. Régulièrement, il m'arrive de faire... <p>Sous ce titre douteux, j'aimerais faire un petit rappel des règles et usage concernant la dénomination des personnes.</p>
<p>Régulièrement, je me retrouve dans des situations où je constate que les règles typographiques, de bienséance et légales ne sont pas respectées. Régulièrement, il m'arrive de faire aimablement (ou pas) remarquer ces erreurs, voire de me battre pour les faire corriger. Malheureusement, quasi systématiquement, on me répond la phrase que vous avez tous entendu : « Ahhh...C'est l'informatique !!! »... Y en a marre !</p>
<p>Comme je suis vaguement bien placé pour le savoir, derrière l'informatique, il y a des...informaticiens. Et pas n'importe lesquels : des développeurs. Donc, chers camarades développeurs, c'est à vous que j'adresse cette supplique : <strong>arrêtez de vous assoir sur les règles du français</strong> !</p>
<h3>Nom d'usage et nom de famille</h3>
<p>Je vais d'emblée tordre le cou à une croyance tenace : sauf cas exceptionnel, <strong>une personne ne change jamais de nom</strong>.</p>
<p>Il existe des usages qui permettent de porter un autre nom que celui qui nous a été transmis à la naissance :</p>
<ul>
<li>une femme mariée a le droit d'utiliser le nom de son mari ou l'accoler au sien,</li>
<li>une célébrité peut prendre un pseudonyme qu'elle utilisera au quotidien,</li>
<li>dans d'autres cas plus marginaux ou que je ne connais pas.</li>
</ul>
<p>Cependant, et malgré l'utilisation d'un nom d'usage, le nom de famille ne change jamais. Il existe deux types de nom :</p>
<ul>
<li>le nom de famille, celui qu'on a tous à la naissance,</li>
<li>le nom d'usage.</li>
</ul>
<p>Toute autre type de nom n'existe pas sur un plan juridique. Par exemple :</p>
<ul>
<li>nom de jeune fille</li>
<li>nom patronymique</li>
</ul>
<p>Le nom d'usage est un choix personnel et ne doit ni être imposé, ni être empêché. Pour l'anecdote, ma femme ne porte pas mon nom et je ne peux pas m'empêcher de vous relater cet échange surnaturel entre ma femme et une personne digne de François Pignon :</p>
<blockquote><p>« - Vous êtes mariée ?<br />
- Oui.<br />
- Quel est le nom de votre mari ?<br />
- Bézagu.<br />
- Votre nom c'est donc Bézagu, c'est ça ?<br />
- Non, c'est Grimaud.<br />
- Ah, vous n'êtes pas mariée alors !<br />
- ... »</p></blockquote>
<h3>Dans le bon ordre SVP</h3>
<p>Lorsqu'il est utilisé, le prénom doit être placé avant le nom de famille ou d'usage.</p>
<p>Comme le terme l'indique le <em>pré</em>nom vient avant le nom. Si des listes doivent être affichées dans l'ordre alphabétique des noms, cela ne pose pas de problème tant que cela n'a pas de répercussion sur des courriers qui pourraient par exemple être automatiquement générés.</p>
<h3>Ne m'appelez plus Mister</h3>
<p>Cette partie est la plus controversée et concerne l'usage de l'abréviation pour « Monsieur » <strong>« Mr »</strong> au lieu de <strong>« M. »</strong>. Comme le souligne l'<a href="http://fr.wikipedia.org/wiki/Monsieur_(formule_de_politesse)" hreflang="fr">article Wikipédia</a>, la recommandation <em>actuelle</em> est bien d'utiliser uniquement <strong>« M. »</strong>.</p>
<p>Il convient donc d'écrire : « M. Jean Dupont ».</p>
<h3>Majuscules et accents</h3>
<p>Seules les premières lettres du prénom et du nom doivent être en lettres capitales (j'ai d'ailleurs appris cela en écrivant ce billet donc ne me hurlez pas dessus si j'ai fait la faute par le passé, je ne la ferai plus).</p>
<p>Si une ou plusieurs de ces lettres prend un accent en minuscule, celui-ci ne doit pas être perdu avec le passage en majuscule.</p>
<p>Exemple : Éric Épée</p>
<p>Cela vaut également pour le « C cédille » : ç donne Ç.</p>
<h3>Conclusion</h3>
<p>Comme le dit un collègue, je suis un peu le Jean-Pierre Coffe de l'informatique. Tant pis. Mais si nous tous, développeur, pouvions faire un effort pour respecter ces quelques règles, on verrait peut-être moins souvent des âneries devant nos écrans et dans nos boîtes aux lettres.</p>Jouons à TDD2009-07-08T12:36:44+02:00tag:fabien.bezagu.free.fr,2009-07-08:/31Fabien BezaguVoici une façon ludique de s'entraîner à TDD, technique pas forcément évidente au premier abord.
Joueurs : 2
Âge : 7 à 77 ans
Genre : Collaboratif
Matériel : un ordinateur, xUnit et un langage au choix
Dans les règles qui suivent le joueur le moins expérimenté sera appelé... <p>Voici une façon ludique de s'entraîner à TDD, technique pas forcément évidente au premier abord.</p>
<ul>
<li>Joueurs : 2</li>
<li>Âge : 7 à 77 ans</li>
<li>Genre : Collaboratif</li>
<li>Matériel : un ordinateur, xUnit et un langage au choix</li>
</ul>
<p>Dans les règles qui suivent le joueur le moins expérimenté sera appelé Kevin et le joueur ayant un peu plus d'expérience, Yoda.</p>
<p>Déroulement de la partie :</p>
<ol>
<li>Kevin se fixe un objectif secret qu'il ne dévoile pas à Yoda,</li>
<li>Kevin écrit un test trés simple,</li>
<li>Yoda fait passer le test de la maniére la plus bête possible,</li>
<li>Kevin a alors le choix :
<ul>
<li>Il considère que son objectif est atteint et la partie est terminée,</li>
<li>Il complète son test avec une nouvelle assertion,</li>
<li>Il écrit un nouveau test.</li>
</ul></li>
<li>Si la partie n'est pas terminée, on revient à l'étape 3.</li>
</ol>
<p>Ce type de partie est très enrichissante et il n'y a ni vainqueur ni vaincu. Yoda veillera juste à calmer le jeu lorsqu'il sentira que Kevin commence à sérieusement s'énerver (ce qui ne manquera pas d'arriver) en lui rappelant que ce n'est qu'un jeu.</p>
<pre></pre>Campagne Anti "If"2009-07-08T12:32:44+02:00tag:fabien.bezagu.free.fr,2009-07-08:/33Fabien BezaguJ'aime pô les "if"s !... <p><a href="http://www.antiifcampaign.com" hreflang="en"><img src="http://www.antiifcampaign.com/_export/anti-if-campaign-ive-joined.gif" alt="I have joined Anti-IF Campaign" /></a></p>
<p>J'aime pô les "if"s !</p>Agile Tour à Bordeaux2009-05-11T09:50:18+02:00tag:fabien.bezagu.free.fr,2009-05-11:/30Fabien BezaguL'Agile Tour 2009 passera par Bordeaux !
Je fais partie du comité d'organisation et j'essaierai de relayer les informations donc restez à l'écoute. Si vous avez des questions, des suggestions ou envie de mettre la main à la pâte, n'hésitez pas à me contacter.... <p>L'Agile Tour 2009 passera par Bordeaux !</p>
<p>Je fais partie du comité d'organisation et j'essaierai de relayer les informations donc restez à l'écoute. Si vous avez des questions, des suggestions ou envie de mettre la main à la pâte, n'hésitez pas à me contacter.</p>Répliques matrixiennes2009-05-11T09:44:00+02:00tag:fabien.bezagu.free.fr,2009-05-11:/32Fabien BezaguJ'adore Matrix - le premier particulièrement - et il m'arrive souvent de lâcher une réplique de ce film culte lorsque je travaille. En ce moment, je prépare une présentation sur XP et il y a tellement de répliques utilisables qu'il faut que je me retienne (je me contenterai d'un Je ne peux que vous... <p>J'adore Matrix - le premier particulièrement - et il m'arrive souvent de lâcher une réplique de ce film culte lorsque je travaille. En ce moment, je prépare une présentation sur XP et il y a tellement de répliques utilisables qu'il faut que je me retienne (je me contenterai d'un <em><q>Je ne peux que vous montrer la porte. C'est à vous qu'il appartient de la franchir.</q></em>:-D). <a href="http://michaelborde.blogspot.com/2009/05/binome-et-proximite.html" hreflang="fr">Mon ami Michael semble être lui aussi friand de ce genre de référence</a>.</p>
<p>Je ne résiste donc pas au plaisir de partager avec mes gentils lecteurs ces merveilleuses répliques qui peuvent - plus ou moins, parfois moins que plus je l'admet - être transposées à l'agilité.</p>
<ul>
<li><em>I know why you're here. I know what you've been doing. I know why you hardly sleep, why you live alone, and why night after night, you sit at your computer. You're looking for him. I know, because I was once looking for the same thing. And when he found me, he told me I wasn't really looking for him. I was looking for an answer. It's the question that drives us. It's the question that brought you here. You know the question, just as I did.</em></li>
</ul>
<ul>
<li><em>You know that road. You know exactly where it ends. And I know that's not where you want to be.</em></li>
</ul>
<ul>
<li><em>Unfortunately, no one can be told what The Matrix is. You have to see it for yourself.</em></li>
</ul>
<ul>
<li><em>You take the blue pill, the story ends, you wake up in your bed and believe whatever you want to believe. You take the red pill, you stay in Wonderland, and I show you how deep the rabbit hole goes.</em></li>
</ul>
<ul>
<li><em>You have to let it all go. Fear, doubt, and disbelief. Free your mind.</em></li>
</ul>
<ul>
<li><em>I'm trying to free your mind. But I can only show you the door. You're the one that has to walk through it.</em></li>
</ul>
<ul>
<li><em>Everybody falls the first time, right ?</em></li>
</ul>
<ul>
<li><em>There is a difference between knowing the path and walking the path.</em></li>
</ul>
<ul>
<li><em>You have to understand that most of these people are not ready to be unplugged. And many of them are so inert, so hopelessly dependent on the system that they will fight to protect it.</em></li>
</ul>
<ul>
<li><em>Pay no attention to these hypocrites- to deny our own impulses is to deny the very thing that makes us human.</em></li>
</ul>
<ul>
<li><em>Do not try to bend the spoon; that's impossible. Instead only try to realize the truth: There is no spoon.</em><br />(s'applique plutôt à DDD, d'ailleurs je ne suis pas le seul à le penser : <a href="http://devlicio.us/blogs/casey/archive/2009/02/12/ddd-there-is-no-database.aspx" hreflang="en">DDD: There Is No Database</a></li>
</ul>
<ul>
<li><em>After nine years, you know what I realize? Ignorance is bliss.</em></li>
</ul>
<ul>
<li><em>I know you're out there. I can feel you now. I know that you're afraid. You're afraid of us. You're afraid of change. I don't know the future. I didn't come here to tell you how this is going to end. I came here to tell you how it's going to begin.</em></li>
</ul>Dvorak2009-04-14T12:21:49+02:00tag:fabien.bezagu.free.fr,2009-04-14:/29Fabien BezaguJe suis en train d'apprendre à taper en dvorak. Késako ? Pour faire court, il s'agit d'une disposition de clavier plus adaptée que l'azerty. Une petite bande-dessinée explique tout ça très bien : DVzine.
Un wiki en français très complet m'a permis de réellement me lancer et j'ai choisi... <p>Je suis en train d'apprendre à taper en dvorak. Késako ? Pour faire court, il s'agit d'une disposition de clavier plus adaptée que l'azerty. Une petite bande-dessinée explique tout ça très bien : <a href="http://dvzine.org/" hreflang="en">DVzine</a>.</p>
<p><a href="http://clavier-dvorak.org/wiki/Accueil" hreflang="fr">Un wiki en français</a> très complet m'a permis de réellement me lancer et j'ai choisi <a href="http://www.typematrix.com/bepo/" hreflang="fr">mon prochain clavier</a>.</p>
<p>Quel rapport avec l'agilité ? Tout ! Et en particulier :</p>
<ul>
<li>Amélioration continue,</li>
<li>Acceptation du changement,</li>
<li>Qualité de vie.</li>
</ul>
<p>PS : j'ai tapé ce billet en dvorak alors ne m'en voulez pas de ne pas être entré dans les détails :-D</p>