Note de lecture : L’art de la victoire, par Phil Knight

Note : 9 ; Waouh ! Book of the year 2018

Les autobiographies ne sont pas de grands moments de littérature. Et pour de bonnes raisons. Les auteurs en sont des personnalités mais certainement pas des écrivains professionnels. Il en résulte un style ampoulé, un manque de vivacité, de constantes justifications et un point de vue souvent très biaisé.

Mais dans cette autobiographie du créateur de Nike, rien de tout cela. Bien au contraire. Non seulement Phil Knight sait écrire (ou il l’a appris, il semble avoir pris des cours d’écriture), mais il est aussi un conteur formidable. Difficile de reposer le livre un fois la lecture entamée.

L’histoire commence en 1962, avec un voyage à Hawaï, qui deviendra un contact avec le Japon, puis un tour du monde. De là naîtra Blue Ribbon en 1964 et progressivement les premiers complices de Phil Knight : Bowerman, Woodell et Johnson. L’auteur nous partage ses envies, ses doutes et ses obsessions. Son obsession principale, c’est celle d’un « shoe dog », concevoir, fabriquer et vendre les meilleures chaussures d’athlétisme possibles. Son envie : grandir le plus rapidement possible pour battre Adidas, son ennemi de toujours, ce qui l’amènera à être endetté bien au-delà du raisonnable une grande partie de sa vie.
Puis en 1972, avec le recul de Tiger, les chaussures qu’il distribuait depuis 8 ans déjà est venu la décision de créer Nike.

Lire la suite

Publicités

Note de lecture : Design It ! par Michael Keeling

Note : 5 ; Il aurait été vraiment bien s’il avait été moins abstrait

On trouve de la littérature sur l’architecture agile. Pas beaucoup, mais on en trouve. Mais quand il est question du rôle de l’architecte, il en va autrement. Les approches agiles, centrées sur l’auto-organisation renâclent à en admettre l’existence, et seuls les ouvrages faisant état d’un architecte plus ou moins seul maître à bord (le chef de projet faisant la paperasse indigne de l’Architecte) apparaissent dans les rayonnages.

Le livre de Michael Keeling se positionne ici : une vue agile du rôle de l’architecte. A cet égard, il positionne l’architecte d’avantage comme un facilitateur que comme un directeur (voir un dictateur, le plus souvent). Pour nous convaincre de tout cela, le volume compte pas moins de 310 pages (hors annexes), ce qui semble plutôt conséquent. L’ensemble est structuré en 3 parties totalisant 17 chapitres. La première d’entre-elle, Introducing Software Architecture va compter 2 chapitres et se satisfaire de 25 pages en tout. La douzaine de pages du premier chapitre trace les grandes lignes des missions de l’architecte. C’est concis mais un peu abstrait, sans exemples pour étayer la chose. A ce stade on est confiant, le « Project Lionheart » illustrera cela. On a tort, ce premier chapitre donne un avant-goût du reste.

Design Thinking fundamentals ne parle pas de « Design Thinking » au sens classique du terme. En fait, il est question ici de l’approche globale que propose l’auteur, du travail de l’architecte selon 4 axes :

Lire la suite

Note de lecture : Effective Java 3rd edt., par Joshua Bloch

Note : 7 ; Grosse prise de poids et hélas moins digeste, mais toujours une référence.

A chaque nouvelle édition, le titre phare du langage Java prends un peu plus d’embonpoint. L’édition précédente avouait 315 pages pour 78 items, nous voici avec 366 pour 90 items ! Il est vrai que cette nouvelle édition était nécessaire et attendue, essentiellement pour couvrir les nouveautés de Java 8, mais Java 9 n’est pas en reste bien que les modules ne soient pas abordés.

La pertinence du propos reste de mise. Mais il s’agit bien d’une édition augmentée et mise à jour, à l’exception de l’item 73 de la seconde édition qui a disparu. Mise à jour, elle l’est indubitablement. Chaque item et chaque exemple de code a été scrupuleusement revu afin de prendre en compte les évolutions de la librairie standard et du langage, aussi minimes soient-elles. Augmentée, elle l’est aussi des items touchant essentiellement les lambdas et les streams.

Le premier chapitre (en fait le second, car je n’ai pas compté l’introduction) n’a que peu changé, à part un nouvel item sur l’injection de dépendance (en fait le RAII) qui illustre un focus renforcé sur l’immutabilité des objets. Aucune modification au chapitre 3, hormis les quelques rafraichissements qui mettent les exemples au goût du jour.

Lire la suite

Note de lecture : Clean Architecture, par Robert C. Martin

Note : 5 ; Agréable à lire, mais beaucoup de “recyclage », beaucoup de verbiage et peu d’information nouvelle.

Robert Martin est sans contestations possibles un des maîtres du craftsmanship. Je l’ai découvert avec son « C++ Applications Using the Booch Method » qui fut un régal. Son « Clean Code » et plus modestement son « Clean Coder » ont popularisé le craftsmanship et les concepts SOLID. Il m’est difficile d’avouer que j’ai eu du mal à trouver ici des idées nouvelles par rapport à ses écrits précédents. L’ouvrage atteint les 370 pages mais ce volume me parait être là pour donner le change.

Ainsi la première partie composée de 2 chapitres ne dit pas grand-chose, si ce n’est qu’il ne faut pas faire de concession sur la qualité de l’architecture. Une position pas vraiment nouvelle de la part de l’auteur.

La seconde partie fait partie des éléments nouveaux apportés par Uncle Bob : elle est consacrée aux paradigmes des langages de programmation et est composée de 4 chapitres, soit un peu plus de 35 pages. L’auteur nous présente ces paradigmes comme autant de contraintes, de possibilités que l’on enlève au programmeur pour chacune d’entre-elle :

Lire la suite

Note de lecture : Your Code as a Crime Scene, par Adam Tornhill

Note 8 ; De nouvelles perspectives sur l’analyse du code en utilisant une machine à remonter le temps !

J’avais entendu parler de ce livre, en bien… mais j’avais aussi entendu quelques réserves à son égard. C’est sans doute ce qui a retardé sa lecture, et c’est bien dommage ! A part son titre surprenant, le livre n’est remarquable de prime abord que par son impression en couleur. A titre personnel, j’ajoute aussi la préface par Michael Feathers.

Le volume compte moins de 190 pages, annexes comprises. Il n’en est pas moins découpé en 15 chapitres dont 14 sont rassemblés en 3 parties. Le chapitre d’introduction ne servant guère qu’à expliquer la démarche générale du livre.

La première partie « evolving software » regroupe 5 chapitres sur un peu plus de 50 pages. Le premier chapitre « code as crime scene » donne le ton dans tous les sens du terme. D’abord par le titre qui reprends celui du livre, mais aussi en ouvrant sur l’histoire de Jack l’éventreur et des informations extrapolées des lieux de ses méfaits. De la même manière l’auteur identifie les « hot spots » de logiciels par les endroits ayant subi le plus de changements, en exploitant la gestion de version. L’exploitation de la dimension temporelle sera un dénominateur commun de beaucoup des analyses qui nous seront proposées.

Lire la suite

Note de lecture : Beyond Legacy Code, par David Scott Bernstein

Note : 4 ; Beaucoup de verbiage et peu d’illustration

Une nouvelle déconvenue, je dois bien l’avouer. Non pas que le style de l’auteur soit mauvais, il est plutôt tonique avec de bonnes qualités de « story telling ». Non pas qu’il n’ait rien à dire, bien au contraire : il transparait du texte une maîtrise, une compréhension et une solide vision de son sujet. Non, l’auteur échoue à développer convenablement son sujet, à l’appuyer sur de solides exemples. Au lieu de cela, il semble préférer discourir en se servant du texte comme une tribune. Pourtant le contenu est au coin de la rue, il ne demande qu’à se révéler : ce sont les 9 principes qui constituent l’essence de l’ouvrage.

L’ouvrage, justement n’est pas excessivement volumineux, avec ses 230 pages. Mais attention : il s’agit exclusivement de texte ! Il est découpé en 2 parties très inégales, la première servant d’introduction avec 3 chapitres sur 40 pages, la seconde développant les 9 pratiques sur le reste du livre.

La première partie s’ouvre sur le triste constant du code legacy et de ses causes : une industrie d’amateurs comme le dit l’auteur. Rien de vraiment neuf, mais c’est bien écrit et guère ennuyeux. Le second s’attaque sur une douzaine de pages au fameux CHAOS report, mais de façon critique, ce qui est assez original, et pertinent en l’occurrence. Mais c’est aussi pour dire qu’il partage les conclusions, mais pas l’analyse. Enfin cette 1ère partie se referme sur un petit chapitre introductif à la seconde partie (les 9 pratiques) et comme quoi notre focus sur l’agile nous a fait perdre de vue la nécessité de solides pratiques de conception (ou d’ingénierie) qui en forment les fondations. Je suis bien d’accord.

Lire la suite

Note de lecture : How to Make Sense of Any Mess, par Abby Covert

Note : 4 ; Puzzle de réflexions à assembler soi-même.

Abby Covert est « information architect ». Cet opuscule a pour but de nous livrer la substantifique moelle de ce que l’auteur considère comme l’essence de l’architecture d’information. Il mérite le qualificatif d’opuscule par sa brièveté : moins de 160 pages de petit format, avec un concept par page (soit environ 1 minute ou 2 de lecture chaque fois). L’ensemble est structuré en 7 parties.

La première d’entre-elle « Identify the mess » occupe 18 pages. Ce chapitre est lui-même un peu le bordel. Abby Covert s’interroge sur la nature de l’information (ni de la data, ni du contenu) et sur la complexité (de l’information, des utilisateurs…). Bref, beaucoup de choses forment le « mess ».

Le second chapitre couvre nos intentions sur 15 pages. Il s’agit presque d’un mini-traité de coaching. L’auteur cherche à nous aider à décrire ce que « bien » veut dire pour nous. Pour enchainer sur le triptyque « Pourquoi » – « quoi » – « comment » connut des lecteurs de Simon Sinek. J’ai toujours du mal à raccrocher cela au sujet du livre.

Lire la suite