Note de lecture : Escaping the Build Trap, par Melissa Perri

Note : 6 ; Pour enfin comprendre le paradigme « produit »

Opposer « projet » et « produit » semble être l’un des sujets du moment… sauf qu’au moment de comprendre en quoi l’approche « produit » est fondamentalement différente de l’approche « projet », les choses se compliquent. C’est tout l’objet de l’ouvrage de Melissa Perri dont la lecture n’ira pas nécessairement aussi vite que prévu, malgré qu’il ne compte que 170 pages hors annexes.

Ce ne sont pas moins de 5 parties rassemblant 25 chapitres que compte l’ouvrage. Autant dire que ces derniers sont plutôt courts, ce qui rythme bien la lecture. La première partie « The build Trap » compte 20 pages totalisant 5 chapitres ! Le premier chapitre « the value exchange system » met l’accent sur le problème résolu (en échange de compensation) ce que l’auteur oppose à la posture de « demande de fonctionnalité ». Ce virage du mode réactif vers une réelle compréhension des besoins de utilisateurs est le véritable virage de la culture produit. L’obstacle majeur à ce virage est la culture de l’output (la fonctionnalité produite) par rapport à l’outcome (l’impact), comme le souligne le second chapitre.

Avant d’aborder les organisations orientées produit (au chapitre 4), l’auteur nous fait toucher du doigt la différence entre projets (s’organiser pour construire quelque chose) et produit, un avoir de la société que l’on fait grandir et évoluer pour adresser toujours mieux les besoins des utilisateurs. Donc le chapitre 4 introduit les organisations orientées produit, optimisant et priorisant leurs activités en fonction de l’impact métier, en les comparant aux entreprises orientées ventes, vision ou technologie. Rechercher l’impact, c’est aussi accepter l’incertitude, nous rappelle le chapitre 5. C’est une logique de découverte et de questionnement qui s’oppose aux certitudes du mode projet.

Lire la suite

Note de lecture : L’entreprise libérée par le petit patron naïf et paresseux, par Jean-François Zobrist

Note : 8 ; L’entreprenariat libéré sans ambages et inspirant.

Lire Jean-François Zobrist, c’est d’abord accepter de se prendre une grande claque. L’homme est connu pour ne pas mâcher ses mots, c’est bien ce que l’on retrouve ici. Favi, l’entreprise qu’il a dirigée est largement cité dans l’ouvrage d’Isaac Getz, il est juste de le voir en parler avec ses mots et surtout son point de vue. Un point de vue radical, nous le verrons.

L’ouvrage n’est pas très long, ses 190 pages s’avalent rapidement. Le texte est toutefois structuré en deux parties. La première partie « premiers éléments » compte moins de 50 pages et 4 sous-parties que l’on pourrait appeler « chapitres ». Dans le premier d’entre-eux, Zobrist pose les fondements de ce qui est une entreprise libérée. Elle doit faire de l’argent car c’est indispensable à sa survie comme l’oxygène est indispensable à l’être humain. C’est l’ouvrier qui génère ce cash-flow, tous les autres (DG compris) est à son service. Le thème sera récurrent au long de l’ouvrage. Dans la différence entre entreprise classique et libérée, l’auteur fustige les technocrates en opposant le gestionnaire (qui gère des chiffres) au manager (qui gère des hommes). Le premier veut contrôler le « comment » et naviguer dans la certitude, le second est empreint du bon sens picard et revient au « pourquoi » tout en s’accommodant de l’incertitude qui est la réalité du monde réel.

Dans les principes de la libération des entreprises, l’auteur propose ceux, radicaux, qui ont été ceux de Favi. Radical certes, quand Zobrist énonce que l’encadrement de l’entreprise sont les salariés des ouvriers. Mais c’est bien ce que l’on attend du texte, on n’est pas déçus ! Pour ce qui est d’avancer, tout comme Kotter, l’auteur met en avant le sentiment d’urgence, mais aussi de mettre en avant l’innovation et de laisser sa place au hasard, en fustigeant (encore) les gestionnaires qui cherchent une certitude qui n’existe pas.

Lire la suite

Note de lecture : Le bon moment, par Daniel H. Pink

Note : 5 ; Timing is everything !

Chaque livre écrit par l’auteur de « Drive » mérite à minima l’attention. Ce nouvel opus ne va pas concurrencer le titre phare de l’auteur, mais il a nombre de chose à nous apprendre. Le titre ne cache pas son jeu, c’est de moment, de timing et de synchronisation dont il va être question. Qu’on le veuille ou non, le facteur temps est presque toujours le plus important.

Ce volume est au format de poche, promesse d’une lecture rapide qui sera tenue. L’écriture a dû en être moins rapide quand on voit le nombre d’études et d’histoires sur lesquelles l’auteur s’appuie. Le texte occupe 270 pages en 7 chapitres, sur 3 parties. La première, « la journée » ne compte que 2 chapitres, mais sur 110 pages. Le premier évoque l’architecture secrète de la vie quotidienne ! Il nous montre, avec de très nombreuses études à l’appui, que nous avons bel et bien une rythmicité quotidienne et que notre énergie et notre humeur varient dans la journée. Pour la plupart d’entre nous, cela marche mieux le matin, mais ce n’est pas vrai pour tous et cela varie aussi au fil du temps, passant le plus souvent du soir vers le matin. Rien que ce chapitre vaut le détour et peut vous aider dans votre vie quotidienne !

Au second chapitre, l’auteur va nous parler de l’après-midi que l’on peut voir comme la zone de tous les risques. Du constat des problèmes d’attention dont l’après-midi est la cause, l’auteur nous fait un plaidoyer des « pauses vigilances » qu’il associe à 5 principes directeurs. Là aussi un bon savoir « à emporter ». Même si vous lisez le chapitre l’après-midi !

Lire la suite

Note de lecture : Designing Data-Intensive Applications, par Martin Kleppmann

Note : 10 ; Monumental! Book of the year 2021 !

Une somme de connaissances, cet imposant ouvrage, n’est pas moins que cela. Le titre laisse présager que l’on va parler big data. C’est plus subtil que cela, car il s’agit avant tout les principes et mécanismes fondamentaux des grosses architectures data, certes en faisant référence aux classiques du marché, pour comprendre les spectres d’utilisation des différentes solutions. On va donc y parler stockage, systèmes réparties, transactions, streaming, etc. Et ce n’est pas du léger.

Léger, l’ouvrage ne l’est clairement pas vu de l’extérieur (et comme nous le verrons, cela va se gâter à l’intérieur) : 550 pages divisées en 3 parties pour un total de 12 chapitres. Nous avons donc des chapitres très conséquents, il n’y a aucun doute. La première partie traite des fondamentaux. Cela couvre 150 pages sur 4 chapitres. C’est une introduction en douceur, le propos y est tout à fait abordable. Le premier chapitre, fort d’une vingtaine de pages, nous invite à comprendre ce qu’est un système fiable, scalable et maintenable. Il ne s’agit pas juste de généralités, car l’auteur y présente ainsi la structure des données dans les SGBDR, dans un système de streaming tel que Storm. On y apprend ce qu’est un percentile et beaucoup d’autres choses. Bref, un chapitre en douceur mais solide, épaulé par une trentaine de références bibliographiques.

En débutant le chapitre 2, j’ai été frappé par la gravure représentant la table des matières du chapitre. Le premier chapitre en avait une aussi, ainsi qu’en fait tous les chapitres du livre ! Modèles de données et langages de requêtes sont au menu de ce chapitre diablement passionnant. Non seulement on rentre en profondeur dans les structures des différents modèles de données et les paradigmes des langages de requêtes, qu’ils soient déclaratifs ou impératifs, mais l’auteur nous donne un éclairage historique remontant au Codasyl. Brillant.

Lire la suite

Note de lecture : Site Reliability Engineering, par Betsy Beyer, Chris Jones, Jennifer Petoff & Niall Richard Murphy edt.

Note 4 ; Les bases d’une nouvelle discipline au milieu d’essais assez hétéroclites.

Le SRE est l’une des nouvelles tendances du moment. Elle figure le pendant « run » du devops de manière générale, mais reste parfois difficile à distinguer aussi clairement. Le présent ouvrage a mis en lumière cette nouvelle discipline, aussi pourrait-on le qualifier « d’historique ». Dans les faits, il s’agit avant tout d’un recueil d’articles. Malgré le travail éditorial effectué, il ne faut pas en attendre le niveau de cohérence d’un ouvrage classique.

Avec ses 475 pages rythmés sur 34 chapitres et structurés en 5 parties, l’ouvrage est une belle bête, au moins au niveau du volume. La première partie ne compte que deux d’entre-eux sur une vingtaine de pages et sert d’introduction aux parties suivantes. « Introduction » est d’ailleurs le titre du 1er chapitre. Celui-ci nous esquisse en quelques lignes ce qu’est le SRE chez Google. Car j’ai oublié de préciser qu’il s’agit d’articles en provenance de Google. Le second chapitre ne se situe guère en continuité car il évoque l’environnement de production. Cette infrastructure est gérée par « Borg » qui n’est pas moins que l’ancêtre de Kubernetes !

La seconde partie assoie les principes du SRE. Elle compte 7 chapitres pour un total de 75 pages. Elle débute par un chapitre 3 qui a pour but de nous donner un éclairage « risques ». C’est surtout la notion de budget d’erreur qui y est important. Le chapitre 4 aborde une notion clé du SRE : le SLO pour Service Agreement Objective, que Google préfère au SLA. Les auteurs nous expliquent comment construire ces SLO par rapport aux SLI (« I » pour indicateur), et ce par l’exemple. Un bon chapitre. Le chapitre 5 est consacré au labeur, que l’on pourrait aussi appeler travail de m… Surtout ce chapitre entrouvre un aspect majeur du RSE : Google emploie pour ce travail des développeurs plutôt que des ingénieurs système car l’objectif est d’éliminer ou automatiser tout cela plus que d’effectuer des corrections !

Lire la suite

Note de lecture : Applying RCS and SCCS, par Don Boliger & Tan Bronson

Note : 8 ; Une excellente surprise, qui va plus loin que la mise en œuvre de RCS en présentant les finalités de la gestion du changement.

Pourquoi parler de SCCS et de RCS quand on utilise Clear Case ? au mi-temps des années 90, c’est le genre de questions que l’on pouvait se poser. Cet excellent ouvrage ne se limite pas à la comparaison de ces 2 utilitaires (il donne la préférence à RCS, l’ancêtre de CVS). Nous allons le voir.
L’ouvrage est du genre mastoc avec ses 23 chapitres sur 440 pages hors annexes. Comptez 50 pages de plus pour ces dernières ! Le premier chapitre est un simple tour de chauffe destiné à présenter les concepts de base de la gestion des sources.

Les chapitres 2 à 4 viennent en triplet, et ce sera vrai pour la suite de l’ouvrage : d’abord les principes généraux, puis la déclinaison RCS et enfin celle de SCCS. On commence ici avec les concepts de base : la copie de travail d’un fichier, la gestion du verrouillage… Bref, tout ce qui permet de faire une modification. Le chapitre RCS marche exactement dans les traces du chapitre 2 en présentant la syntaxe de cet outil pour lancer les commandes correspondantes. Il en va presque de même pour SCCS dont la philosophie est légèrement différente. Mais un tableau récapitule lesdites commandes pour les deux outils à la fin de chaque chapitre. Pratique.

Le second triplet nous fait faire un grand bond en avant, car on y aborde les concepts tels que branches, numéros de révision et snapshots. Les auteurs adoptent un angle « cas d’utilisation », plus pragmatique mais pas toujours facile à suivre. Pour la déclinaison RCS, le texte s’appuie beaucoup sur les fonctionnalités de branching (et donc de merge) de l’outil, tandis que le snapshot n’est guère évoqué. Côté SCCS, les choses paraissent même plus pauvres, mais on parvient à faire le lien avec le chapitre des généralités.

Lire la suite

Note de lecture : Effective methods for Software testing 2nd edition, par William E. Perry

Note : 6 ; Une approche des tests très développée et d’une vision très large, mais présentée en cycle « V » classique…

Voilà le seul ouvrage traitant de tests « à l’ancienne » de ma bibliothèque. Cela rend ce volume d’autant plus important qu’il éclaire un pan de la culture test qu’il est nécessaire de comprendre. Dans le monde agile, les tests sont essentiels, et s’ils sont en majeure partie abordés différemment, comprendre cet écosystème reste un élément majeur pour aborder le changement.

Le livre est volumineux, certes, avec 800 pages mais ce n’est pas le plus volumineux publié dans le domaine. Au moins est-il bien rythmé avec 26 chapitres regroupés en 5 parties. A première d’entre-elles ne couvre qu’un seul chapitre sur une trentaine de pages. Son focus est l’évaluation des compétences et capacités de test. On y distingue l’évaluation du processus de test et l’évaluation des testeurs, le tout s’appuyant sur des corpus de connaissance entretenus par des organismes. Bref, on nage en plein dans les grilles d’audit. Cela ne fait guère envie mais au moins, on sait ce qui existe en la matière.

Avec 4 chapitres sur plus de 120 pages, la seconde partie est plus conséquente. Elle évoque la mise en place d’un environnement de test. Nous allons voir en quoi cela consiste. Le chapitre 2 adresse la stratégie de test, mais l’approche proposée, axée sur les phases de développement et les facteurs de risques ne se projette pas sur un cycle de développement agile. Dans la continuité, le chapitre 3 nous propose de construire une méthodologie de test, mais clairement axée sur un modèle en cascade, qui se conclut par un plan de test dont le template est passé en revue « in extenso ». Là non plus, rien de directement exploitable, mais il est riche d’enseignement de voir un véritable plan de test qui est souvent évoqué de manière bien abstraite.

Lire la suite