Note de lecture : Initiation à XML avec 3 études de cas détaillées, par David Hunter & al.

Note : 2 ; Un gros pavé ennuyeux, mal construit et au contenu hétéroclite

Encore un gros pavé sur XML à 800 pages ! Le contenu de celui-ci est quelque peu hétéroclite : DTD, HTML et CSS, XPath et XSLT, mais aussi DOM, API SAX ! Ensuite, bien entendu XML Schéma et pour faire bonne mesure, les XLinks, l’accès aux bases de données puis les fameuses études de cas. Ce programme un peu décousu me laisse un peu perplexe de prime abord !

La logique du livre est difficile à suivre : après deux chapitres d’adressant aux grands débutants sur XML (mais quand même complets avec des choses sur la gestion des espaces, des encodages et des instructions de traitement, par exemple !) les auteurs abordent directement HTML et le rendu de XML en HTML via CSS ! Tout ceci va nous occuper durant 135 pages, avant d’attaquer les choses sérieuses : XSLT !

Ce sont deux chapitres et un peu moins de 100 pages qui sont consacrés à XSLT (et XPath). Le sujet est complexe et cette introduction ne saurait rivaliser avec l’ouvrage de référence de Michael Kay. Il n’en a probablement pas l’ambition ni hélas l’utilité. Le sujet est traité de manière superficielle, il suffira surement à un « hello world » perfectionné mais on touchera les limites du texte très rapidement.

Exit XSLT, bienvenue DOM et SAX ! Là encore, les 70 pages consacrées à ces deux chapitres sont surtout destinés à donner un verni culturel plus qu’une connaissance opérationnelle. Du cocq à l’âne, ou plutôt du SAX aux namespaces, il ne semble y avoir qu’un pas que franchissent allègrement les auteurs pour notre plus grand désarrois. Mais on est bien sûr aussi un peu obligé d’en expliquer le fonctionnement dans XSLT. Pourquoi ne pas avoir mis cela dans la continuité de la partie qui lui était consacrée ?

Encore un changement de direction inopiné : nous voici arrivé à la DTD. Globalement on y trouve à peu près ce dont on a besoin. Le chapitre 10 qui lui fait suite est cette fois logiquement consacré à XML schéma, mais c’est cette fois un peu rapide. Ces deux chapitres sont complétés par un chapitre dédié à des compléments d’information, nottament les entités.

Le chapitre 12 est un peu une surprise : il est consacré aux XPointers. Mais pourquoi y avoir mélangé les hyperliens HTML ? Globalement, il ne restera pas dans les annales. Le chapitre 13 se veut aussi un aspect avancé : XML et les bases de données. Ca tire un peu dans tous les sens avec de l’ADO, du Vidual Basic, du stockage dans SQL Server ou dans Oracle. On aurait pu économiser du papier. Le chapitre 14 qui lui fait suite sur les « autres usages du XML » est presque pire, on y parle sérialisation, XML-RPC et RDF. C’est très brouillon

Cette partie ne m’a pas laissé un goût excellent. Certes, on a du matériel à en retiré, mais il n’y a pas de logique ni d’homogéneité. Qu’en sera-t-il des 3 études de cas qui couvrent les 120 pages suivantes ?

La première étude de cas est « gentille » et complètement hors du temps : des fichiers XML couvertis en HTML à l’aide de feuilles de style XSLT. Gentil, je vous dit. Mais c’est tout. Et surtout, pas très utile.

La seconde étude de cas est plus conséquente. C’est une application de type « bulletin board ». Là aussi à base de XML qui produit du HTML, mais pour le coup on essaie d’y construire une architecture applicative.. Mais tout cela est quand même truffé de spécificités Microsoft !

La troisième étude de cas est orientée B2B. Au moins ça change un peu, mais là aussi je n’ai pas été convaincu.

Pour terminer on a droit à un lot tout à fait impressionnant d’annexes. On en prend pour 120 pages, et il y a un peu de tout (y compris un « tutorial » Javascript !). Je ne sais pas si ça compense la relative médiocrité du pavé. Ou plutôt, mon opinion est que ce n’est pas le cas.

initiation-xml

Référence complète : Initiation à XML, avec 3 études de cas détaillées – David Hunter, Curt Cagle, Dave Gibbons, Nikola Ozu, John Pinnock & Paul Spencer – Eyrolle 2001 (V.O. : Beginning XML ; Wrox Press 2000 ; ISBN : 1-861003-41-2) – ISBN : 2-212-09248-2

Initiation à XML, avec 3 études de cas détaillées


http://www.goodreads.com/book/add_to_books_widget_frame/2212092482?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : Steve Jobs, par Walter Isaacson

Note : 8 ; L’homme qui pliait le monde à sa propre vision !

Se sachant condamné, Steve Jobs a choisit lui-même son biographe. Il lui fallait le meilleur, et le fait que celui-ci refusa catégoriquement cette proposition n’était pas un élément qui rentrait en ligne de compte pour le créateur d’Apple. Car bien sûr, il finit par accepter. Comme le montre le livre au long de ses 41 chapitres, ce projet est symptomatique du mode de fonctionnement de ce personnage hors norme : ne pas laisser aux autres l’initiative de ce que l’on dirait de lui, s’assurer d’avoir le meilleur afin de sortir la meilleure biographie possible rendant impossible d’en sortir d’autres. Faire ce qu’il faut pour que l’auteur produise le meilleur : carte blanche, aucune censure (en fait Steve Jobs ne lira jamais le livre), libre accès aux documents et aux personnes. Et encore une fois, le résultat atteint des niveaux d’exigence très élevé.

Il s’agit d’une vraie biographie, elle démarre par la rencontre de ses parents naturels, pour se poursuivre par son adoption, son enfance et son adolescence et sa jeunesse tumultueuse qui le conduira à sa rencontre avec Steve Wozniak, aussi différent de Jobs que l’on puisse l’imaginer. La suite est mieux connue dans ses grandes lignes, car bien qu’entrecoupée d’un exode elle est intimement liée à l’histoire d’Apple. En fait, dès les années 80 il déclarait penser que son nom était lié à celui d’Apple quoi qu’il arrive, tout en pensant également qu’il incarnait Apple. L’avenir lui donnera bien sûr raison.

Si le texte suit une trame globalement temporelle, le découpage suit en fait des thèmes recouvrant certaines périodes, comme celles de sa relation avec sa première fille, Lisa Brennan ou l’Apple II, ou l’iPod, etc… Ces tranches de vies se recouvrant, le fil des chapitres se recouvre en partie telles les ardoises d’un toit. Loin d’être déstabilisante, cette approche rend le livre plus captivant, certains événement faisant la liaison entre différents chapitres.

L’auteur a choisit de ne faire aucune concession par rapport à l’image du personnage, mettant en valeur son talent, son génie et son exigence par rapport aux produits qu’il voulait développer tout comme les côtés nettement moins reluisants de sa personnalité « vous avez découvert que je suis un sale con ? Quel scoop ! » comme le rapporte Walter Isaacson sur une conversation entre Steve Jobs et un journaliste. La prose mêle finement l’histoire racontée, les témoignages et l’analyse faite par l’auteur qui encore une fois ne cherche pas à embellir le tableau mais à nous faire comprendre l’homme. Mission accomplie de ce côté, les motifs récurrents du fil de sa vie apparaissent clairement : une quête de perfection dans la simplicité ne s’embarassant ni des « impossibilités techniques » ni des personnes avec qui il devait ou aurait pu collaborer, la volonté de marier art et technologie en gérant l’expérience utilisateur de bout en bout en n’acceptant aucune concession.

Steve Jobs n’est pas un créateur. Ou s’il en est un, sa réelle création est Apple. Mais il faisait travailler des créateurs et les guidait ou les fustigeait la plupart du temps suivant la voie qu’il voulait suivre exigeant toujours plus, plus beau, plus simple et élégant. Enfanter les projets auxquels il croyait justifiait tous les sacrifices y compris et surtout ceux de sa relation aux autres. Ainsi le texte lève le voile sur ses relations avec Steve Wozniak, John Sculey et de nombreux autres. Il nous permet de comprendre ce qui l’a entrainé dans l’aventure Pixar.

Cette biographie se lit comme un roman, liant le parcours privé et le parcours public. De nombreux témoignages viennent compléter le propos sans l’alourdir. La dernière partie du livre voit la fin du créateur d’Apple approcher et le texte est plus empreint de nostalgie

En grand manipulateur, Jobs voulait être maître de sa biographie, qu’elle soit définitive et n’en permette pas d’autre. Apparemment, il a encore et une dernière fois réussi.

steve-jobs

Référence complète : Steve Jobs – Walter Isaacson – JC Lattès 2011 – ASIN : B005UD7FS2 (Kindle edt.)

Steve Jobs


http://www.goodreads.com/book/add_to_books_widget_frame/1451648537?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : Pro Wicket, par Karthik Gurumurthy

Note : 6 ; Une bonne surprise : globalement clair et pédagogique

Le monde Java s’étoffe décidément de nombre de frameworks open-source aussi surprenants qu’inventifs. Ils constituent, à mon avis, bien plus l’avenir de la plateforme Java Enterprise que l’approche normative que pousse Sun contre vents et marées. Bien sûr, il y a aussi un phénomène de mode sur tous ces frameworks open-source, les nouveaux poussant les anciens. Wicket est l’un des nouveaux venus et vient concourir dans la catégorie pourtant déjà surpeuplée des frameworks de présentation Web !  Mission accomplie, pourtant, car la qualité de ce framework et son approche « disruptive » (une approche mixte xhtml / Java, mais pilotée par le Java) car basée sur des ressources non managées et stateful, en ont rapidement fait un produit populaire. Il a d’ailleurs été accueilli au sein de la communauté Apache.

Tout framework majeur finit par avoir son livre. Dans le cas présent, il n’en existe (ou existait, devrais-je dire) qu’un, celui-ci. Autant dire que je craignais le pire, car le premier livre sur une technologie est pratiquement toujours un ratage total, l’auteur se focalisant plus sur la mise sur le marché que sur la qualités du texte. Apress fait hélas partie des éditeurs soutenant cette approche. A la lecture de ce livre, je dois m’avouer soulagé et agréablement surpris.

Le point fort du livre est sans conteste son approche pédagogique : le framework est introduit progressivement, en commençant par un exemple simple et fonctionnel. Chaque étape, chaque nouvelle fonctionnalité est introduite dans l’étape précédente par la mise en évidence de la lacune de fonctionnalité correspondante. Les exemples sont nombreux et occupent une part importante du texte (pas loin de 40% du texte), mais ils sont hélas souvent émaillés de petites erreurs qui heureusement ne gênent pas leur compréhension.

L’ouvrage est divisé en 9 chapitres, ceux-ci sont donc relativement gros, car le texte compte près de 300 pages, sans les annexes. Le premier chapitre est globalement l’équivalent d’un « hello world » assez étoffé. En réalité, on pourrait déjà écrire et déployer des applications Wicket assez simples à la fin des 33 pages de ce chapitre ! C’est tout dire…

Le chapitre 2 couvre un aspect plus spécifique du framework : les éléments de validation et de conversion. Chemin faisant, nous explorons quelques éléments plus avancés tels que la gestion des propriétés ou les listeners de vues.

Le chapitre 3 est sans aucun doute le plus consistent et le plus important du livre. D’abord par ses 60 pages, ensuite car il couvre complètement une petite étude de cas permettant d’explorer les aspects les plus importants du framework. Vous pouvez facilement vous arrêter à la fin de ce chapitre pour écrire votre première application Wicket et reprendre les aspects plus avancés ultérieurement.

Le chapitre 4, couvrant la structuration des pages est à mon avis le moins réussi et le moins clair. J’avoue avoir décroché assez rapidement.

Un des sujets à la mode est l’intégration de Wicket avec Spring, même si il s’agit là du mariage du veau et du cochon tant ces frameworks sont différents dans leur approche. Le chapitre 5 couvre très clairement le « comment » de ce module d’intégration, mais aussi (bien que plus succinctement) les intégrations Tapestry, Hibernate ou JPA.

Le chapitre 6 reprends là ou le chapitre 2 s’était arrêté pour couvrir l’internationalisation. Utile mais pas passionnant.

Le chapitre 7 couvre le développement de composants Wicket personnalisés. Une section à lire seulement après avoir pris un peu de bouteille avec Wicket.

Ajax est un sujet à la mode, le chapitre 8 n’évite pas le sujet car il lui est consacré, mais le sujet reste traité un peu rapidement ici. On a toutefois assez d’éléments pour démarre avec les composants Ajax de Wicket.

Le dernier chapitre couvre deux sujets qui ne sont pas mineurs : comment tester unitairement nos pages et formulaires Wicket, et ce qu’il y a de neuf dans Wicket 2.0.

En bref, voici un livre pour débuter en tout confort avec Wicket. Cela a été un bon achat… à l’époque. Un petit rafraichissement avec la dernière version du framework et tout serait parfait !

pro-wicket

Référence complète : Pro Wicket – Karthik Gurumurthy – Apress 2006 – ISBN : 1-59059-722-2 ; EAN : 978-1-59059-722-4

Pro Wicket


http://www.goodreads.com/book/add_to_books_widget_frame/1590597222?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : Liferay Portal Administrator’s Guide 2nd édition, par Richard Sevoz Jr

Note : 3 ; Quand on a vraiment besoin, on n’a pas forcément le loisir d’être difficile sur la forme…

La première chose que l’on découvre quand on prend ce livre en main, c’est qu’on n’a pas envie de lire ! Le format n’est pas pratique (trop grand pour un format poche, mais trop petit pour une lecture confortable), le papier est de qualité très médiocre, la mise en page est lamentable, la qualité des illustrations inexistante et même la typographie n’est pas en reste avec ce charmant carnage.

La bête fait 255 pages hors annexes (celles-ci sont anecdotiques) sur seulement 6 chapitres. Des chapitres assez longs en moyenne, donc.

En parcourant le chapitre 2 « initial setup », on s’aperçois toutefois de certaines choses : d’abord il est vrai que les copies d’écran sont franchement trop nombreuses, même si certaines sont utiles (elles ont souvent des indications comme des parties cerclées, au lieu d’être brutes comme c’est trop souvent le cas). Cela explique la longueur inhabituelle de 89 pages pour ce chapitre. Mais les informations sont claires et précises et des recettes d’installation numérotées permettent de venir à bout de difficultés dont on sait qu’elles prennent du temps sinon. A propos de l’installation, la liste des serveurs d’application pour lesquels est fourni une explication est tout simplement impressionnante.

Le chapitre 3 « configuration » est quand même plus court, avec ses 44 pages. Mais il a un petit goût de tutorial un peu cheap dans sa première partie. Le genre où l’on apprend rien. La partie dédiée à la configuration LDAP rattrape un peu le coup.

La configuration avancée, vous savez celle où l’on parle des « ext » est traitée au chapitre 4. C’est le plus long du livre et de loin, avec ses 90 pages ! Les très complexes fichiers de propriétés sont passés en revue, mais souvent avec des explications franchement sibyllines. La recherche et l’exploitation des informations de ce chapitre sont l’affaire de gens motivés et acharnés … et qui en ont vraiment le besoin. Abandonnez l’idée d’en faire une lecture linéaire. Seule la section dédiée à l’installation des plugins nous offre un oasis d’une relative fraicheur.

Le chapitre 5 « enterprise configuration » nous expose en un peu moins de 30 pages les possibilités de déploiement de Liferay en mode « solid rock » : clustering, cache distribué, déploiement à chaud, etc… sont les sujets qui y sont traités. Le chapitre a le mérite de développer un peu ses explications.

Le dernier chapitre « maintaining a Liferay Portal » parle backup, logging, procédures d’upgrades sur une dizaine de pages.

Voilà un texte auquel on ne s’attaque pas pour le plaisir. Si certains chapitres présentent des procédures d’exploitation claires, l’ensemble de la prose est très sèche et peut surtout être utilisée comme référence. Mais même là, ce n’est pas du grand confort.

Un tel ouvrage se doit de rester à jour par rapport aux nouvelles versions de Liferay. Une troisième édition de cet ouvrage y répond.

liferay-portal-admin-2nd

Référence complète : Liferay Portal Administrator’s Guide 2nd édition – Richard Sevoz Jr – Liferay Press 2008

Liferay Administrator's Guide


http://www.goodreads.com/book/add_to_books_widget_frame/0615196489?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : Storage Virtualization, par Tom Clark

Note : 6 ; Vue aérienne de la virtualisation du stockage

Tom Clarke est un des gourous du SAN, il a déjà plusieurs livres sur le sujet à son actif. Celui-ci est le plus récent, ce qui tombe bien car le sujet évolue à toute vitesse ! Ce livre a une vocation introductive sur le sujet, ce qui tombe bien en ce qui me concerne. La taille tout à fait raisonnable de l’ouvrage (175 pages hors annexes) appuie encore ce point. J’ai d’autant apprécié que le texte soit découpé en 14 chapitres, chacun taillant de 10 à 15 pages. Chaque chapitre aborde un thème particulier de ce sujet, je n’aurais pas imaginé qu’il y en autant ! Malgré cela il reste conseillé de lire ces chapitres dans l’ordre, car ils suivent une progression logique.

Les 3 premiers chapitres posent les bases : fichiers, enregistrements, données et structures RAID. En fait, bien que l’auteur pose clairement les différents concepts, il y a peu de nouveautés.

Cela change avec les chapitres 4 à 8 qui détaillent les principes de la virtualisation : au niveau des serveurs source, au niveau des baies de disque ou au niveau du réseau. Ce milieu de livre constitue véritablement la clé de l’ouvrage et présente les concepts importants. La virtualisation au niveau du réseau étant pour moi la véritable découverte.

La fin du livre présente les différentes facettes « externes » de la virtualisation : périphériques, services ou archivage. Ils complètent utilement la description du paysage.

Un aspect important du livre est la taille et la qualité des annexes. Au sein de celles-ci on notera l’annexe C qui collecte les observations d’intervenants impliqués dans ce domaine.

J’ai apprécié ce livre, suffisamment haut niveau pour un nouveau venu comme moi. Je reste malgré tout un peu frustré par le manque de concret de ce livre introductif. Il est bien difficile d’imaginer une architecture sur la base de l’information distillée ici. Il faudra pour cela se rabattre sur le best seller de Tom Clarke, mais celui-ci date quand même de 7 ans…

storage-virtualization

Référence complète : Storage Virtualization, technologies for simplifying data storage and management – Tom Clark – Addison Wesley 2005 – ISBN : 0-321-26251-4 ; EAN : 9 780321 262516

Storage Virtualization: Technologies for Simplifying Data Storage and Management


http://www.goodreads.com/book/add_to_books_widget_frame/0321262514?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : Continuous Integration, par Paul M. Duvall

Note : 3 ; Trop creux !

J’attends incontestablement de la « signature series » d’Addison Wesley qu’elle ne comprenne que des ouvrages de référence. Ce n’est pas le cas ici. Certes, le livre effectue un bon travail pour introduire et convaincre les nouveaux venus des vertus de l’intégration continue, en édictant les principes de base (que j’estime pour ma part connus) et en hésitant pas à les répéter (ce qui est parfois nécessaire).

Cet aspect introductif est en fait l’objet de la première partie, longue de 100 pages. Bien qu’à mon avis la cible de ce type d’ouvrage ne soit pas d’introduire le sujet, mais une expertise sur la mise en pratique, je n’ai rien contre une petite introduction. Mais 20 pages auraient suffi, surtout si l’on considère la teneur. En fait, on y trouve un peu trop de propos de haut niveau, qui me rappellent certains des moins bons volumes de « l’Object Technology series » du même éditeur. Bref, j’arrive à la fin de cette partie, non seulement sans avoir rien appris, mais avec l’impression que j’en sais plus que les auteurs.

La seconde partie est dédiée au traitement en profondeur de l’intégration continue. Le découpage en chapitres est plutôt pertinent : intégration continue des bases de données, tests, inspection, déploiement et feedback. Hélas le traitement des différentes parties manque carrément de profondeur. Les auteurs abordent bien le « ce qu’il faut faire » mais assez peu le « comment faire », hormis quelques exemples de scriptes Ant. À noter, en passant, que la quasi-totalité de l’ouvrage est basée sur le postulat de l’utilisation de Ant et Cruise Control (et de leur équivalent .NET), je suis donc frustré (avec bien d’autres, certainement), moi qui utilise Maven et Hudson (ce dernier outil n’est même pas évoqué dans la liste des outils en annexe, peut-être parce qu’il aspire trop d’utilisateurs de Cruise Control ?).

Bref, on est non seulement déçu par l’absence de recettes concrètes, mais aussi par l’étroitesse des typologies de projets abordés. Je suis déçu également par le discours : n’y a-t-il donc qu’une seule façon d’appréhender l’intégration continue ? Les auteurs posent pourtant de nombreuses questions pertinentes qui sont autant d’obstacles à la mise en œuvre de l’IC, mais leur seule façon d’y répondre est l’objection.  L’expérience nous montre pourtant que l’IC est quelque chose de facile à casser, jamais ce point n’est abordé. Les vraies questions sur la complexité de mise en œuvre de l’IC ne sont jamais évoquées : Commit en deux temps pour les IC cassant trop souvent, cadre technologiques ancien ou hétérogène, équipes nombreuse, build long ou tests volumineux.

Les auteurs se réfèrent souvent à deux textes : le livre de Brad Appleton sur les patterns de gestion de configuration et l’article de Martin Fowler sur l’IC. J’aurais aimé que ce texte ait la profondeur et la pertinence du « Patterns on Configuration Management ». Pour ce qui est de se référer à l’article de Martin Fowler, j’attends simplement mieux d’un livre de 220 pages que de se comparer à un article qui en compte une dizaine.

Donc, grosse déception. Passez votre chemin.

continuous-integration

Référence complète : Continuous Integration, Improving software quality and reducing risk – Paul M. Duvall, with Steve Matyas & Andrew Glover – Addison Wesley / Signature series 2007 – ISBN : 0-321-336338-0 ; EAN : 978 0 321 33638 5

Continuous Integration: Improving Software Quality and Reducing Risk


http://www.goodreads.com/book/add_to_books_widget_frame/0321336380?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : A Requirements Pattern, par Patricia L. Ferdinandi

Note: 2 ; Creux et peu concret!

Tout avait pourtant bien commencé: le titre de l’ouvrage regroupant “pattern” et “requirements”, je ne pouvais l’éviter. Las, l’auteur remplis visiblement son ouvrage en se répétant une multitude de fois, au point que je pense qu’il n’y a de quoi remplir qu’un article. De quoi s’agit-il en fait ? Patricia Fernandini nous expose comment organiser les exigences en une matrice, version élargie du framework de Zachman, selon 3 dimensions représentant: 1) les perspectives, en fait les étapes de raffinement des exigences 2) le focus (qui, quoi, où, pourquoi et comment, plus les contraintes produit et projet) 3) les communautés (IT, business, etc..). L’originalité et l’intérêt de l’approche (celle qui justifie que la note n’est pas zéro) est que l’auteur ne s’arrête pas aux exigences logicielles, mais élargit celles-ci de façon intégré à tous les domaines de l’entreprise qui peuvent être concernés par l’idée ou besoin initial qui est investigué. Malheureusement, en essayant de rendre abstrait cette approche, c’est à dire non dépendante d’une méthodologie de capture des exigences particulière, l’auteur rend intangible la concrétisation de son approche, les exemples donnés en annexe ne nous éclairant guère car il ne s’agit juste que de résumés de retour d’expérience. L’aspect “pattern” est visiblement mal compris de l’auteur qui s’emmêle entre les notions de patterns, méta-patterns, anti-patterns et framework, embrouillant le lecteur au passage. Des patterns d’exigence pour l’internet: il y avait sans problème de quoi faire, mais c’est raté!

requirements-patterns

Référence complète : A Requirements Pattern, Succeeding in the Internet economy – Patricia L. Ferdinandi – Addison Wesley / I.T. series 2002 – ISBN: 0-201-73826-0

A Requirements Pattern


http://www.goodreads.com/book/add_to_books_widget_frame/0201738260?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : SQL Server Hardware par Glenn Berry

Note : 5 ; Passionnant et frustrant tout à la fois

Voilà un livre tout à fait original, mais combien important. Il est en effet peu réaliste d’effectuer un déploiement optimisé de base de données sans prendre en considération l’aspect matériel. Et là on est souvent obligé de se débrouiller avec des informations glanées à droite ou à gauche.

Tout d’abord la taille du livre : s’il compte 320 pages, il faut prendre en considération la taille de la police de caractères qui est très grande. Je dirais qu’au final on est plus proche d’un livre classique de 200 pages environs.

Pourquoi ai-je trouvé ce livre passionnant ? Il est éclairant sur de nombreux points : décodage des roadmaps processeurs, choix des architectures machine multi-core, stockage RAID, SAN et SSD et pas mal de choses encore. On y évoque des points de configuration tout à fait pertinents : réglage énergétique, hyper threading, filegroups, etc.. De plus l’auteur prend de réelles positions par rapport à ces choix et c’est bien ce que j’attend d’un ouvrage.

Pourquoi l’ai-je trouvé décevant ? Tout d’abord j’ai trouvé le texte hors sujet sur le détail des fonctionnalités des différentes éditions et versions de SQL Server. On est loin du hardware et ce genre d’information traine ailleurs. Le dernier chapitre sur l’installation et la configuration ressemble carrément à du remplissage et je reste mitigé sur le chapitre concernant le système d’exploitation. D’un autre côté, si les chapitres purement destinés u matériel sont riches d’information, j’aurais aimé une étude plus approfondie du fonctionnement comparé de SQL OS versus l’hyper threading ou la virtualisation (voir même les deux). Le fonctionnement de la lecture/écriture de blocs avec le fonctionnement d’un SAN ou du SSD, les impacts sur l’utilisation en I/O d’un iSCSI ou d’un fiber channel, idem pour l’alignement des partitions.

Bref, si l’on a un point de vue « utilisateur » d’un DBA très averti sur les aspects matériels d’un SQL Server, il manque de mon point de vue une analyse en profondeur de ces aspects pour en saisir toutes les susceptibilités.

Au final, voici un livre qui aurait pu être mieux, bien mieux ! Mais il se lit bien et même très vite, et donne beaucoup d’indications et d’informations pour réussir son choix matériel et la configuration d’une machine SQL Server. N’est-ce pas l’essentiel ? Et ne serait-ce que pour cela, j’en recommande la lecture.

sql-server-hardware

Référence complète : SQL Server Hardware – Glenn Berry – Simple Talk Publishing 2011 – ISBN : 978 1 906434 63 2

SQL Server Hardware


http://www.goodreads.com/book/add_to_books_widget_frame/1906434638?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : Modular java, par Craig Walls

Note: 8 ; Vraiment un excellent tutorial, sur OSGi d’abord, puis sur Spring DM ! Bravo !

Craig Walls est déjà l’auteur de l’excellent « Spring in Action ». Je connaissais donc déjà ses talents d’auteur. Il n’a pas failli à sa réputation ici. En fait, je pense qu’il a fait encore mieux ! Le challenge de réussir ce tutorial en 200 pages, se partageant entre OSGi « brut » d’abord, puis ensuite sur Spring DM y est aussi pour beaucoup.

Dès le premier chapitre, on est séduit par la limpidité de la présentation d’OSGi et de l’intérêt d’un approche « composant runtime ». On n’en a que d’avantage l’eau à la bouche pour attaquer la première partie, celle qui présentera le développement OSGi sans Spring, soit 90 pages sur 4 chapitres.

Très intelligemment, le chapitre 2 présente la construction d’un bundle OSGi minimaliste, mais où l’on construit toute la plomberie à la main ! C’est bel et bien la meilleure façon de comprendre cette plomberie. Jouer avec la console OSGi (un outil dont la compréhension est indispensable), est le complément naturel de cette approche. C’est l’occasion d’aborder les différentes implémentations d’OSGi et principalement les deux implémentations open source : Equinox et Apache Felix. L’auteur penche pour Equinox, c’est visible.

Le troisième chapitre peut paraître curieux, car on y découvre peu de choses sur OSGi ! L’auteur nous y présente l’architecture de l’application que nous allons construire, mais surtout il introduit les outils PAX construct, une boit à outil qui va vite s’avérer indispensable pour construire et tester les bundles OSGi.

Les chapitres 4 et 5 abordent enfin la création de différents types de bundles et le développement de services. Au bout du 5ème chapitre, nous sommes devenus opérationnels pour construire des bundles OSGi qui coopèrent ensemble. Toute cette première partie constitue un tutorial remarquable.

La seconde partie va aborder l’utilisation de Spring DM afin de faciliter le développement de bundles OSGi en en masquant la complexité. 3 chapitres et 65 pages suffisent à la tâche. Le chapitre le plus important est d’ailleurs le premier de cette partie (le chapitre 6) car il explique comment la plomberie du bundle est prise en charge par le contexte Spring et l’injection de dépendances inter bundles !

C’est aux « web bundles » que ce se consacre le chapitre 7. Je l’ai trouvé personnellement assez complexe, car il a trait à beaucoup de problématiques de configuration, pour déployer des bundles sur Tomcat et sur Jetty et pour régler des problématiques de listener http et autres… Disons que c’est un mal nécessaire (ou incontournable).

Le chapitre 8 revient au développement et nous présente la création de fragments. Je pense que cela aurait pu être présenté en première partie, mais ça marche aussi ici ! Petit détail, cela ne profitera qu’à ceux qui développent avec Equinox. Dommage pour ceux qui ont choisi Apache Felix !

La dernière partie, constituée de deux chapitres, adresse le passage en production : déploiement, administration, configuration et suivi d’exploitation. Tout cela est remarquablement expliqué en peu de pages.

Ce livre ne vous donnera peut-être pas des informations complètes sur tout ce que vous pourriez savoir sur OSGi et Spring DM, ce n’est pas une bible ! Mais je pense que c’est sa qualité première, il se débarrasse du superflu pour se concentrer sur l’indispensable et nous mettre le pied à l’étrier du développement avec Spring DM. Un tutorial, un vrai. La mission est remplie à 100% ! Je conseille sans réserve ce livre qui fut une bonne surprise.

modular-java-pragprog

Référence complète : Modular java, creating flexible applications with OSGi and Spring – Craig Walls – The Pragmatic Bookshelf 2009 – ISBN: 1-934356-40-9 ; EAN: 978 1934356 40 1

Modular Java: Creating Flexible Applications with Osgi and Spring


http://www.goodreads.com/book/add_to_books_widget_frame/1934356409?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : UML pour les décideurs, par Franck Vallée

Note : 4 ; Le cycle en « Y » n’est pas mort, il bouge encore… « UML pour les vieux » aurait-il été un meilleur titre ?

UML peut-il réellement être un outil pour le décideur. Personnellement j’en doute, bien que la finalité d’une notation soit d’être un vecteur de communication. Le pari est en tout cas ambitieux, voyons s’il est réussi, et pour se faire passons en revue le contenu du livre. Celui-ci compte 270 pages découpés en 8 chapitres formant 2 parties : « UML en puissance » et « Déployer UML dans l’entreprise ». On peut en conclure que l’on va avoir des chapitres relativement gros, disons selon la tendance française plutôt que selon le mode américain.

Le premier chapitre, UML et le génie logiciel, est un tour rapide d’UML. Il compte tout de même 65 pages et fait un tour très complet de la notation UML 2. Elle replace l’utilisation de la notation dans une gestion de projet classique « phasée » séparant distinctement l’analyse de la conception. Ce dernier point était l’un des axes prépondérants de l’approche en « Y » que je dénie complètement.

Au chapitre 2, on se concentre sur les cas d’utilisation. Je n’y ai rien trouvé de neuf, à part 6 pages sur les 50 de ce chapitres dédiés au ROI à partir des cas d’utilisation.

Le chapitre 3 couvre aussi 50 pages et est dédié à l’utilisation d’UML en conception. Enfin quand je dis en conception, je devrais dire en implémentation, car on court-circuite joyeusement une vraie conception objet, pour passer directement de l’analyse à sa projection sur l’infrastructure technique. Je ne suis pas un grand supporter du phasage, mais je ne le suis pas non plus de l’approche consistant à tartiner la coloration technique sur un modèle d’analyse ! Pas convaincant !

Le chapitre 4 nous parle processus, organisation du projet et rôles. Effectivement, on y ressort le cycle en « Y ». Je croyais pourtant qu’il était mort, mais il semble qu’il bouge encore…

Le chapitre 5, le premier de la seconde partie est très court : 10 pages. Son but est de formuler les objectifs de changements avec UML. Ca c’est le titre du chapitre. Dans la pratique, je n’ai pas compris le but de ce chapitre.

Le chapitre 6 « méthodes et outils » couvre sur 40 pages la question des différents types de cycle de développement. C’est relativement intéressant (XP y est rapidement classé comme un procès pour les petits projets ne posant de toute façon as de problème). L’affinité de l’auteur pour Unified Process et MDA arrive assez rapidement.

Le chapitre 7 « changer pour UML » nous apporte une analyse assez précise en terme de coût et d’impact du passage sur UML. Enfin le chapitre 8 « aider la prise de décision » conclut sur 6 pages en disant qu’UML, c’est bien.

Je connais Franck Vallée et l’apprécie. Mais je trouve que ce livre apporte peu de choses, surtout en 2005. Les points différenciant par rapport à un ouvrage pur UML sont peu évident. En tout cas ils ne m’apparaissent pas. Le focus méthodologique qui y est décrit me replonge dans un monde ancien, sclérosé et poussiéreux avec lequel je ne veux plus rien à voir. Quand à la relation avec le titre elle est presque inexistante. Je dénombre environ 20 pages du livre qui semblent à mon avis adresser le sujet.

Pour ce qui est d’évoquer UML de manière plus large (si l’on oublie la question du « processus pour les vieux »), eh bien Franck Vallée écrit très bien, sa description d’UML est claire et pertinente. L’analyste pourra lire cette prose avec profit.

uml-decideurs

Référence complète : UML pour les décideurs – Franck Vallée – Eyrolles 2005 – ISBN : 2-212-11621-7

UML pour les décideurs


http://www.goodreads.com/book/add_to_books_widget_frame/2212116217?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on