Note de lecture : Expert Cube Development with Microsoft SQL Server 2008 Analysis Services, parChris Webb, Alberto Ferrari & Marco Russo

Note : 6 ; Peut-être pas expert, mais certainement éclairé.

Comme son nom l’indique, ce livre a pour but de faire de vous un « expert » du décisionnel avec SQL Server et plus précisément avec son sous-ensemble Analysis Services. Expert est certainement prétentieux. Disons, raisonnablement opérationnel. Pour arriver à nos fins, ce texte compte 330 pages sur 10 chapitres. Voyons ce qu’il en est.

Le premier chapitre s’abstrait de SQL Server pour présenter les fondamentaux de la conception de modèles OLAP. Il est assez surprenant de pragmatisme et d’efficacité. La plupart des choses que l’on a besoin de savoir sont couvertes dans ses 36 pages.

Le second chapitre ressemble déjà plus à du Packt publishing : on est guidé pas par pas vers la création d’un premier cube simple. Le 3ème chapitre y fait suite avec des éléments plus complexes comme les SCD.

Les aspects mesures et groupes de mesures complètent le panel de ce que l’on peut faire sur les dimensions au chapitre 4.

Les chapitres 5 à 7 se focalisent sur les aspects analyse. D’abord avec le forage de données au chapitre 5, puis avec l’ajout d’indicateurs calculés au chapitre 6 et enfin avec des opérations de conversion au chapitre 7.

Les 3 derniers chapitres ont une coloration « production ». Ca commence au chapitre 8 avec l’exploration des aspects performance. On y parle partition, agrégations et tuning des requêtes MDX. Le chapitre 9 explore les aspects sécurité de façon assez approfondie, plus qu’on en a le plus souvent besoin. Par contre le sujet de l’accès au cube par http mérite le détour. Le chapitre 10 porte le doux nom de « productionization ». On y parle beaucoup gestion des partitions. Enfin le chapitre 11 aborde le monitoring mais n’est pas inoubliable.

Contrairement au livre de Larson, celui-ci fait le choix de se focaliser uniquement sur la construction du cube et non pas sur tout le processus décisionnel qui inclurait alors SSIS. Même si l’on peut arguer que les approches sont différentes et les livres difficilement comparables, je préfère Larson à la fois plus complet et plus pédagogique.

Parmi les points intéressants : des conseils d’usage pour ne pas se retrouver le bac dans l’eau et des liens vers des articles de blog développant tel ou tel aspect…

Expert Cube Developpement with Microsoft SQL Server 2008 Analysis Services

Référence complète : Expert Cube Development with Microsoft SQL Server 2008 Analysis Services – Chris Webb, Alberto Ferrari & Marco Russo – Packt Publishing 2009 – ISBN : 978-1-847197-221

Expert Cube Development with Microsoft SQL Server 2008 Analysis Services

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

Note de lecture : SQL Avancé, par Joe Celko

Note : 8 ; La grande référence du SQL

Joe Celko, c’est un peu le pape du SQL. Avec lui, on est certain que le sujet ne sera pas traité superficiellement. L’ouvrage accuse près de 20 ans d’âge, mais le sujet ne subit pas des mutations telles que l’ouvrage en devienne obsolète. Voyons ce qu’il en est. L’ouvrage comprends 450 pages incluant 2 courtes annexes. Il est découpé en pas moins de 29 chapitres, donc avec une moyenne d’environ 15 pages pour chacun d’entre eux.

La courte introduction du chapitre 1 nous amène directement au solide chapitre 2 qui pose les bases de la modélisation de bases de données. On y parle formes normales, normalisation … et dénormalisation.

Les chapitre 3, 4 et 5 sont consacrés aux types de données numériques, temps et chaines de caractères respectivement. Ce sont des exemples de précision et de qualité. Nombre de subtilités que l’on peine à maîtriser sont développées ici. Les subtilités des représentations en virgules flottantes ne sont pas esquivées, tout comme les aspects les plus pointus sur les calculs de dates.

Consacrer un chapitre à NULL pourrait paraître exagéré, mais le chapitre 6 couvre le sujet de manière particulièrement pointue voir ardue, puisque l’on aborde les logiques d’opération avec NULL. Par comparaison, le chapitre 7 consacré aux « autres objets du schéma » est un joyeux fourre-tout traité de manière plutôt succincte.

Le chapitre 8 couvrant les opérations sur les tables nous permet de souffler un peu. Pas grand chose de nouveau pour moi, mais le sujet des delete, insert et update est couvert de manière plus que convenable.

Du chapitre 9 au chapitre 15, on couvre les prédicats au sens large. D’abord avec les opérateurs de comparaison au chapitre 9, également appelés « thêta » par Codd (j’ignorais cela). Les aspects de conversion de données qui y sont corrélés sont aussi couverts. Les prédicats avec valeurs et les prédicats like sont éjectés en quelques pages. Between et overlap sont des prédicats que j’utilise très peu, ils sont particulièrement bien appréhendés dans le chapitre 12, exemples et schémas à l’appuis !

Au chapitre 13, on appends que « in » (et « not in ») sont sujets à des questions de performance et l’auteur nous offre quelques pistes de réflexion. Fort logiquement, le chapitre 14 aborde « exists » et couvre des questions telles que le comportement avec des valeurs nulles ou le choix d’utilisation d’exists par rapport à une jointure. On termine le tour du propriétaire avec des questions sur les sous-requêtes, l’usage de « unique », etc… au chapitre 15.

Le chapitre 16 est un incontournable : il traite du « select ». Cela conduit à un chapitre d’une trentaine de pages qui inclut fort naturellement des éléments tels que les jointures de tout poil et autres « group by ». Dans le même ordre d’idées, les vues traitées au chapitre 17 nécessitent un peu plus de 20 pages dans lesquelles sont évoquées les vues en lecture seule ou en écriture, les indexations, les vues matérialisées ou les vues imbriquées. Le chapitre 18 sur les partitions est un peu plus ésotérique pour moi, mais il est assez court.

Du chapitre 19 au chapitre 22 on évoque les opérations sur les agrégats. Ca commence doucement au chapitre 19 avec les opérations sur les groupes avec « group by » et « having », même si l’auteur va bien plus loin que ce dont j’ai l’habitude. Les fonctions d’agrégats (count, avg, etc…) sont des grands classiques. Ils sont traités sans surprises au chapitre 20. Les surprises, on en a plus au chapitre 21 avec les statistiques. Franchement, ça arrache bien la gueule avec les médianes de Murchison ou de Celko (eh oui !). Variance, écart-type, pourcentages cumulés : on peut faire tout ça avec SQL ! Les régions, suites et séquences traitées au chapitre 22 sont au-delà de ce que j’ai l’habitude de voir. Mais le chapitre est assez court.

Le chapitre 23 est une petite curiosité car il aborde un sujet hérétique en SQL : la représentation des tableaux dans les tables. Amusant.
Les chapitre 24 et 25 parlent des opérations sur les ensembles. D’abord avec les fameuses clauses union et intersect. Ensuite avec les sous-ensembles au chapitre 25.

La représentation des graphes en bases relationnelles est un sujet complexe, essentiellement parce que ce type de base n’est pas fait pour cela. Les chapitres 26 et 27 sont plutôt velus car ils abordent directement cette question. D’abord avec les arbres au chapitre 26. L’auteur n’est pas avare de schémas, de représentation et d’algorithmes de recherche. On y traite aussi des fonction d’insertion, de suppression et de rééquilibrage !

Le chapitre 27 dédié aux graphes paraît presque simple par comparaison. Aussi solidement traité cela soit-il, Joe Celko n’a pas tout dit sur le sujet : il a consacré un autre ouvrage spécifiquement sur cette question.

Les deux derniers chapitres du livre peuvent être considérés comme des conseils d’expert. Le chapitre 28 est dédié aux performances : à quelles éléments de la requête doit-on prêter attention, que faut-il éviter, etc… Le dernier chapitre est consacré à des considération de conception assez pointues : échelles de valeur, codification, clés de vérification, etc… C’est pas pour les enfants !

Quand on plonge dans ce livre, on comprend rapidement que la réputation de Joe Celko en tant qu’autorité du SQL n’est pas usurpée. C’est du très, très solide ! La prose est assez accessible, mais l’auteur ne fait aucune concession au niveau d’information fourni. Et quand les explications sont pointues (donc assez souvent), il convient de bien s’accrocher. Heureusement, la matière s’appuie de très nombreux exemples en code SQL, avec des données et des représentations graphiques. Cette édition est bien sûr assez ancienne. Il est d’ailleurs amusant de voir l’auteur se référer très souvent au Cobol (parfois même au PL/1) et à de rares occasions au C. Des éditions ultérieures ont vu le jour, la dernière date de 2010 et compte près de 900 pages !

Je ne saurais trop conseiller Joe Celko pour quiconque veut rentrer sérieusement dans le SQL. Mais cette lecture est aussi un sérieux investissement de temps et d’auto-formation !

SQL Avancé, 2nd édition

Référence complète : SQL Avancé – Joe Celko – Vuibert 1999 (V.O. : Joe Celko’s SQL for Smarties : Advanced SQL programming ; Morgan Kauffman pub. 1995 ; ISBN : 94104-3205) – ISBN : 9782711786367

Harry Potter and the Goblet of Fire (Harry Potter, #4)

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

Note de lecture : Don’t Just Roll the Dices 2nd edition, par Neil Davidson & Jamie Rumbelow

Note : 8 ; Condensé, clair, bien écrit, pertinent et qui plus est, gratuit ! Ne ratez pas cette lecture !

Quel est le bon prix pour votre produit ? Est-ce simplement son coût agrémenté d’une marge ? Dans ce livre (qui est plutôt un livret), Neil Davidson nous propose une réflexion approfondie sur la question, en partie étayée par des exemples du marché, mais aussi en bonne partie étayée par sa propre expérience à Red Gate Software. Ce texte ne livre pas de solution magique, mais il donne d’excellentes voies à explorer et donne des clés pour les utiliser. D’une certaine manière, il reflète en condensé le « business model generation » qu’il ne cite pourtant pas dans les sources.

Court, ce texte l’est avec moins de 70 pages. En fait, il donne même l’impression d’avoir été raccourcis dans sa seconde édition, car il était long d’environ 80 pages lorsqu’il était publié chez Simple Talk Publishing. Mais je pense (sans l’avoir vérifié) que le format du nouvel éditeur donne simplement un total de pages moins élevé pour la même somme de contenu. Le livre compte 6 chapitres, ils sont assez courts, le plus velu totalisant à lui seul un peu plus de 20 pages.

Le premier chapitre « economics » est une mise en bouche où l’auteur nous expose la théorie du prix de vente, c’est à dire l’équation prix / volume qui nous amène à un point d’optimal hélas pratiquement impossible à deviner. C’est plein de graphiques, facile et agréable à lire.

Le second chapitre « pricing psychology » s’attaque à la perception du produit et l’auteur propose plusieurs axes pour adresser cette perception. De nouveau on retrouve trace du « business model generation », mais c’est dit de manière simple, sans modèle et permet d’appréhender le concept et ses variantes efficacement en quelques pages.

Le chapitre trois « pricing pitfalls » nous parle des différents écueils à adresser : la concurrence, le « switch », la corrélation du prix et du coût, etc… C’est peut-être le chapitre le plus faible, mais croyez-moi, ce n’est pas une raison pour le sauter !

Le chapitre 4 « advanced pricing » est le fameux chapitre costaud. Celui-ci présente les différents axes stratégiques permettant des déclinaisons de prix : versions, déclinaisons, zones géographiques ou groupes démographiques, bundles, stratégies de licence, abonnements, etc… L’auteur étaye chaque cas de figure d’informations et de points d’attentions et donne souvent des exemples de réussites mais aussi d’échecs en les étayant. Le condensé d’information donné dans ces 20 pages laisse tout bonnement dubitatif !

Le chapitre 5 « pricing perception » discute du « message » qu’envoie le prix ou la stratégie de prix que vous prévoyez et la nécessité d’aligner le marketing et le service à ce message. Et une dernière chose : l’auteur est clair sur l’inutilité des études de marché sur ce point. Par contre, on peut faire des expérimentations. A ce point, le texte se teinte un peu de « Lean Startup ».

On a déjà beaucoup de matériel utile, mais le petit chapitre 6 est une cerise sur le gâteau : une checklist pour aider notre réflexion sur le prix ! Evidemment, il reprends de manière extrêmement synthétique les points déjà vus. Juste 2 pages pour ça, bon boulot !

Vous l’aurez compris à mon enthousiasme : je recommande fortement cette lecture qui ne mobilisera guère que 2 ou 3 heures de votre attention. Savoir ce livre gratuit est un plus mais il justifie sans problème un prix, même en eBook. J’ai eu l’impression de lire sinon un condensé du « business model generation », une vue de celui-ci filtrée sur le thème du prix et complétée de matériel original. A ne pas rater, donc !

Don't just roll the dice, 2nd edition

Référence complète : Don’t Just Roll the Dices, 2nd edition – Neil Davidson & Jamie Rumbelow – Efendi Books 2012 – ISBN : 978-0-9571791-2-7

Don t Just Roll the Dice, 2nd edition

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

Note de lecture : Alan M. Turing, par Sara Turing

Note : 4 ; Point et contrepoint sur la vie d’Alan Turing

Les parents ne devraient jamais survivre à leurs enfants. C’est pourtant la mère d’Alan Turing qui signe la biographie d’une des plus grandes figures scientifiques du 20ème sciècle décédé à l’age de 42 ans.

En fait, le livre (quoique court) ne compte pas seulement la biographie écrite par Sara Turing. Sur les 166 pages du texte, seules un peu plus de 120 viennent de sa plume. La courte seconde partie est dédiée à deux essais sur le « computing machinery » et « morphogenesis ». S’ils aident en partie à comprendre l’œuvre d’Alan Turing, ils ne sont pas très faciles d’accès, surtout le second. Il faut aussi compter avec la contribution de son frère John qui compte une vingtaine de pages (j’y reviendrais) et aussi sur les 18 pages d’avant-propos qui donnent un éclairage un peu plus neutre.

Revenons sur le texte de Sara Turing.

Sara Turing a écrit cette biographie en 1959, soit 5 ans après le décès de son fils cadet et alors agée de 78 ans. Le texte compte 13 chapitres, chacun étant très court. Je n’ai pas trouvé ce texte facile à lire, le style est de l’anglais ancien qui m’a fait pas mal souffrir et le moins que l’on puisse dire est qu’il manque de souffle épique. On ne peut non plus espérer que ce texte soit objectif. Comme le dit son frère dans sa partie, la lecture donne l’impression d’un Alan Turing parangon de vertu, ce qui est quand même difficile à croire. Le texte est découpée en périodes de la vie du mathématicien. Ce sont surtout des faits et des annecdoctes plus que des pensées profondes. Le texte est décevant à cet égard. Les 4 ou 5 premiers chapitres sont même assez pénibles à lire, la chose s’améliore un peu ensuite.

J’aurais aimé une contribution plus conséquente de son frère John. Mais il n’a écrit ce chapitre que pour offrir un contrepoint à la prose de sa mère qu’il juge biaisée (j’avoue que c’est assez facile à admettre). Sa contribution n’est pas nécessairemnt objective non plus, car il est très critique à propos de son jeune frère à de mains égards, mais il l’est aussi à propos de lui-même. Ce texte se lit mieux et va plus en profondeur que celui de sa mère.

Il eut été illusoire d’aborder ce livre en pensant lire la « biographie définitive » d’Alan Turing. Sara Turing n’est pas une écrivain et le contenu est visiblement emprint de nombreux biais, et même révisioniste à certians égards. A aucun moment elle n’évoque son homosexualité, même si on ne saurait réduire le célèbre mathématicien à ce seul aspect de sa personnalité. Il complète certainement l’image que l’on pourra s’en faire, mais il convient de rester critique par rapport à cette lecture.

Alan M. Turing

Référence complète : Alan M. Turing – Sara Turing – Cambridge University Press 1959, 2012 – ISBN : 978-1-107-02058-0
Point et contrepoint sur la vie d’Alan Turing

Alan M. Turing: Centenary Edition

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

Coaching Plain & Simple, par Peter Szabo & Daniel Meier

Note 7 ; Un texte concis et clair pour parler de coaching bref.
J’aime bien les livres très courts pour 3 raisons :

  • On se voit avancer rapidement vers la conclusion de l’ouvrage.
  • Le format accentue la nécessité d’efficacité du propos. Un point que je suis pas forcément quand is s’agit de rédiger la note de lecture…
  • Et ça me permet de produire une note de lecture à pas cher, sans avoir investi terriblement dans la lecture.

Ici, il est question de coaching bref, cela paraît donc cohérent que le support écrit le soit aussi. En l’occurrence, on parle ici d’une centaine de pages sur 12 chapitres auxquels il faut ajouter une FAQ sous forme d’interview avec les auteurs.
Qu’est-ce que le coaching ? C’est une question reccurente, sutout aujourd’hui quand tout le monde s’auto-programme « coach ». Les auteurs nous donnent 2 clés :

  • L’importance du cadre, et comment il peut sublimer le contenu, par exemple dans le cas d’une peinture.
  • Les 3 clés du coach : la conscience (awareness), la confiance et le choix.

Le chapitre 2 est une sorte de prélude au reste du livre qui est spécifiquement consacré au coaching « solution focus ». Il pose et argumente les 4 postulats sur l’intérêt d’être bref.


Le coaching bref est constitué de conversations qui vont généralement de 1 à 3, guère plus. Les auteurs exposent au chapitre 3 la trame de ces conversations, qui est aussi la trame des chapitres suivants (auquel il faudra quand même ajouter un chapitre sur la prise de contact en amont, et sur le « follow up » en aval) :

  • L’agrément sur le coaching, entre le coach et le coaché.
  • Le futur préféré.
  • L’identification des précurseurs de la solution.
  • Les indices de progrès.
  • La conclusion de la session.

Chaque point est traité de manière très concise, en une dizaine de pages, voir moins, généralement. Le format étant presqu’un format poche, cela donne une idée du condensé que propose chaque partie. Mais il n’y a pas de miracle non plus, le livre permet de faire sentir et comprendre ce que l’on dot faire dans du coaching « solution focus », il donne autant de clé de travail que possible : comment réagir dans telle ou telle situation, quelles sont les questions clé… mais il ne peut se substituer à la pratique. Les auteurs sont clairs et honnêtes sur ce point : il faut apprendre à « danser » avec le coaché.
Ce n’est pas un livre qui se complet dans la théorie pour autant : les auteurs donnent des exemples et travaillent à partir de cela. En fait, le gros du texte est construit autour de l’étude de cas de Mme K., issu d’un cas réel de coaching des auteurs. Une lecture au ratio temps passé / passage de compétence très important !

Coaching Plain & Simple

Référence complète : Coaching Plain & Simple, Solution-focused brief coaching essentials – Peter Szabo & Daniel Meier – W. W. Norton & Company 2009 (V.O. : Coaching – Erfrischend Einfach : Einführung ins lösungsorientierte Kurzzeitcoaching ; Solutionsurfers Gmbh / Weiterbildungsforum 2008) – ISBN : 978-0-393-70593-5

Coaching Plain & Simple: Solution-focused Brief Coaching Essentials


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

Note de lecture : Service Oriented Java Business Integration, par Binildas C. A.

Note : 7 ; Du concret sur l’ESB, mais un texte qui accuse aussi son âge…

Pas facile de s’y retrouver au sein du concept technico-marketing qu’est l’ESB ! Ce dont on a surtout besoin, c’est du concret. Et c’est exactement ce que l’auteur nous propose ici. Malgré son titre généraliste, le livre se focalise presqu’exclusivement sur la mise en œuvre de l’ESB open-source d’Apache, ServiceMix et de la norme JBI qu’il dessert.

En fait, les 2 premiers chapitres sont consacrés à la vue générale des problématiques d’intégration. Le premier chapitre présente les banalités habituelles sur l’ESB (mais plutôt bien présentées) et le second se focalise sur l’aspect plus technique en introduisant JBI et les « integration patterns ». Ce n’est qu’au chapitre 3 (on est déjà page 57) que ServiceMix, ou plutôt la vue globale de son architecture, est introduit.

A partir du chapitre 4, on passe en revue les différents types de binding, selon une complexité croissante. Tout d’abord un binding simple, dit conventionnel (chapitre 4), puis un binding « contract last » avec XFire (chapitre 5). Un binding plus complexe à trois niveaux est abordé au chapitre 8, mettant en œuvre des EJB, tandis que le binding de POJO est enfin abordé au chapitre 9. Puis c’est le tour de l’approche « gateway » ou « contract first » avec Axis (chapitre 10).

Les chapitres 6 et 7 font figure d’interludes. Il était difficile d’aller bien loin sans aborder les concepts de packaging et de déploiement des services ServiceMix, c’est chose faite au chapitre 6. De même, il est parfois utile de compléter la panoplie de bindings proposés par l’ESB, c’est l’objet du chapitre 7.

La problématique du transport est aussi un domaine où l’ESB permet une certaine souplesse. Le chapitre 11 montre comment accéder un Web Service au travers de JMS. Au chapitre 12, on voit comment effectuer le binding entre Java et XML (le langage natif de l’ESB) en utilisant en autre XStream. Enfin le chapitre 13 aborde le point plus complexe mais aussi plus exotique des proxys JBI.

Les derniers chapitres peuvent être vus comme des aspects avancés, donc pas forcément indispensables de prime abord. Le chapitre 14 aborde la problématique de versioning des Web Services, utile dans le cadre d’un SI « évolutif ». Le très long chapitre 15 traduit en services ServiceMix de nombreux integration patterns. L’agrégation de services est abordée au chapitre 16. Il s’agit d’un sujet plutôt avancé et c’est tant mieux car le propos n’est pas des plus clairs. On finit en ordre dispersé par un chapitre fourre-tout, avec les transactions, la sécurité le clustering et la vie des bêtes au chapitre 17. J’espère qu’il y a mieux ailleurs car ce n’est pas la joie.

Comme on le voit, c’est un tour d’horizon plutôt complet qui nous est proposé sur 400 pages. Il s’adresse clairement aux architectes. On y aborde les concepts et le code. Si le code Java est clair, il est fort dommage (et c’est mon reproche principal) que les configurations ServiceMix pourtant complexes soient aussi peu décortiquées. Leur compréhension reste ardue.

Ce type d’ouvrage est hélas sujet à l’obsolescence. Ne nous voilons pas la face, c’est bien le cas ici. ServiceMix (pour ne parler que de lui) a déjà changé de version majeure depuis un moment. Il n’a plus nécessairement la pertinence qu’il avait au moment de sa sortie…

service-oriented-java-bi

Référence complète : Service Oriented Java Business Integration – Binildas C. A. – Packt Publishing 2008 – EAN : 978 1 847194 40 4

Service-Oriented Java Business Integration

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

Note de lecture : PostgreSQL, A comprehensive guide par Korry Douglas & Susan Douglas

Note : 7 ; PostgreSQL de haut en bas!

750 pages sur 21 chapitres, voici un livre que l’on ne peut accuser d’être léger ! Les deux premiers chapitres servent surtout à introduire le SQL à la mode PostgreSQL avec ses spécificités. Le tout est plutôt pédagogique et couvre 130 pages. Pour terminer cette première partie, les chapitres 3 et 4 nous emmènent plus loin sur la structure des bases de données, des clusters et des transactions, ainsi que sur les modèles physiques sous-jacent de PostgreSQL pour comprendre comment en optimiser les performances. Du bon boulot !

Avec la seconde partie, fini de rire! On attaque les API en C pour écrire des fonctions permettant d’étendre PostrgreSQL au chapitre 6. Le retour au SQL (PL/pgSQL pour être exact) est bizarre au chapitre 7, surtout que c’est pour retourner à l’API C au chapitre 8 ! Le propos n’est pas très ais à suivre, il se poursuit au chapitre 9, tandis que le chapitre 10 nous en livre la variante C++. Il ne s’agit ni plus ni moins que de la reprise de ce qui est déjà vu au chapitre 8. Et désolé pour ceux qui espéraient du grand C++ ! Le chapitre 11 nous montre une autre variante de l’interfaçage PostgreSQL en C, via le préprocesseur ecpg qui permet d’écrire directement du SQL dans le code source. Je vous le dit: c’est déroutant! Moins déroutant est le chapitre 12 qui traite de cet interfaçage via le désormais classique ODBC. D’ODBC à JDBC il n’y a qu’un pas, ou un chapitre en l’occurrence, car c’est le chapitre 13 qui traite de l’interfaçage Java. Et l’on a donc la joie de voir la même approche se dérouler pour la 6ème fois ! De Java, on passé à Perl au chapitre 14, toujours avec la même structure de chapitre et le mêle exemple (pour la 7ème fois, donc). Au chapitre 15, c’est au tour de PHP, puis de Tcl/Tk au chapitre 16 (je croyais celui-ci mort et enterré). Enfin Python ferme la marche au chapitre 17.

Après la phase “comique de répétition” des interfaçages, la 3ème partie traite de l’administration. Il est assez curieux que l’on doive attendre le chapitre 19 pour voir traité l’installation du serveur ! Ce chapitre traite par ailleurs des très classiques gestion des utilisateurs, créations de bases avec sauvegarde et restauration de celles-ci. On y traite par ailleurs plutôt efficacement de tout ce qui a trait au paramètres d’exécution du serveur. Enfin le chapitre 20 traite de la localisation (pas seulement la langue, mais aussi les unités de mesure, de monnaie, etc…) tandis que les aspect sécurité ferment la marche au chapitre 21.

Dans ce livre, les aspects interfaçage avec différents langage tienne la plus grande part du livre. Aussi celui-ci vous sera surtout utile si vous utilisez la base de données de manière programmatique, surtout en C. Mais j’ai aussi trouvé plutôt bien traité les aspects lies à l’usage interactif, à la configuration et à la maintenance de PostgreSQL.

postgresql-comprehensive-guide

Référence complète : PostgreSQL, A comprehensive guide to building, programming and administering PostgreSQL databases – Korry Douglas & Susan Douglas – Developer’s Library 2003 – ISBN: 978-0-7357-1257-7

PostgreSQL


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

Note de lecture : Scrum, a Breathtakingly Brief and Agile Introduction, par Hillary Louise Johnson & Chris Sims

Note : 7 ; Une très bonne introduction à Scrum pour l’impatient : brève, claire et bien écrite.

Plutôt qu’un livre, il s’agit d’un livret. Sous sa forme papier il pèse moins de 50 pages (et encore, des pas bien longues). Ce texte se situe à mi-chemin entre le « Scrum en 5 minutes » et le fameux « Scrum and XP from the Trenches » d’Henrik Kniberg. Il se situe plus près du premier titre et ne saurait se comparer au best-seller de notre Suédois préféré.

S’il ne prends pas 5 minutes, il ne nécessite pas tellement plus d’une heure. Le texte se lit d’autant plus vite que le style est vraiment concis et alerte : un vrai plaisir pour le lecteur.

Après une courte introduction (vraiment courte : une page pour expliquer « pourquoi Scrum »), le texte se présente en 3 parties :

La première présente les 3 rôles. C’est clair et le partage des responsabilités et l’état d’esprit attendus sont sans équivoques. Chacun des 3 aspects est plié en une paire de pages, ou peu s’en faut !

La seconde partie traité des « artefacts » : le product backlog, le sprint backlog, le burdown / burnup chart, le tableau des tâches et la définition de terminé. Encore une fois la clarté prime, mais les auteurs ne font pas de raccourcis pour expliquer par exemple l’aspect adaptatif du détail du backlog ou encore comment se présente une User Story.

La troisième partie nous fait voyager au sein d’un Sprint. Si les auteurs parlent de sprint d’une ou deux semaines, ils font le choix de nous présenter un sprint d’une semaine. Les cérémonies sont présentées de manière précise et concise : qu’est-ce qu’on y fait et dans quel ordre.

Petite particularité de l’ouvrage, il parle du « story time », temps dédié à la préparation du Sprint suivant. De l’aveu des auteurs, cela ne fait pas encore partie de Scrum et c’est la première fois que je vois cela évoqué, même si je l’ai moi-même pratiqué.

En appendice, on trouve les valeurs et pratiques agile, donc le fameux manifeste, mais curieusement pas la liste des pratiques et valeurs de Scrum !

Ce texte est un condensé d’un autre ouvrage des mêmes auteur : « The Elements of Scrum » qui en constitue en quelque sorte la version longue. La version électronique coûte moins d’un euro et je recommande sans réserve ce texte pour initier rapidement un équipier à Scrum. Plus encore que le Scrum en 5 minutes !

Scrum a breathtakingly brief and agile introduction

Référence complète : Scrum, a Breathtakingly Brief and Agile Introduction – Hillary Louise Johnson & Chris Sims – Dymaxicon 2012 – ASIN : B007P5N8D4 (Kindle edt.)

Scrum: a Breathtakingly Brief and Agile Introduction


https://www.goodreads.com/book/add_to_books_widget_frame/193796504X?atmb_widget%5Bbutton%5D=atmb_widget_1.png

Note de lecture : SQL Server 2008 Integration Services, par Erik Veerman, Jessica M. Moss, Brian Knight & Jay Hackney

Note : 7 ; Un ouvrage vraiment fait pour bien utiliser SSIS et pas seulement l’expliquer

Pas facile de trouver un ouvrage sur SSIS en expliquant le fond, le bon usage et ne se limitant pas à la description de l’outil ! Ce livre est celui-ci. Il s’adresse au praticien déjà expérimenté de l’ETL de Microsoft et propose une série de patterns de mise en œuvre afin de bien architecturer un projet SSIS ! Franchement c’est tout simplement la seule source d’information (livres et Web inclus) que j’ai peu identifier faisant cela !

Le biais du livre, désavantageux du point de vue de ma propre utilisation, est qu’il est orienté solution BI. Ainsi les 12 chapitres de ce livre de 420 pages s’orientent-ils dans ce sens selon les étapes logiques de réalisation d’un projet SSAS. Mon intérêt direct d’arrêtant donc vers les chapitres 6 ou 7. Mais je ne doute pas que le développeur BI trouvera beaucoup d’intérêt au reste du livre.

Je dois bien aussi avouer que même si seule la première moitié du livre m’a intéressé (la seule que j’ai lu, en fait), j’ai considéré mon achat amorti sur cette seule partie !

Le premier chapitre évoque les architectures de déploiement possibles avec SSIS. Pour chacune d’entre elle, on évalue ainsi les bénéfices et les aspects négatifs. Tout ce qu’il faut pour arrêter un choix en connaissance de cause.

Au chapitre 2, on traite la mise en place d’un « Framework » dans lequel vont s’inscrire les intégrations. Cela recouvre les problématiques de configuration d’auditabilité, de logging et de gestion d’erreur. Là encore des domaines où sont plus détaillées les caractéristiques de SSIS que la façon intelligente de les mettre en œuvre. Comme ici. Oserai-je dire qu’à ce point, j’avais déjà de quoi être satisfait de mon achat ?

Le chapitre 3 est assez court, il traite des options de déploiement des packages SSIS. Il y en a plusieurs, mais jamais avant cela on ne m’avais expliqué les traits des différentes options. C’est chose faite, je comprend mieux et saurais désormais décider en connaissance de cause !

A partir du chapitre 4, on rentre dans l’usage des tâches de SSIS. Et pour commencer le traitements des fichiers. Les auteurs présentent ici leur approche encore une fois, pas seulement l’utilisation de l’outil. Même si j’ai moins appris que sur les chapitres précédents, il y a clairement du savoir faire à réutiliser…

Le chapitre 4 propose des « bests practices » pour les problématiques d’extraction et de stagging des données. Même s’il est d’usage général, ce chapitre s’inscrit plus dans une optique de projet BI.

Il en va de même pour les chapitre 6 (où j’ai arrêté ma lecture) qui s’attache aux problématiques de nettoyage des données.

Je reprendrais certainement cette lecture un jour, en fait les problématiques BI m’intéressent également. Quoi qu’il en soit, j recommande sans réserve ce livre pour le praticien déjà aguerri de SSIS : le savoir-faire qu’il propose n’existe pas ailleurs !

sql-server2008-IS-wrox

Référence complète : SQL Server 2008 Integration Services : problem, design, solution – Erik Veerman, Jessica M. Moss, Brian Knight  Jay Hackney – Wrox 2010 – ISBN : 978 0 470 52576 0

Microsoft SQL Server 2008 Integration Services: Problem, Design, Solution

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

Note de lecture : Software Project Management, par Walker Royce

Note : 6 ; La gestion de projets selon Unified Process.

Un ouvrage un peu dense et un peu difficile à lire, mais dont le contenu est indéniable, notamment sur les métriques de suivi de projet. Walker Royce porte un fardeau assez difficile : son père, Winston, est en effet l’auteur d’un article décrivant le cycle en cascade qui est à l’origine du « cycle en V »… à son corps défendant !

Les 4 parties constituées de 17 chapitres de la partie principale du livre couvrent un peu plus de 250 pages. Il faut y ajouter les très conséquentes 5 annexes de la 5ème partie qui totalisent à elles seules 150 pages !

La première partie « software management renaissance » comprend 4 chapitres et un peu moins de 70 pages. Bien entendu, le premier chapitre traite du modèle en cascade présenté dans l’article de 1970 de papa Royce. Plutôt que de critiquer son géniteur, Walker fustige, à juste titre je dois dire la manière dont le modèle a été mal compris. Le second chapitre, s’il est court avec sa dizaine de page, n’est pas une ballade de santé. Il présente l’évolution de l’économie du logiciel en terme de ROI, coût par SLOC, etc. En comparaison le 3ème chapitre qui présente logiquement l’amélioration de cette économie est nettement plus accrocheur. L’auteur y évoque l’influence de différents paramètres tels que le langage de programmation, l’utilisation de la conception orientée objet ou la pratique du peer review. Cette première partie se conclut par la comparaison des « anciens principes » contre les nouveaux (ceux de l’auteur). J’ai trouvé l’énoncé des 30 principes de Davis bien plus intéressante (même si certains sont clairement erronés), en regard des 10 principes de Royce.

La seconde partie « a software management process framework » rentre dans le dur de UP. 65 pages sur 5 chapitres y sont consacrés. Le chapitre 5 se focalise sur le concept de phase (vous savez, celui que l’on a abandonné avec agile…). Bien entendu ce sont les 4 phases d’UP qui y sont évoquées. C’est sans surprise que l’on aborde le chapitre 6 qui s’avère consacré à la question des artéfacts projet, les 25 pages de se chapitres évoque l’existence de nombre d’entre eux en les ventilant sur 5 pratiques d’ingénierie. Un chapitre que j’ai du mal à trouver passionnant, bien qu’il soit central dans les méthodes prescriptives et finalement bien abordé ici, y compris la discussion sur l’usage et l’apport d’artefacts formels. Les deux chapitres suivants sont étrangement courts. D’abord le chapitre 7 sur les modèles n’évoque que l’existence de 5 modèles (qui rappellent les 4 + 1 vues de Philippe Kruchten), mais sans aller plus avant parce que hors du sujet de l’ouvrage probablement. Ensuite le 8 chapitre 8 nous parle du workflow de l’itération, décrivant celle-ci comme un mini waterfall. Beurk ! Le dernier chapitre de cette seconde partie est plus ésotérique en évoquant les jalons majeurs et mineurs.

La troisième partie « software management disciplines » couvre 85 pages sur 5 chapitres. Il commence avec le chapitre 10 qui aborde la planification itératif et son outil phare : le WBS (Work Breakdown Structure). Encore un truc que l’on ne fait plus en agile. Toutefois si vous voulez rentrer dans le sujet, vous avez là une référence de première main. Non seulement il donne une méthode de découpage, mais évoque les répartitions budgétaires relatives et leur évolution en fonction des phases du projet ! Le chapitre 11 lui traite de l’organisation de projet, au sens « administratif ». C’est donc à des organigrammes qu’il nous faut faire face, avec des listes de responsabilités et tout et tout… Le chapitre 12 focalise sur l’automatisation du processus et notamment du change control. Bref, pas mal d’outillage « projet ». Fort logiquement, au chapitre 13, ce sont les indicateurs de management qui sont à l’honneur et principalement le fameux Erned Value Tracking (EVT). Le chapitre 14 aborde la customisation du processus (car UP se customise). Walker Royce aborde cela en classant les types de projet en 2 dimensions : la complexité technique sur un axe et la complexité de management sur l’autre. Chaque axe nécessite une emphase particulière sur certaines disciplines et certains artefacts. Il n’y a plus qu’à combiner les deux, hein ?

La dernière partie du corps du livre « looking forward » ne compte que 3 chapitres et se contente donc d’une trentaine de pages. Elle débute par le chapitre 15 qui évoque les projets dits « modernes ». C’est finalement là que l’on retrouve des choses qui se rapprochent le plus des projets agiles : des exigences qui évoluent, de l’intégration continue, mais le tout encore et toujours dans les fourches caudines d’XP aux forceps. Au chapitre 16, on tente de tourner notre regard vers un nouveau modèle économique des projets. Il s’agit en partie d’une remise en cause partielle des postulats de Boehm dans le cadre des développements actuels. La partie textuelle de cet ouvrage se conclu par un chapitre 17 assez courts évoquant les problèmes de transition vers ces processus…

La 5ème partie du livre est consacrée aux annexes. Comme je l’ai dit, elle est franchement volumineuse. L’annexe A évoque l’état des pratiques en s’appuyant sur des rapports. Hélas tout ce ceci n’est plus d’actualité, mais cette partie est au moins courte ! L’annexe B rentre dans le modèle COCOMO 2 de Boehm, et on s’en tire pour une vingtaine de pages. Une dizaine de pages sont consacrées à des métriques de changement qui à mon avis ne servent à rien. L’annexe D est un cas d’étude et franchement il faut être motivé pour s’en taper les 60 pages. Enfin, même si l’annexe D compte 30 pages, il est plus facile de s’y intéresser : challenger UP face à CMM peut s’avérer instructif.

Le livre est dense, très dense. Il traite de processus semi-prescriptif est déballant beaucoup de matériel, beaucoup de concepts et un niveau de technicité, en processus, en métriques et un petit peu dans tout, il faut bien le dire, qui est très élevé. Le vrai risque est d’être un peu noyé à force d’en vouloir pour notre argent. L’erreur de l’auteur est d’essayer d’augmenter le niveau de technicité, de finesse dans la maitrise et la gestion de projet, là où la clé serait plutôt la simplification.

software-proj-mgt-unified-framework

Référence complète : Software Project Management: A Unified Framework – Walker Royce – Addison Wesley 1998 – ISBN: 0-201-30958-0

Software Project Management: A Unified Framework

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