Note de lecture : Elasticsearch in Action, par Radu Gheorghe, Matthew Lee Hinman & Roy Russo

Note : 3 ; Aussi passionnant qu’un manuel de référence !

J’aime bien la série « in action » de chez Manning. On n’y trouve pas les œuvres du siècle, mais grâce à un processus et une discipline éditoriale très strictes, ils sont souvent très bons, plus rarement moyens et rarement dessous. Hélas, le présent ouvrage tombe dans cette dernière catégorie. Je voulais en savoir plus sur Elasticsearch, en comprendre le paradigme, l’architecture et les cas d’utilisation. Les 370 pages de l’ouvrage ont fait un travail médiocre à cet égard. Passé les 3, peut-être les 4 premiers chapitres, ce ne furent plus que litanies pénibles de fonctionnalités, des lignes de cUrl, avec ses Json en entrée et en sortie, le tout jusqu’au bord de l’étouffement. Faisons un (rapide tour de ces 11 chapitres.

Le texte est découpé en 2 parties. La première d’entre-elle contient la majeure partie du texte, c’est à dire 8 chapitres, soit près de 260 pages. Les 20 pages du 1er chapitre donnent une vue de haut niveau du produit, ainsi que des informations pour l’installation. Rien de bien concret, mais c’est agréable à lire. Le chapitre suivant consacre ses 30 pages à rentrer dans le dur : l’architecture et la gestion des clusters, mais aussi la gestion des documents, des index et des shards. Il s’agit probablement de mon chapitre préféré.

Presque 30 pages sont également dédiées au chapitre 3 : création, mise à jour et suppression des index. Si on commence quelque peu avec le « mode catalogue », on n’en souffre pas trop à cette étape, les explications restant claires, et puis on est au cœur du produit ! L’horizon s’assombrit plus avec le chapitre 4 et l’exploration des différentes recherches et des options. Beaucoup de requêtes et de Json, déjà…

Lire la suite

Note de lecture : The Cucumber for Java Book, par Seb Rose, Matt Wynne & Aslak Hellesoy

Note 7 ; Mieux qu’un simple livre sur l’outil !

Voilà un livre qui trainait depuis bien trop longtemps sur ma pile de livres à lire ! C’est une bonne surprise à plus d’un titre. D’abord parce qu’il aborde bien ce qu’il est sensé aborder, à savoir l’outil Cucumber. Il faut dire que l’un des auteurs, Aslak Hellesoy est l’un des comitters initiaux. Mais surtout parce qu’il aborde le sujet de la bonne façon, à savoir par son usage. Les auteurs s’efforcent ainsi de mettre l’accent sur l’expressivité des tests au fil des chapitres. L’ouvrage a même droit à un traitement de faveur, il est imprimé en couleur.

Au total, le texte compte 290 pages sur 6 chapitres. L’ensemble est structuré en 3 parties. La première d’entre-elle a trait aux fondamentaux de Cucumber et couvre 6 chapitres soit 115 pages. Le premier d’entre-eux est vraiment très succinct et donne juste quelques clés sur Gherkin (le langage d’expression de Cucumber) et la façon dont Cucumber l’interprète et sur la nature des tests d’acceptation. Les 18 pages du second chapitre vont directement dans le concret : comment écrire une feature et l’implémenter par l’exemple. Par contre le partie « build » est franchement bricolée. Il faudra attendre un moment pour voir les auteurs mettre cela dans Maven. Mais l’intro est bien réussie.

Le chapitre 3 est un approfondissement : on voit les éléments de syntaxe de Gherkin, à l’exception des tableaux. Il clarifie certainement les éléments d’écriture, mais c’est plutôt un chapitre de transition. Le chapitre suivant aborde un élément essentiel : la syntaxe d’expression régulière et surtout les groupes de capture. Très bon boulot !

Lire la suite

Note de lecture : Go in Action, par William Kennedy, Brian Ketelsen & Erik St. Martin

Note : 5 ; Une présentation du langage par des exemples clairement découpés et expliqués, mais à laquelle il manque une approche structurée et systématique.

C’est une chose claire en 2015 : Go est le langage qui monte. Difficile encore d’affirmer que c’est la star de demain, mais porté par Docker, le projet phare écrit avec ce langage, il a supplanté Scala mais la route reste longue pour faire la peau à Java !

Le présent ouvrage comporte 228 pages séparées en 9 chapitres et ne compte pas d’annexes. Le premier d’entre-eux ne compte que 8 chapitres et introduit tout en douceur les premiers principes du languages et nous gratifie du célèbre « hello, world ! ». Disons que c’est le tour de chauffe et il est sympa !

Les choses sérieuses commencent au chapitre 2, généreusement intitulé « quick start ». Il compte 29 pages et s’appuie copieusement sur un petit programme destiné à faire des recherches sur un feed RSS. Pour un début, on se prend la totale, avec lancement de fonctions asynchrones, mapping XML, for… range, multiples valeurs de retours, multiples objets, receivers, etc… On a déjà dans cet exemple quasiment tout ce que l’on va voir par la suite. Impossible évidemment de voir tout cela en détail, mais je concède les excellents efforts pour l’explication de texte. Bref un chapitre bien trop fouillis sinon indigeste.

Lire la suite

Note de lecture : Big Data, par Nathan Marz avec James Warren

Note : 4 ; Un apprentissage un peu rugueux de la Lambda architecture inventée par l’auteur.

Ce livre était assez attendu, car il faut dire que Nathan Marz est une figure du monde du Big Data, il est l’architecte du framework Storm (entre autre) et l’une des figures de l’architecture de Twitter où il a pu développer le concept de la Lambda Architecture. C’est d’ailleurs ainsi qu’aurait dû s’appeler le livre : Lambda Architecture ! Car il est exclusivement question de cela, le texte était découpé de manière à refléter la progression dans les couches de l’architecture. Les éléments importants de celle-ci ?

  • Requête = fonction (toutes les données) ; Ce point de vue, l’auteur ne cesse de le marteler au fil des pages.
  • Un système Big Data doit être immutable, c’est le seul moyen de le rendre résistant aux erreurs humaines et aux erreurs de traitement. Un système immutable permet de retraiter les données.
  • Le system Big Data est composé d’une « batch layer » qui donne des données juste, mais avec un temps de latence important, et d’une « speed layer » rapide mais donnant potentiellement des informations moins justes.

Lire la suite

Note de lecture : Real-World Kanban, par Mattias Skarin

Note : 4 ; Une matière finalement un peu légère issue de retours d’expérience

Voici un livre qui ne sera pas un trop gros investissement en temps : écrit par l’un des collègues (et occasionnel co-auteur) de Henrik Kniberg chez Crisp, ce texte ne compte que 110 pages !

Le cœur du texte est composé de 4 chapitres qui sont autant d’études de cas, qui couvrent les 95 pages de la partie principale de l’opuscule ! En plus de ces 4 chapitres, les 20 premières pages constituent une introduction aux nouveaux-venus. Le titre « you hold the keys of your future » est assez significatif du contenu. Les principes du Kanban y sont présentées très clairement, mais l’essentiel de ce chapitre tourne autour des mécanismes d’amélioration continue qui sont au cœur de la pensée Kanban (et de la pensée Lean par extension). Malgré l’avertissement de l’auteur signifiant que ce chapitre peut être sauté, je pense au contraire qu’il vaut le détour !

La première étude de cas occupe donc le chapitre 2. Avec plus de 30 pages, c’est le plus long chapitre du livre. Le thème de cette étude de cas « Enterprise Kanban : improve the full value chain » est un Kanban produit, partant de l’idée jusqu’à la mise en production. Mais ce n’est pas tant le Kanban lui-même que les changements de processus qu’il engendre qui sont le thème de cette partie, avec plus spécialement un focus sur le lead time et comment une organisation différente permet de réduire celui-ci de manière drastique. La lecture de ce chapitre présente quelque intérêt, mais pas autant que je m’y attendais.

Lire la suite

Note de lecture : Fifty Quick Ideas to Improve your Tests, par Gojko Adzic, David Evans & Tom Roden

Note : 7 ; D’excellents conseils dans la lignée du titre éponyme sur les user stories

Gojko Adzic et ses co-auteurs ont gardé la recette qui marche avec ce nouveau titre. Celui-ci ne compte que 117 pages, et comme le titre le suggère : 50 conseils chacun occupant 2 pages avec une illustration quelque peu décalée. Ces conseils sont répartis en 4 sections.

La première partie « generating testing ideas » regroupe 12 conseils. Je citerais en particulier parmi ceux-ci la « big picture view of quality », un pendant pour les tests de la pyramide de Maslow. Un concept bien plus intéressant que la classique pyramide des tests rassemblant des choux et des carottes ! Le « tap into your emotions » nous donne un truc de plus pour explorer les tests à construire. « monitor trends in log & console » est une excellente idée pour chercher des éléments à inspecter. Enfin le « mob your test sessions » est une nouvelle variante du workshop des 3 amis, étendu à plus de personne et qui ne se limite pas à l’écriture des cas de test !

Lire la suite

Note de lecture : Facilitating with Ease ! 3rd edition, par Ingrid Bens

Note : 7 ; Une véritable référence sur la facilitation de réunions !

Plus qu’un livre, c’est un support de cours ! Ou plus exactement, c’est les deux à la fois. Et sous un format inhabituel (à commencer par le « grand format » physique du livre), j’ai vraiment trouvé là un texte de référence sur la facilitation de réunions. Le tout en 227 pages sur 9 chapitres.

Le 1er chapitre est une introduction à la facilitation, pour mieux appréhender ce que l’on attends d’un facilitateur et quelle doit être sa posture. Les 36 pages de ce premier chapitre sont un raccourcis sur le reste de l’ouvrage et se terminent par un exercice d’auto-évaluation très bien fait.

Le second chapitre focalise sur la posture du facilitateur sur une douzaine de pages. Ce point qui avait été introduit au premier chapitre est ici développé : le facilitateur doit-il être interne ou externe ? Peut-il être un manager, avec une posture haute ? Quelle sont les challenges auxquels doit faire face le facilitateur ? Après avoir fait le tour de ces questions, cette notions un peu floue de posture acquiert une réalité plus tangible.

Lire la suite

Note de lecture : Software by Numbers, par Mark Denne & Jane Cleland-Huang

Note : 5 ; Des idées réellement intéressantes dans l’IFM. Mais un propos sec et qui manque de profondeur sur certains sujets.

J’avais déjà eu l’occasion de croiser des références à cet ouvrage, suffisamment pour me décider à le lire, ce qui a fini par arriver. La totalité de l’ouvrage s’appuie sur une démarche appelée IFM, pour « incrémental funding methodology ». Formalisée au début des années 2000, cette approche se dit s’adapter aussi bien à Unified Process qu’à une approche agile. Force est de constater qu’elle a toutefois plus d’affinité avec des approches agiles !

Le livre en lui-même n’en impose guère : il ne compte que 180 pages, structurées en 11 chapitres. Le premier chapitre reprend quelques éléments de la philosophie agile (n’oublions pas qu’elle n’était pas largement développée à l’époque) : délivrer de la valeur au plus tôt et écouter la voix du client. C’est aussi dans ce chapitre que l’auteur introduit un concept important : le MMF (Minimum Marketable Feature), ou le lot de fonctionnalités qu’il faut livrer afin d’acter un incrément de valeur pour le client.

La douzaine de pages du chapitre suivant introduit le second concept import : le « new ROI », qui est tout simplement une application de la valeur-temps (NPV) bien connue en finance. Et déjà les premières tables d’actualisation de valeur apparaissent.

Lire la suite

Note de lecture : Fifty Quick Ideas to Improve your User Stories, par Gojko Adzic & David Evans

Note : 7 ; De bonnes recettes, surtout pour le découpage des user stories

Les auteurs l’annoncent clairement dès le début : ceci n’est pas un livre pour le débutant. Il s’adresse à ceux qui ont déjà une connaissance et une compréhension de base de ce qu’est une user stories. Les 200 pages de l’ouvrage sont consacrées à solidifier cette connaissance et à améliorer le savoir-faire qui y est lié. Le tout en 5 parties et en, comme l’indique le titre, 50 idées ou principes. Je ne vais pas parler des 50 principes, ce serait fastidieux.

Chaque « idée » emprunte la même présentation. D’abord une introduction que l’on pourrait appeler « motivation ». Elle développe ce qu’il y a derrière le titre, le « pourquoi » de cette idée. Vient ensuite une section intitulée « key benefits », comme son nom l’indique elle met en exergue l’amélioration apportée par cette pratique ou le travers qu’elle évite. Enfin, la 3ème partie est consacrée au « how to make it works », c’est à dire le mode d’emploi.

La première partie est dédiée à la création de User Stories. Ce sont 8 idées sur environ 35 pages qui constituent celle-ci. On retrouve quelques idées qui font leur chemin aujourd’hui comme les « 3 C » de Ron Jeffries ou les 3 questions de Jeff Patton plutôt que le template de Mike Cohn qui perd son aura de jour en jour. Mon « take away » de cette partie est certainement la notion de sphère de contrôle liée à la sphère d’influence qui est le thème de l’idée n° 7.

Lire la suite

Note de lecture : Explore It ! par Elisabeth Hendrickson

Note : 9 ; L’approche agile appliquée aux tests exploratoires : brillamment et efficacement exposé par une pionnière de l’agilité !

Me voilà réconcilié avec les tests exploratoires ! Les fameux tests du 4ème quadrant du framework de Brian Marrick, ceux qui servent à critiquer le produit « après coup » ! Il est vrai qu’Elisabeth Hendrickson n’est pas n’importe qui. Et force est d’avouer que les 150 pages de cet ouvrage couvrent bien la question et donnent des réponses efficaces à mes doutes.

Le texte est découpé en 13 chapitres regroupés en 3 parties. La première d’entre-elles « Establishing Foundations » comprend les 5 premiers et compte 55 pages. Le premier d’entre-eux traite sur 6 pages le plaidoyer pour le test exploratoire que l’auteur considère complémentaire à l’exploration.

Le second chapitre est sans doute le plus important du livre car il présente « l’exploration charter » qui est au test exploratoire ce que la User Story est à la spécification agile ! L’auteur y présente de manière claire et détaillée comment créer des charters à la fois focalisés mais gardant assez de liberté pour permettre l’exploration. 13 pages très bien utilisées.

Lire la suite