Les livres que j’ai lus en 2016

Olivier Grange-Labat
10 min readJan 29, 2017

Depuis quelques années, j’essaie de trouver un équilibre entre ma veille sur Twitter et les livres que je lis dans le but d’apprendre.

En effet, après avoir ancré une habitude consistant à « scanner » ma timeline quasiment chaque jour, j’ai pris conscience de trois points qui m’ont dérangé :

  • j’avais le sentiment de « muscler » mon cerveau à un exercice sans intérêt : celui consistant à faire un tri rapide dans un flux d’informations très courtes (les tweets) ;
  • j’abordais énormément de sujets mais seulement en restant en surface : un article seul ne permet pas d’approfondir ;
  • je n’avais pas réellement la maîtrise du choix des sujets : bien sûr, je sélectionne dans ma timeline les articles qui attirent le plus mon attention… mais tout cela reste dicté par les tweets écrits par d’autres. Le temps est notre ressource la plus précieuse : garder cette maîtrise me paraissait donc important.

J’ai ainsi pris l’habitude de réduire mon utilisation de Twitter et mettre à profit le temps gagné pour lire des livres. Des livres qui me permettent d’approfondir et que je choisis moi-même.

Voici les différents livres que j’ai lus en 2016, regroupés par catégorie. L’ordre chronologique y est respecté mais je marque généralement une pause dans un thème avant d’y revenir.

Architecture

  • Cloud Architecture Patterns de Bill Wilder : une collection de design patterns d’architecture pour les plateformes cloud, plutôt à conseiller si vous vous lancez dans le sujet.
  • Building Microservices: Designing Fine-Grained Systems de Sam Newman : Sam est consultant chez Thoughtworks, la société de Martin Fowler. Un premier gage de qualité. J’ai lu ce livre dans le cadre de notre club de lecture, à la direction technique. À l’époque, je souhaitais nous armer de connaissances sur les microservices car nous étions sur le point de lancer notre projet de refonte de notre architecture. Ce livre nous a beaucoup appris, c’est un incontournable si vous souhaitez approfondir ce domaine.
  • Systems Performance: Enterprise and the Cloud de Brendan Gregg : Brendan est architecte chez Netflix, je le connaissais par cette carte des outils de collecte d’information système pour Linux qu’il avait twittée il y a quelques années. Ce livre m’a surtout frappé par l’étendue de ses connaissances dans le domaine des performances. Il reproduit d’ailleurs dans sa préface une citation de Donald Rumsfeld qui m’est restée, elle explique qu’il y a « ce que nous savons que nous savons, ce que nous savons que nous ne savons pas mais aussi tout ce que nous ne savons pas que nous ne savons pas » (elle a même une page Wikipedia, There are know knows).
  • Release It!: Design and Deploy Production-Ready Software de Michael Nygard : cet ouvrage revenait régulièrement dans ma veille, notamment via Adrian Cockroft, l’architecte Netflix qui a été un des maîtres d’oeuvre de leur migration dans le cloud. Bien que parfois un peu daté, il contient des chapitres absolument essentiels comme celui où est décrit le Circuit Breaker.
  • Microservice Architecture: Aligning Principles, Practices, and Culture de Irakli Nadareishvili, Ronnie Mitra, Matt McLarty et Mike Amundsen : cette lecture ne m’a pas apporté grand chose, surtout après avoir l’ouvrage de Sam Newman dont il n’apporte qu’une infime partie.
  • Architecting for Scale: High Availability for Your Growing Applications de Lee Atchison : les bonnes pratiques décrites sont plutôt connues si vous avez déjà été confronté au problème, j’ai trouvé plus intéressant le chapitre décrivant la matrice des risques. J’y ai appris également que le nommage des zones AWS était dynamique (eu-west1-a sur un compte pourra être eu-west1-b sur un autre), ceci pour mieux repartir les ressources.

Sécurité

  • Les bases du hacking (en anglais, The Basics of Hacking and Penetration Testing: Ethical Hacking and Penetration Testing Made Easy) de Patrick Engebretson : excellente introduction aux tests d’intrusion, il m’a notamment appris beaucoup sur les différents outils disponibles pour chacune des étapes (reconnaissance, découverte de faille, exploitation, installation d’une backdoor). C’est par exemple dans ce livre que j’ai découvert l’existence de BeEF. Si pour vous, une faille XSS ne permet « que » le vol de cookies, je vous conseille fortement sa lecture, vous serez surpris ! Ce livre fait plus que jamais prendre conscience que « le premier obstacle à la connaissance n’est pas l’ignorance, mais l’impression de savoir » (une citation dont j’aimerais connaître l’auteur).
  • The Hacker Playbook 2: Practical Guide To Penetration Testing de Peter Kim : le livre précédent m’avait donné envie de continuer à apprendre sur la sécurité, j’ai toutefois été plutôt déçu malgré quelques passages plus intéressants (exploitation d’un contrôleur de domaine Windows en partant d’une faille sur une imprimante, mise en place de backdoor sous la forme d’un boitier physique discret, etc.).

Software craftsmanship

  • The Software Craftsman: Professionalism, Pragmatism, Pride de Sandro Mancuso : je souhaitais depuis longtemps en savoir plus sur le craftsmanship. Je n’ai pas été déçu par cet ouvrage, qui reprend un ensemble de bonnes pratiques que tous les développeurs devraient adopter selon l’auteur. Je le conseille vivement, en complément des plus classiques The Clean Coder et Pragmatic Programmer.
  • The Clean Coder: A Code of Conduct for Professional Programmers de Robert C. Martin : pour poursuivre autour du craftsmanship, je me suis plongé dans ce livre qui revient régulièrement dans les listes de livres pour développeurs. Et en effet, on y apprend beaucoup. L’expérience de son auteur est extraordinaire, qui, au passage, est rien de moins qu’un des auteurs du manifeste agile. Citant Yoda (« Do or do not, there is no trying »), un chapitre insiste notamment sur l’amateurisme de certains, qui plutôt que de répondre non à une demande farfelue (« tout doit être livré pour vendredi ») et rechercher un compromis acceptable, préfèrent le mou « OK, on va essayer »… quitte à courir à la catastrophe. Ce qui est attendu d’un professionnel (un médecin, un avocat mais aussi un développeur) est de savoir dire non, l’expliquer et enfin engager une discussion afin de trouver une solution viable.
  • The Pragmatic Programmer: From Journeyman to Master d’Andy Hunt et Dave Thomas : LE classique ! Le livre tient ses promesses : riche d’enseignements et de réflexions, les deux auteurs nous y partagent toute leur expérience de développeurs seniors. De très nombreux enseignements y sont distillés tout au long des différents chapitres. Un exemple qui me vient : contrairement à la métaphore de la construction d’un immeuble pour décrire un projet informatique, un code source se conçoit plutôt comme un jardin, que l’on entretient chaque jour en y prenant soin, pour ne pas qu’il se dégrade et au contraire devienne magnifique. C’est le principe du refactoring permanent, par petites touches (mais aussi de la théorie de la vitre brisée, décrite dans les premiers chapitres). Cet ouvrage est à lire par chacun d’entre nous.

Management/leadership

  • Comment changer le monde ? (en anglais, How to Change the World: Change Management 3.0) de Jurgen Apello : un court livre sur la conduite du changement par l’auteur de plusieurs ouvrages que j’ai prévu de lire : Managing for Happiness, #Workout (disponible « gratuitement » sur son site), Management 3.0. Le style est agréable mais je suis resté hermétique à ce qui est écrit, probablement car je n’ai pas suffisamment eu l’occasion de mettre en pratique (un levier puissant pour muscler la mémoire). Ce n’était sans doute pas le bon moment, je le relirai plus tard. La traduction en Français n’a pas aidé à rentrer dans le livre avec des fautes d’orthographe qui interrompent sans cesse la concentration.
  • Are Your Lights On? de Gerald Weinberg : j’ai une très grande estime pour cet auteur depuis la lecture de Becoming a Technical Leader, un livre qui m’a beaucoup influencé. Je connaissais donc ce titre mais c’est la lecture de ce billet de DHH décrivant les ouvrages qui avaient compté le plus pour lui qui m’a convaincu de le lire. Le sujet principal est… les problèmes ! Vaste et complexe, il dénote tout le talent de Weinberg pour nous éduquer par son écriture. Différents exemples de situations problématiques sont développés le long du livre, pour appuyer les conseils distillés un à un. En résumé, l’auteur nous aide à devenir de meilleurs « problem-solvers » en nous donnant les outils pour prendre du recul sur un problème, l’analyser sous ses différentes coutures, le disséquer et ainsi mieux en venir à bout. Un de ces livres à relire régulièrement.

Développement personnel

Lean/agile

  • La pratique du Lean Management dans l’IT de Marie-Pia Ignace : le Lean fait partie de mes préoccupations quotidiennes, j’ai souhaité avec ce livre, mon premier sur le sujet, mettre des mots sur des habitudes apprises essentiellement au contact d’Ismaël Héry et d’articles lus dans ma veille, pour commencer à remettre tout ça en ordre dans mon esprit.
  • Le plus petit pas: Histoire d’une transformation Agile, Scrum et XP à grande échelle de Nicolas Gouy : attention, pépite ! Ce livre d’à peine une centaine de pages a été un grand plaisir à lire. Il m’a permis de poursuivre mon apprentissage du Lean et une nouvelle fois mieux en comprendre les grands principes. Rares sont les livres ayant un retour sur temps investi aussi important que celui-ci. Certains concepts sont manquants (le A3, par exemple) mais à l’inverse, d’autres sont développés comme la Communication Non Violente. À lire absolument.
  • Getting Value out of Agile Retrospectives — A Toolbox of Retrospective Exercises de Luis Gonçalves et Ben Linders : la rétrospective est un rituel essentiel dans Scrum, il permet de porter l’auto-organisation et l’amélioration continue de l’équipe. J’avais très envie de connaître d’autres formats de rétrospectives avant de lire ce livre mais aucun ne m’a suffisamment emballé pour avoir envie de changer le notre (cadrans keep / drop / start / puzzle).
  • Lean from the Trenches d’Henrik Kniberg : je connaissais Henrik Kniberg pour son travail de coach agile chez Spotify (voir notamment les vidéos qui décrivent leur transformation : partie 1 et partie 2). J’étais curieux de lire son ouvrage, dont le titre revenait régulièrement dans ma veille. Autant dire que je n’ai pas été déçu ! J’ai même adoré passer quelques heures avec lui. Car ce qui frappe à la lecture est son style. En effet, là où souvent les auteurs restent théoriques, Henrik prend le parti de partager sans fard son expérience sur la mise en place de principes agiles sur un gros projet pour la police suédoise. Les constats de dysfonctionnements, les solutions testées, ce qui a fonctionné, ce sur quoi ils sont revenus… Tout y passe. Avec en prime beaucoup de bonnes idées, sources d’inspiration. Enfin, ce livre se lit rapidement car autour de 180 pages dont beaucoup contiennent des photos (de boards) et autres schémas. A dévorer sans hésitation !
  • Scrum and XP from the Trenches — 2nd Edition d’Henrik Kniberg : ce livre disponible « gratuitement » m’a permis d’étendre un peu plus mes connaissances sur Scrum et XP. Cette deuxième édition est particulière dans le sens où il s’agit d’une reprise du texte original, avec des annotations de l’auteur. Intéressant donc de voir son cheminement entre ces deux éditions (2007 contre 2015), parfois avec une auto-critique sévère et souvent avec beaucoup d’humour.
  • Kanban and Scrum — Making the Most of Both d’Henrik Kniberg et Mattias Skarin : Henrik mentionne Kanban dans Lean from the Trenches et son apport m’avait intrigué (quelle belle idée que de fixer une limite sur le WIP dans chaque colonne du kanban board, mesurer l’effet sur le « cycle time » et boucler pour optimiser ainsi ces limites). L’absence d’édition se fait parfois sentir mais cet eBook est disponible « gratuitement » et a même été traduit en Français, autant ne pas se priver !

Web performance

  • High Performance Browser Networking d’Ilya Grigorik : ce livre a été incroyablement riche d’informations pour moi. Ilya, un expert de la webperf chez Google incontournable sur Twitter si vous vous intéressez au sujet, y décrit le fonctionnement des principaux protocoles du web, de nos mobiles et nos navigateurs. Tout cela dans l’objectif de proposer de meilleures performances. Cette citation de Steve Souders en préface le résume parfaitement : « Good developers know how things work. Great developers know why things work. ». Lisez le si vous êtes un professionnel du web, il est même disponible gratuitement à l’adresse https://hpbn.co/.

eBooks O’Reilly

O’Reilly propose également de nombreux eBooks en échange de votre adresse mail.

J’ai lu cette année :

  • The Human Side of Postmortems de Dave Zwieback : intéressant en particulier dans la description de nos biais cognitifs, c’était également mon premier contact avec le Système 1 / système 2 de Daniel Kahneman (utilisé par les pirates dans les attaques par ingénierie sociale) ;
  • Introduction to OKRs de Christina Wodtke : intéressant pour en savoir plus sur ce framework d’objectifs, popularisé par Andy Grove chez Intel et utilisé par beaucoup de grands du web, à commencer par Google. J’ai prévu de lire Radical Focus cette année pour en savoir plus.
  • Web Performance Warrior d’Andy Still : une très belle note sur Goodreads mais sans intérêt si vous êtes un minimum à jour sur le sujet ;
  • Microservices AntiPatterns and Pitfalls de Mark Richards : de bonnes informations sur les erreurs à ne pas commettre dans une architecture microservices, un excellent complément du Sam Newman ;
  • The Secrets Behind Great One-on-One Meetings de Esther Schindler : rien de bien nouveau, ma principale source d’inspiration sur cette pratique de management essentielle reste l’excellent blog de Jason Evanish.

Et vous, quelles ont été vos plus belles lectures en 2016 ?

--

--

Olivier Grange-Labat

Directeur produit et technique à Mediapart // Auparavant, CTO @ Le Monde // Passionné par le leadership, produit, agile/lean, dev, ops… // J’aime apprendre.