Note de lecture : The Phoenix Project, par Gene Kim, Kevin Behr & George Spafford

Note : 7 ; Une histoire autour des principes Lean et Devops, dans la veine de « The Goal » d’Eli Goldratt.

Un hasard bienheureux m’a fait lire ce livre dans la foulée de « Turn The Ship Around ! ». Ce livre, c’est l’histoire de Bill. Bill hérite d’un poste de manager dont il ne veut pas, celui de VP des opérations. Ce livre est donc un roman, plutôt bien écrit qui plus est. Il amène Bill d’un poste de manager dont il n’a pas voulu à celui de « chief operation officier », conseillé en pointillé par Erik, qui deviendra son mentor.

Le style narratif, les personnages et le fil de l’histoire ne sont pas sans rappeler « The Goal » d’Eli Goldrath. Les auteurs ne s’en cachent guère, et le texte n’est pas un plagiat pour autant, car ce sont d’autres savoirs et d’autres découvertes vers lesquelles veulent nous emporter les auteurs.

Parmi les idées fortes du livre, il y a les « 3 voies » :

  1. Comment créer un flux de travail rapide.
  2. Raccourcir et amplifier la boucle de feedback, pour fixer la qualité à la source.
  3. Créer une culture de l’expérimentation et de l’apprentissage.

Lire la suite

Publicités

Note de lecture : Turn the Ship Around !, par L. David Marquet

Note 10 ; Eclairé, passionnant et inspirant ! Book of the year 2016 !

Encore un livre qui prenait benoitement la poussière sur une de mes étagères, attendant de propices vacances pour être enfin lu. Eh oui, j’ai attendu 3 ans pour un livre qui méritait d’être dévoré aussitôt ! Cet ouvrage est assez atypique, non seulement parce qu’il a été écrit par un militaire, un commandant de sous-marin nucléaire, mais parce qu’il associe le narratif de la préparation au déploiement du sous marin avec les principes de leadership que veut promouvoir l’auteur.

David Marquet nous invite à découvrir un nouveau type de Leadership : celui dont l’objectif est de faire émerger d’autres leaders, plutôt que de conduire des suiveurs. Pour David Marquet, tout a commencé à bord de l’USS Sunfish quand son commandant lui a suggéré d’exprimer son intension et l’a laissé l’expérimenter. C’est cette demi-heure qui deviendra la source de son inspiration pour une nouvelle aventure : une façon radicalement nouvelle d’appréhender le commandement de son sous-marin, l’USS Santa Fé.

Ce livre est une histoire, celle de la préparation au déploiement du Santa Fé, sur une période de 6 mois. Un commandement qu’il n’était pas préparé à prendre et un sous-marin très mal noté. Je ne vais pas développer ici les 29 chapitres qui constituent les 220 pages de ce livre. Il se compose de 4 parties, mais ce sont les parties 2 à 4 qui forment essentiellement le précis de coaching qu’est également ce texte.

Lire la suite

Note de lecture : Mesos in Action, par Roger Ignazio

Note : 3 ; Un focus quasi-exclusif sur l’aspect « opérations » qui rend la lecture bien ennuyeuse pour moi…

Le volet « opérations » n’est pas ma tasse de Thé. Pourtant les frameworks qui gravitent autour de cette problématique simplifiant le déploiement, le clustering et permettant l’infrastructure as code sont probablement les plus actifs et les plus novateurs des projets open source aujourd’hui. C’est à ce titre que je me suis intéressé à Mesos, non pour être capable de l’opérer, mais pour le comprendre et en saisir les concepts et la manière de l’utiliser.

Hélas pour moi, c’est bien autour de la problématique des opérations que s’articule ce texte. Et même sous cet angle, il ne paraît pas des plus didactiques. Voyons justement comment il se structure. L’ouvrage est long de 235 pages, découpé en 3 parties pour un total de 10 chapitres. La première d’entre-elles, « Hello Mesos » fait une trentaine de pages et compte 2 chapitres. Il s’ouvre sur « Introducing Mesos » qui compte lui-même une quinzaine de pages. Ce chapitre donne une vue de haut niveau sur les fonctionnalités que délivre le framework et sa place dans la stack système. Il s’agit là d’une bonne introduction et l’on comprends ce qu’adresse Mesos, bien que la façon dont il l’adresse reste fort abstraite.

Au chapitre 2, « Managing Datacenters with Mesos », compte également une quinzaine de pages. Il se concentre d’avantage sur l’usage et la dynamique de fonctionnement de Mesos, toujours à haut niveau. Illustré par le déploiement de Spark dans différentes configurations, le chapitre est très bien illustré mais on reste toujours sur sa faim : comment diable Mesos interagit-il avec les applications sus-jacentes ?

Lire la suite

Note de lecture : Docker in Action, par Jeff Nickoloff

Note : 4 ; Assez clair, mais pourrait être plus pédagogique…

Docker est une des technologies qui monte, Manning ne pouvait laisser un vide dans son catalogue à ce sujet. C’est chose faite avec cet ouvrage de 270 pages. L’auteur maîtrise très bien son sujet et nous propose donc ce volume structuré en 12 chapitres regroupés en 3 parties.

La première partie est dédiée à la découverte de la containerisation. C’est la plus importante du livre, elle couvre 125 pages et occupe 6 chapitres. Le premier d’entre-eux est court d’une dizaine de pages. Il a pour but de présenter les principes généraux de Docker, son « pourquoi » ainsi que les principes généraux de la conteneurisation. C’est bien emballé. Le second chapitre nous projette côté utilisation de Docker, afin de faire tourner des softs dans des conteneurs, un peu dans tous les sens. On y utilise beaucoup la ligne de commande et l’on découvre les transitions d’états des conteneurs, le lancement d’un conteneur depuis un conteneur, etc.

Après le run, c’est à l’installation que l’on s’intéresse au chapitre 3. Sur 15 pages, on y découvre l’installation depuis un repository ou depuis un dockerfile et bien sûr les principes de base des layers. Les choses se complexifient au chapitre 4 avec la gestion du stockage (persistant ou non) et l’attachement de volumes dédiés ou partagés. Heureusement le propos est largement illustré.

Lire la suite

Note de lecture : Netty in Action, Norman Maurer & Marvin Allen Wolfthal

Note : 3 ; A peine mieux que la doc d’API !

C’est un livre qui a été long à sortir et le sujet même laissait à penser que le propos serait de bas niveau. Mais tout de même, que d’ennui ! En lui-même l’ouvrage compte presque 250 pages découpées en 15 chapitres, eux-mêmes répartis sur 4 parties. La première d’entre-elle couvre plus de la moitie du texte, avec 130 pages sur 9 chapitres. Le chapitre d’ouverture se propose de nous exposer l’architecture orientée évènements de Netty sur une douzaine de pages. Les auteurs auraient pu rendre la chose moins abstraite avec des diagrammes adaptés, mais disons que le boulot est fait.

Ce sont 16 pages qui sont consacrées au chapitre 2, le « hello world » de Netty. Au moins on a le code, plutôt beaucoup de code, si on compte le build et les listings de console. On a réussi à rendre aride ce qui en principe doit être une partie plutôt passionnante. Mais au moins, on a le code. On rentre dans le dur du sujet avec le chapitre 3 « components and design » qui sert en quelque sorte de table des matières aux chapitres qui suivent. Cela ne prends que 10 pages, mais on a déjà le goût de l’austérité d’une doc d’API !

Les 3 chapitres suivants : Transport, ByteBuf et ChannelHandler partagent le même aspect très peu passionnant, c’est à dire une description des APIs par le menu (avec quelques tableaux récapitulatifs imposés par les règles éditoriales manning. Très peu passionnant, cela va sans dire ? Seul OIO versus NIO au chapitre 4 relève un peu le niveau…

Lire la suite

Note de lecture : Executable Specifications with Scrum, par Mario Cardinal

Note : 3 ; Du Scrum de base sans surprise, à part celle de décevoir sur son titre !

Bien entendu, c’est l’aspect « spécifications exécutables » qui m’a conduit vers ce livre ! Le fait qu’il soit plutôt bref, avec ses 150 pages était un bonus. Au final, c’est une déception, la note est peut-être sévère à cet égard mais c’est ainsi, car il s’agit plutôt d’un nième « Scrum Shū ». L’ouvrage manque dans ses grandes largeurs d’originalité et le peu qu’il y en a ne m’a guère convaincu. Heureusement, il faut avouer qu’il est bien écrit. Voyons donc ce que nous réservent ses 9 chapitres.

Le premier d’entre eux couvre une douzaine de pages au sein desquelles on retrouve les poncifs habituels sur la justification des projets en agile : incertitude, complexité etc. En fait, j’ai même l’impression de relire l’introduction du premier bouquin sur Scrum, celui du début des années 2000. Le second chapitre, lui aussi fort d’une douzaine de pages, est un peu moins bateau. Il évoque les prérequis au démarrage de projet. Rien de neuf sous le soleil si ce n’est une bonne vue synthétique et l’usage de l’euristique de nommage de Gause et Weinberg.

Le chapitre 3 ne compte que 10 pages et sert principalement d’introduction à l’un des concepts originaux de l’auteur, celui de « desirement », contraction de « desire » et « requirements ». L’aspect « desire » étant inspiré de nouveau par Gerald Weinberg (are you ligh on ?). Disons le tout net : c’est très peu convainquant. Le tarif est d’une dizaine de pages également pour le chapitre 4 « expressing desirements through user stories ». On nous ressasse une nouvelle fois le template de Mike Cohn et le INVEST. La partie sur les rôles et bénéfices parvient à être intéressante, tandis que l’introduction au backlog reprenant la prose de Mike Cohn est parfaitement insipide.

Lire la suite

Note de lecture : Creating Great Teams, par Sandy Mamoli & David Mole

Note : 5 ; Recette pratique d’auto-selection d’équipe en 4 actes.

Plutôt qu’un livre, il s’agit d’un mini livre, car il ne couvre que 80 pages, et un seul sujet d’ailleurs : l’auto-formation d’équipes ! C’est donc un livre dédié ç une pratique et une seule, qui a pour objective de bien la couvrir. Les auteurs ont une bonne expérience de mise en place de « place de marché » de création d’équipes, essentiellement en Nouvelle Zéland et nous font partager celle-ci.

Le texte comporte 7 chapitre, on commence par une introduction sur les équipes stables sur 9 pages. Celui-ci est assez bateau, avec un réquisitoire d’arguments déjà bien connus pour l’auto-selection. Seuls quelques références d’étude méritent d’être notées. Passons.

Par contre le chapitre 2 rentre bien dans le concret avec les étapes de préparation. Il y en a 6. Voici 17 pages bien utilisées. Progressons encore avec la préparation « du jour d’avant » en 4 étapes au chapitre 3, où comment se rendre prêt pour un événement fluide. Là aussi les auteurs nous découpent cela en étape, il y en a 4. A noter la FAQ bien utile qui collecte déjà les questions qu’ont pu avoir les auteurs.
L’événement lui-même est le sujet du chapitre 4. Un processus en étapes pour rester dans le style. Il faut en compter 10 ici. Les 14 pages de ce chapitre couvrent de manière très détaillée le déroulement de la journée, l’agencement de l’espace d’échange et le cas difficile des « laissés pour compte ». Bref, c’est complet ! Un événement qui n’est pas suivi de faits est pire que de ne rien faire. Le chapitre 5 est consacré à suivre la balle et c’est sur 7 pages.

Lire la suite

Note de lecture : Spring Boot in Action, par Craig Walls

Note : 6 ; Craig Walls (heureusement) toujours égal à lui-même !

J’avais hâte d’aborder ce volume, car on m’avai dit grand bien de Spring Boot. Craig Walls balaye consciencieusement tous les aspects de cette famille de frameworks depuis plusieurs années, avec une plume qui rend tout cela agréable : bon point. Atre bon point, le volume réduit du livre qui est de seulement 180 pages. Hélas cela a conduit à certains choix de contenus que je trouve malheureux ou qui au moins m’ont frustré. Mais j’y reviendrais.

Pour l’instant, voyons le contenu, qui compte 8 chapitres. Le premier « bootstrapping Spring Boot » ne compte que 22 pages, juste de quoi faire le tour du propriétaire et voir les différentes manières d’installer Spring Boot et d’initialiser un projet. C’est aussi l’occasion de voir que le reste du livre va faire l’impasse sur pas moins de 4 sur 5 types de projets que permet Spring Boot (page 13). C’est fâcheux et c’est le principal reproche que j’ai à faire au texte. Cela lui coute 2 points sur ma note de lecture !

Le second chapitre est consacré au « hello world » (d’est du MVC, bien sûr…). Autant dire que ses 25 pages sont précieuses. C’est un plaisir à lire et l’auteur couvre bien les aspects lié au build, à la structure du « starter » et à la gestion commune des dépendances. L’auteur montre une préférence marquée pour Gradle pour le build, mais Maven n’est pas mis à l’écart.

Lire la suite

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