Note de lecture : Convaincre pour urbaniser le SI, par Jean-Christophe Bonne & Aldo Maddaloni

Note : 2 ; Décousu et peu engageant, malgré quelques bonnes idées…

Les ouvrages couvrant le domaine de l’urbanisation des SI sont traditionnellement (et à l’exception de quelques uns) de qualité médiocre, du moins de mon point de vue. Nous en avons encore un bel exemple ici.

Cet ouvrage est résolument orienté vers le management décisionnaire. Donc, de fait, il est très peu technique, un choix que je saluerai, car au moins il est clair, le livre n’essaie pas d’arroser en vain un public hétéroclite.

L’expérience phare des auteurs est l’urbanisme du SI de Renault, auquel le dernier chapitre est d’ailleurs spécifiquement consacré. Il est bien dommage que le propos soit si décousu, en suivre le fil est difficile, sinon vain. Comme je le fais parfois remarquer, les 213 pages du livre auraient pu tenir en 90 environ. Voyons un peu le contenu par le menu, c’est à dire en en survolant les 11 chapitres.

Le premier chapitre sur les enjeux est long de 24 pages. La prose est franchement ampoulée et très ciblée « DSI ». On navigue plutôt à haute altitude dans des généralités et hélas cela donne le ton du livre. Le chapitre se résume à dire que le SI de l’entreprise est guidé par 3 axes : métier, stratégie de l’entreprise, stratégie DSI (i.e. technique).

Continuer à lire « Note de lecture : Convaincre pour urbaniser le SI, par Jean-Christophe Bonne & Aldo Maddaloni »

Note de lecture : Building Web Applications with UML 2nd edition, par Jim Conallen

Note : 6 ; Pas les progrès espérés de cette seconde édition considérablement étoffée, mais avec une notation qui continue à se rapprocher de Rational plus que de UML / MDA

Seconde édition d’un ouvrage paru en 2000, ce volume considérable (450 pages), dont un tiers est consacré aux annexes. La première édition montrait une ébauche de profile UML pour les applications Web. Depuis un certain nombre de spécialisations ont vu le jour, notamment dans le monde JEE. Voyons ce qu’il en est.

Comme je l’ai dit, le corps principal du livre compte 300 pages, repartis en 2 parties et découpé en 12 chapitres. La première partie est consacrée à la modélisation des technologies relatives au Web et rassemble les 5 premiers chapitres. Le premier chapitre sert d’introduction et couvre 3 pages, n’en parlons pas. Le chapitre 2 est en fait la réelle introduction. Sur 20 pages, il fait le point sur les principales technologies et protocoles qui sont le quotidien des applications Web à la date de l’ouvrage. C’est plutôt bien écrit mais on y apprend pas grand chose.

Le chapitre 3 s’intitule « dynamic client ». On y évoque tout ce qui tourne autour du DOM, et ce n’est pas particulièrement superficiel. Il y a quelques tentatives timides de modélisation. Il est dommage qu’elles soient timides, car elles sont plutôt originales et bien pensées. C’est un chapitre court de 10 pages.

Continuer à lire « Note de lecture : Building Web Applications with UML 2nd edition, par Jim Conallen »

Note de lecture : The Java Developer’s Guide to Eclipse, 2nd edition, par Jim D’Anjou, Scott Fairbrother, Dan Kehn, John Kellerman & Pat McCarthy

Note : 6 ; De l’Eclipse au kilo !

Voici un pavé, du vrai, du gros, du 1000 pages ! Ce gros pavé, justement, se veut la bible du développement avec et pour Eclipse. Honnêtement, cet ouvrage semble venir d’un autre temps, celui où l’on payait les livres au kilo ! Celui-ci n’est plus tout neuf, mais il me semble que même à cette époque cette tendance s’estompait. Et plus encore chez Addison Wesley. Le livre compte 34 chapitres et je n’ai franchement pas l’envie de tous les passer en revue. Heureusement, ceux-ci sont regroupés en 6 parties, ce qui rend plus huain le survol du texte.

La première partie couvre près de 200 pages et est consacrée à l’utilisation d’Eclipse. Les 6 chapitres qui la compose noircissent beaucoup de papier pour dire en grande partie ce que l’on sait ou a déjà deviné. Il y a bien quelques informations à grapillé dans les coins, mais c’est majoritairement un gâchis de temps et d’espace.

La seconde partie est consacrée aux fondamentaux de l’extensibilité d’Eclipse. Le but ici est de comprendre les points d’extensions, les notions de base des frameworks fondamentaux (SWT, JFace) et d’être en mesure de créer un plugin. On en prends pour 130 pages et 7 chapitres, et c’est curieusement plus intéressant et plus instructif que la première partie.

Continuer à lire « Note de lecture : The Java Developer’s Guide to Eclipse, 2nd edition, par Jim D’Anjou, Scott Fairbrother, Dan Kehn, John Kellerman & Pat McCarthy »

Note de lecture : Applied C++, par Philip Romanik & Amy Muntz

Note: 4 ; Tutorial pour C++

A l’origine, j’avais classé cet ouvrage dans la partie « C++ avancé », à l’image de la plupart des ouvrages de cette série. Toutefois, au final cet ouvrage s’adresse d’avantage aux développeurs peu expérimentés, ce qui justifie ce classement.

Le livre compte un peu plus de 300 pages et presque 20 pour les annexes. Il n’est découpé qu’en 8 chapitres. Passons rapidement sur l’introduction de 7 pages nous dispensant quelques rudiments de traitement d’image et de principes de conception de système. Le second chapitre est à peine plus long avec 11 pages. Mais on commence à écrire quelques classes simples et à aborder les conseils proposés par les auteurs, essentiellement concernant les questions de constructeur, destructeur et opérateur d’affectation.

Les choses sérieuses commencent au chapitre 3 qui comprend 48 pages. On commence par une idée curieuse : réécrire l’allocation mémoire ! Rapidement, on y mélange beaucoup d’aspects : les templates, les destructeurs virtuels, etc… Difficile de s’y retrouver. On finit même par perdre de vue l’étude de cas !

Continuer à lire « Note de lecture : Applied C++, par Philip Romanik & Amy Muntz »

Note de lecture : Activity in Action, par Tijs Rademakers

Note : 7 ; Un bon ouvrage au standard « in action » pour accompagner une immersion dans Activity, malgré quelques frustrations.

Activity, c’est le « spin off » de JBPM par ses créateurs. Mais, ainsi qu’il est expliqué en introduction, ce n’est pas un fork mais une réécriture complète, avec les choix de conception que l’équipe aurait voulu prendre à l’époque !

Mais revenons au livre. L’auteur est un des comiters principaux du projet, ce n’est pas non plus un auteur débutant. Tout ce présente donc sous les meilleurs auspices pour commencer. La prose est conséquente : 400 pages sur 15 chapitres distribués en 4 parties inégales. Il est temps de rentrer plus en profondeur.

Les quelques 80 pages de la première partie regroupent 4 chapitres et sont une introduction à BPMN 2.0 et Activity. On commence par une présentation générale d’activity, de son architecture et l’incontournable « hello world » précédé d’une installation basique. C’est réussi. Le chapitre suivant a pour but de nous présenter BPMN 2.0. C’est fait avec pédagogie et bien illustré, mais aussi assez superficiel et on sort de là un peu frustré. La présentation de l’outillage Activity est un peu touffue, probablement parce que cet environnement l’est aussi un peu : il manque d’homogénéité et est un peu de pièces rapportées. Espérons que cela s’améliore à l’avenir.

Continuer à lire « Note de lecture : Activity in Action, par Tijs Rademakers »

Note de lecture : Specification by Example, par Gojko Adzic

Note : 8 ; La référence sur le développement guidé par les tests. Book of the year 2014 !

Régulièrement, je retarde le moment d’ouvrir un livre que je sais excellent (de réputation) et qui prend la poussière sur une de mes étagères. Ce livre est de ceux-là ! Bien que Manning nous gratifie de temps en temps de titres non-techniques, il est assez étonnant de trouver celui-ci chez cet éditeur, probablement parce que ce n’est pas un livre pour remplir un vide thématique.

Il s’agit bel et bien d’un texte nous proposant un regard novateur sur les tests d’acceptance, même si l’auteur rappelle régulièrement au fil des pages qu’il fait suite à son ouvrage précédent « The Communication Gap ». Ce n’est pas non plus un livre très facile à lire, non qu’il soit volumineux car il ne compte que 250 pages, mais il s’appuie essentiellement sur de nombreux témoignages qui transforment le fil conducteur en une sorte de patchwork. Evidemment, ces nombreux témoignages qui sont autant de cas d’étude font beaucoup pour la crédibilité du texte qui est ainsi à la fois un travail digne d’un universitaire et l’œuvre d’un praticien de terrain. Venons-en au contenu.

L’ouvrage se découpe en 3 parties inégales. La première d’entre-elles ne compte que 60 pages réparties en 4 chapitres. Le premier chapitre nous laisse un peu dans le flou, il s’agit surtout d’un argumentaire étayé de témoignages sur la raison de s’intéresser à la spécification par l’exemple. On rentre dans le dur au chapitre suivant qui aborde la manière dont Gojko Adzic voit s’articuler le besoin depuis les « business goals » jusqu’à la « documentation vivante ». Les aspects amont sont par ailleurs l’objet de son ouvrage suivant « impact mapping ». On y apprend incidemment pourquoi l’auteur préfère « spécification par l’exemple » à « développement guidé par les tests d’acceptance ». Un chapitre à ne rater sous aucun prétexte ! Le chapitre 3 « living documentation » offre pour moi peu d’intérêt, sauf peut-être celui de couvrir le schéma de processus que l’auteur nous a exposé au chapitre 2 ? La spécification par l’exemple ne se veut pas une pratique spécifique aux projets agile, bien que ce soit un terrain de jeu naturel. Au chapitre 4, l’auteur aborde différentes façon de basculer d’un projet classique à l’écriture des tests en amont sous forme de patterns (bien qu’ils n’en empruntent malheureusement pas la forme).

Continuer à lire « Note de lecture : Specification by Example, par Gojko Adzic »

Note de lecture : iWOZ, par Steve Wozniak avec Gina Smith

Note : 5 ; Mémoires d’un ingénieur.

Bien sûr, ce livre est un peu le contrepoint de la biographie de Steve Jobs. Comprendre la naissance d’Apple, c’est comprendre aussi la relation entre ces deux hommes, tout comme comprendre les Beatles, c’est (en partie) comprendre la relation entre McCartney et Lennon ! D’une certaine manière la façon dont chaque biographie est faite est elle-même symptomatique : Steve Jobs a choisi le meilleur biographe afin d’obtenir un ouvrage définitif et mémorable. Steve Wozniak a choisi l’autobiographie, plus modeste mais projetant son propre point de vue sur cette aventure.

Le début du livre, celui où l’on croise Woz enfant, puis adolescent peut nous laisser penser que le personnage est particulièrement prétentieux ! Ces 4 ou 5 premiers chapitres nous permettent non seulement de découvrir le jeune Wozniak, mais aussi de découvrir l’aspect « ingénieur » de Woz : ce qui semble de la vantardise ne l’est pas, il s’agit simplement d’une règle d’analyse objective qui fait partie intégrante de son attitude d’ingénieur.

Un autre sujet revient aussi régulièrement au long de l’ouvrage, un aspect moins connu de la personnalité du co-fondateur d’Apple : le plaisantin. J’avais trouvé la chose évoquée par ailleurs, mais Woz est littéralement prêt à tout pour une bonne blague, même dans les moments les plus importants ou les plus dramatiques !

Continuer à lire « Note de lecture : iWOZ, par Steve Wozniak avec Gina Smith »

Note de lecture : Programmer sous Windows 95 (4ème édition), par Charles Petzold et Paul Yao

Note : 9 ; Plus qu’un livre : une institution

10 ans après la 1ère édition, cette 4ème (qui ne fut pas la dernière) a encore pris de l’embonpoint pour atteindre 1200 pages. Malgré l’entrée dans le monde 32 bits, cette institution qu’est « le Petzold » reste fidèle à la programmation via les API héritées de Win16. Donc la part belle est faite aux applications fenêtrées : fenêtres, menus, tracés graphiques, impression, boites de dialogue, presse-papiers, etc… Il traite plus succinctement des aspects systèmes et des aspects spécifiques à Win32. Il est temps d’entrée dans le cœur du sujet. On parle de 20 chapitres regroupés en 5 parties.

La première partie comporte 4 chapitres totalisant 270 pages. Le livre ne commence réellement qu’au chapitre 2, qui s’articule autour du redoutable HelloWin.c ! Il faut tout le talent pédagogique de Charles Petzold pour démystifier les arcanes de la boucle d’événement et des handles de fenêtre, afin de donner une logique à l’ensemble. Utiliser le Canvas de fenêtre, l’événement WM_PAINT et autres invalidation de surfaces (sans parler des scroll barres) n’est pas non plus une sinécure, mais le chapitre 3 y vient à bout de manière méthodique. Une bonne base pour aborder la terrible complexité de la GDI au chapitre 4 ! Toutefois, le sujet mérite un livre (au moins) à lui tout seul et celui-ci ne saurait couvrir complètement le sujet…

La seconde partie est consacrée à la saisie. On parle de saisie au sens large : comptez 4 chapitres et 200 pages pour des sujets couvrant bien sûr le clavier et la souris, mais aussi l’horloge et les fenêtres enfant ! On ne se douterai pas au premier abord que la gestion du clavier puisse être si complexe, impliquant des messages clavier, mais aussi de focus de fenêtre, sans compter la prise en compte de paramètres OEM ! Un sujet parfaitement traité en profondeur ici. Heureusement, la gestion de la souris traitée au chapitre 6 génère moins de tracas, même quand on essaie de pousser le sujet dans ses retranchements : souris gérée au clavier, capture de la souris (si, si), etc.. La gestion de l’horloge abordée au chapitre 7 est pour une fois réellement simple sous Windows, peut-être est-ce pour cela que l’auteur a choisi un exemple complexifiant inutilement le sujet en y mettant de la GDI ? Par fenêtre enfants, il faut entendre les contrôles, essentiellement les boutons et la façon dont ils communiquent avec la fenêtre encadrante. Ce chapitre conclue cette partie.

Continuer à lire « Note de lecture : Programmer sous Windows 95 (4ème édition), par Charles Petzold et Paul Yao »

Note de lecture : Analyse orientée objets, par Peter Coad et Edward Yourdon

Note : 4 ; Typique de l’approche objet des années 80

Il s’agit ici de l’approche objet typique des années 80. L’emphase est mise sur l’identification “à priori” des objets, ainsi que des attributs et des services attenants, en ne prenant que faiblement en compte le contexte de leur utilisation. Avec 180 pages pour 10 chapitres, ce n’est pas un gros volume. Un second tome, dédié à la conception le complète.

Le premier chapitre est un très classique argumentaire de l’intérêt de l’objet par rapport à la décomposition fonctionnelle en rappelant les grands traits de l’objet : héritage et encapsulation principalement.

Les chapitres 2 et 3 s’articulent autour de l’identification des objets. On notera aussi passage l’évocation de Smalltalk par les auteurs. Les méthodes suggérées sont plutôt empiriques, et surtout on reste sur l’idée d’identifier les objets « à priori », symptomatique du courant de pensée de cette époque.

Continuer à lire « Note de lecture : Analyse orientée objets, par Peter Coad et Edward Yourdon »

Note de lecture : The C++ Answer Book, par Tony L. Hansen

Note : 6 ; Un compagnon de route au Stroustrup.

Il s’agit, comme son titre l’annonce d’un livre d’exercices corrigés. Aujourd’hui c’est un texte fort ancien. Ancien peut-être, mais volumineux, certainement. On en prend pour 520 pages sur 8 chapitres seulement, sans compter les annexes ! Voyons ce qu’il a dans le ventre.
On passera rapidement sur le 1er chapitre qui est introductif (5 pages) pour nous tourner vers le 2nd qui traite des déclarations et des constantes. Les exercices sont tous très simples, c’est aussi l’occasion d’évoquer des éléments connexes à la questions en plus de répondre à celle-ci.

Si le chapitre 2 ne comptait qu’une trentaine de pages, c’est près de cinquante que nous offre le chapitre 3 dédié aux expressions. On y a droit inévitablement aux ordres d’évaluation de expressions, mais aussi aux comportements « limite » du langage, y compris à ceux causant des problèmes de portabilité. Une partie significative du chapitre est dédié à la manipulation de chaine de caractères, à l’ancienne façon « C ». Le niveau de difficulté augmente significativement, il était au maximum à 1.5 au chapitre 1, il monte ici à 2.5 selon l’échelle exponentielle de l’auteur ! La dimension algorithmique des exercices n’est pas triviale. De quoi se rafraichir les neurones !

Continuer à lire « Note de lecture : The C++ Answer Book, par Tony L. Hansen »