jeudi 3 décembre 2015

Optimisation VBA-Excel sur des boucles et du remplacement de données

Le document sur lequel nous travaillons est présent sur github.

Cas d'usage

Dans mes activités de PMO (personne n'est parfait) je m'amuse (!) à construire de jolies feuilles de route, ou roadmap pour les intimes du barratin globish. Les meilleurs amis du PMO pour ce type d'activité sont Excel et powerpoint :
  • Excel pour la collecte de données (je suis un IT guy quand même),
  • Powerpoint pour la couche de présentation un peu "glam'".
J'en connais qui n'utilise que l'un ou l'autre. Je préfère les couplages intelligents.
Bon, pour finir l'explication, j'ai donc une très belle feuille de route, avec beaucoup de jalons, sous format excel, un nombre de clients et de domaines applicatifs importants, et un besoin de présenter des visions différenciées à chacun.
Pour cela, rien ne vaut Excel (toujours), beaucoup de mise en forme conditionnelle et quelques macros.

Le problème

Le principe est de récupérer (à la main) une copie de la feuille de route pour la mettre dans un onglet complémentaire, puis de nettoyer les cases sans contenu visible pour que l'affichage soit un peu sympa.
Je partage ce petit bout de code avec vous, qui est la version 0.


Sub makeItClear()

Dim ws As Worksheet, r As Range, c As Range, nbligne As Long
Application.ScreenUpdating = False

Set ws = ThisWorkbook.Sheets("Feuil1")

nbligne = InputBox("nb ligne à traiter", , 20) + 0
Set r = ws.Range("d8:aa" & nbligne)

For Each c In r.Cells
   If c.Text = "" Then c.ClearContents
   If Len(c.Text) > 2 Then c.HorizontalAlignment = xlLeft
Next

Application.ScreenUpdating = True

End Sub


De manière très simple, l'algorithme marche, par contre, c'est long. Pour une plage d'une quarantaine de lignes, il faut compter entre quinze et vingt minutes. Pour la feuille de route complète, pas loin d'une heure.

Le pourquoi

Après beaucoup de recherche, il s'avère que la partie lourde de l'algorithme est la partie écriture/réécriture du classeur, c'est à dire :

   If c.Text = "" Then c.ClearContents

Le problème vient du coût d'accès systématique au classeur pour écrire. Rien de nouveau me direz vous, et vous avez parfaitement raison. Le coût d'accès en écriture est toujours ce qui coûte cher en I/O et casse les performance.

Un peu de craft

Le problème étant l'accès, la première idée qui me vient est donc de ne plus faire un accès simultanée mais un accès par "small batch".


Sub makeItClear()

Dim myCells As String
Dim ws As Worksheet, r As Range, c As Range, nbligne As Long

myCells = "$E$5" 'cellule d'init ou il n'y a rien
Application.ScreenUpdating = False

Set ws = ThisWorkbook.Sheets("Feuil1")

nbligne = InputBox("nb ligne à traiter", , 20) + 0
Set r = ws.Range("f8:ag" & nbligne)



For Each c In r.Cells
  If c = "" Then myCells = myCells + "," + c.Address
  If Len(c.Text) = 1 Then c.HorizontalAlignment = xlCenter
Next

ws.range(mycells).clearcontents

Application.ScreenUpdating = True

End Sub



Pour faire simple, au lieu de faire un accès immédiat, le principe est de stocker la liste de tous les cas positifs et de faire une suppression globale.
L'idée est belle, mais ça ne marche pas du premier coup ! Sur le fond, le soucis est que la plage est trop longue !

Plus de craft !

Alors un peu de tests, il semble que la limite du 'range' de VBA est de 256 caractères. Pourquoi ? Je ne sais pas, dans tous les cas, une chaine de 256 caractères passe le test, une chaine de 512 non.
Pour s'en sortir, il reste donc à éclater la chaine en sous-chaine de maximum 256 caractères. Dans tous les autres langages, j'aurais joué avec des tableaux. En VBA, c'est vraiment pas pratique. Il reste donc à jouer avec des chaines :-/
On va donc faire une modification dans le code et rajouter deux fonctions complémentaires :

Sub makeItClear()

Dim myCells As String, calculMode As Variant
...

myCells = Replace(myCells, "$", "")

While Len(myCells) > 0
  m = cutLongList(myCells, ",", 256)
  ws.Range(m).Value = ""
  myCells = Mid(myCells, Len(m) + 2)
Wend

Application.ScreenUpdating = True

End Sub



Je nettoie donc la chaine de plage des '$' pour réduire sa taille, puis je travaille une boucle de réduction de chaine.
Pour cela, il faut deux petites fonctions :


Private Function cutLongList(ByVal myString As String, ByVal delimiter As String, ByVal maxValue As Long) As String
Dim i As Long
cutLongList = myString

If Len(myString) < maxValue Then Exit Function 

  i = 0 
While isMyNumCarMyCar(myString, maxValue - i, delimiter) = False 
  i = i + 1
Wend 
cutLongList = Mid(myString, 1, maxValue - i - 1)
End Function 

Function isMyNumCarMyCar(ByVal myString As String, ByVal numCar As Long, ByVal myCar As String) As Boolean 
'''Pour vérifier qu'un numéro de caractères correspond à un caractère attendu
  isMyNumCarMyCar = IIf(Mid(myString, numCar, 1) = myCar, True, False) 
End Function

N'ayant pas de meilleures fonctionnalités pour faire du slicing de chaines avec des Arrays, la fonction 'isMyNumCarMyCar' permet de vérifier qu'un numéro de caractère de chaine est bien un caractère passé en paramètre.
Et 'cutLongList' permet juste de faire le retour de substring. Elle serait sans doute à améliorer avec quelques traitements d'erreurs.

Conclusion

Première conclusion, ce changement de code permet de passer d'un temps de traitement de 10 minutes à moins de 30 secondes. Evidemment, ça jette.
Au milieu, je retiens :
  • Que l'accès en écriture dans les classeurs excel est à limiter dans les boucles,
  • Que l'objet range de VBA contient au maximum 256 caractères,
  • Que les objets Arrays de VBA sont vraiment pas top en termes de capacité.
Pour la suite, on attaque les gros projets avec du templating de powerpoint avec une source excel.

mardi 1 décembre 2015

Une loi sur la cigarette en voiture ? Et ma liberté

Ce matin un certain énervement m'a pris, en entendant que nos chers députés allaient examiner une loi sur l'interdiction de fumer dans les voitures en cas de présence d'un enfant de moins de 12 ans. Il raisonna convenablement avec une tribune de Jean-Marc Porquet dans le Canard du 26/11 et s'article en plusieurs temps.

Temps 1 : de l'usage du temps des absents chez les députés

En période de crise, et en période générale, lorsque les medias nous bassinent que les agendas parlementaires sont débordés, qui est la personne ayant positionné un tel texte dans la pile des sujets "urgents", "capitaux" ou "nécessaires" à la survie de notre pays.
Il faut croire qu'en terme de gestion du temps, et des séances parlementaires finissant à des heures indues, il restait un créneau pour que les députés présents - et ils ne sont pas nombreux sauf cas de sujets "capitaux", "urgents", etc. - se saisissent d'un sujet aussi important.

Temps 2 : de la perception de la santé publique et de l'hygiénisme républicain

Mon second désarroi est sans doute celui du mensonge caractérisé par nos hommes et femmes politiques, de tout bord, de tout poil et de tout profil, sur les questions de santé publique depuis une cinquantaine d'année. Il est de notoriété publique que la cigarette est un poison pour la population. Et il est aussi de notoriété publique que les politiques de prévention autour de ce sujet sont d'une efficacité impressionnante.
La raison en est pourtant très simple, et rejoint deux phénomènes distincts :
  • Celui de la vache à lait : la cigarette est une source de taxe et de revenus pour l'Etat avec une couverture du paquet de cigarettes à environ 80% (d'après le figaro du 23/07/15 et tabac liberte en 2013)
  • Celui de la grenouille : en augmentant progressivement le prix du tabac, les fumeurs s'accoutument à payer plus cher, ne sentant pas la température augmenter
Je passe volontairement sous silence l'ensemble des lobbies des cigarettiers d'un côté et des buralistes de l'autre, des médicaments et des substituts nicotiniques, etc.
Au milieu des années 70 JG Padioleau analysait déjà les différences de traitement des politiques publiques sur le tabac, montrant que la France entrait bien (et n'a pas changé) dans une démarche où la volonté n'est pas l'arrêt du tabagisme mais la taxation. Autant pour notre santé.

Temps 3 : Laissez moi tranquille dans ma voiture

Je mets trois choses au clair avant de poursuivre :
  1. J'ai une fille,
  2. Je ne fume plus, ce qui signifie que j'ai fumé, que j'ai arrêté avant la naissance de ma fille,
  3. Je n'ai plus de voiture depuis presque dix ans.
Malgré ces faits, il m'est insupportable d'entendre des hommes politiques vouloir déterminer mes activités dans la sphère privée. Dans ma voiture je suis chez moi. Alors le législateur, s'il n'a vraiment que cela à faire de son temps (et si c'est bien le cas, il serait bon de le mettre à travailler sur des sujets de fond) a plusieurs options :
  • Soit le tabac est vraiment dangereux, c'est un problème de santé publique, et il doit être interdit partout ! Oui, partout, à la maison, dans la voiture, à la vente, à la distribution. C'est un poison (!) il faut l'interdire du fait des risques sanitaires à long terme.
  • Soit les activités limitant l'attention lors de la conduite sont dangereuses, comme fumer, boire, manger, téléphoner, écouter de la musique, parler à son voisin, etc. et elles doivent être interdites car mettant en danger l'ensemble des usagers de la voiture.
Une position intermédiaire visant à expliquer que fumer dans la voiture est nocif pour les enfants, alors que fumer dans la maison l'est moins (?) ne tient pas. A moins que cela ne soit l'étape d'après ? Quelle est la réflexion sous-jacente, la logique étayant le principe ?
A force de légiférer sur tout, nos libertés finissent par disparaître. Ou plus exactement, il se passe la même chose qu'avec les grenouilles : en les mettant dans l'eau froide puis en chauffant progressivement, nous ne nous rendons pas compte que nous finirons ébouillantés.

Temps 4 : Big Brother is f***ing you ou de l'applicatif

Enfin, raisonnons un peu, car nos hommes politiques n'ayant plus que des chauffeurs, doivent oublier quelques éléments de bon sens à force de sortir de grandes écoles et de ne pas sortir de leurs tours d'ivoire :
  • Comment fait-on dans une voiture pour différencier un enfant de 12 ans d'un enfant de 10 ou 14 ? Un vrai plaisir pour les policiers devant apprécier l'age des enfants à bord d'un voiture avec un fumeur à bord.
  • Que feront les policiers ? Ils devront surveiller les véhicules et remarquer 1) qu'une personne à bord fume, 2) que des enfants sont présents à bord 3) que les enfants n'ont pas 12 ans. A partir de là, il faudra arrêter le véhicule, puis verbaliser. Je suis persuadé que les représentants de l'ordre seront ravis de jouer à ce petit jeu là, et que le volume de contraventions distribué sera très élévé. Ceci rejoint un second volet correspondant à l'analyse de la performance des politiques publiques, mais nous sommes loin du sujet.
Que reste-t-il comme option ? Probablement utiliser des systèmes préexistants, par exemple des caméras de surveillance pour analyser le comportement des conducteurs et passagers et vérifier la présence d'enfants pour opérer la verbalisation. De la science fiction me direz-vous. Hélas non, les algorithmes de reconnaissance d'age sont plutôt efficaces aujourd'hui, celui de reconnaissance d'image ou de patterns d'images aussi. Le plus compliqué est de poser suffisamment de caméra, puis de les brancher.

Conclusion : Politique mèle toi de ce qui te regarde

Big Brother or not, ce type d'idées est une aberration totale, une atteinte insoutenable à nos libertés fondamentales, à celle qui introduit notre devise nationale "Liberté, Fraternité, Egalité".
Caché sous des airs de politique de santé publique, nos hommes politiques profitent de moment de recueillement pour faire passer comme des chevaux de Troie des lois liberticides - encore - sur des sujets triviaux, permettant par la suite d'en faire passer plus encore. Il en va des restrictions des libertés comme du pucelage : une fois la voie ouverte, le suivant aura plus de place pour s'introduire.
Est-ce bien ou mal, je ne le sais pas, et ce n'est pas ma question. Ce n'est par contre pas le pacte auquel je souscris en tant que citoyen Français.

Politique, fais ton boulot, réfléchis sur les difficultés structurelles de notre pays et ne me casse pas les nougats avec des mesurettes sans ambition. Et si tu ne sais pas le faire, que tu es emprisonné dans un magma de bordels accumulés depuis 250 ans ou plus, file ta dém' et laisse le peuple se bouger le cul. Parce que franchement, pour sortir des conneries pareil, c'est pas la peine de payer des impôts.


lundi 16 novembre 2015

Pardon

Après l'horreur de vendredi soir, je suis passé par un spectre de cinq émotions :
  • D'abord l'horreur devant tous ces morts, et la réminiscence des attentats de Charlie,
  • Une joie presque morbide d'être en vie,
  • Ensuite la tristesse et la compassion pour les victimes, leurs familles et leurs proches,
  • Puis une peur double, celle d'avoir perdu quelqu'un et celle de continuer à vivre,
  • Et enfin la colère contre la bêtise, contre la barbarie, contre tout.
Deux jours après, je reste profondément troublé, choqué, et sans doute de plus en plus en retrouvant le quotidien qui ne l'est plus. L'ambiance à Paris est différente, et pour être sorti samedi matin, il régnait dans les rues désertes une humeur malsaine et pesante.
Ceci risque de perdurer longtemps, et la facilité est celle que nos hommes politques ont déjà mis en avant : l'action immédiate, le renforcement de plans de luttes contre des menaces non maîtrisables car complexes, plutôt qu'une réflexion de fond mettant en lumière nos fautes. La CIA parvenait (parvient ?) peut être à traquer et suivre l'ensemble des échanges sociaux des américains au prix de la disparition de la vie privée. Est-ce bien le modèle que nous voulons voir mettre en oeuvre ? Ceci ne me rappelle que trop le pitch de "V pour vendetta", aussi bien en BD qu'en film, et l'organisation étatique de la peur.

Alors, je vous l'affirme : je refuse cette peur. Cela fait maintenant plus de trente ans qu'elle est organisée de manière pernicieuse par des hommes et femmes politiques en travaillant sur des principes sociologiques simples, et une vision simpliste du monde, celle du "nous contre eux" comme l'expliquait très bien Norbert Elias.

Alors, je vous l'affirme : je refuse la colère contre les personnes ayant commis les attentats. Ils sont bien responsables de leurs actes, ils ont causé la souffrance et la destruction, la peine et la douleur. La colère ne fera pas revenir les victimes, les morts et les blessés.
Je reste en colère contre nos gouvernants qui nous mentent et réagissent avec des démarches automatiques à des sujets émergents et complexes, en essayant de nous faire croire qu'annuler les rassemblements et annulant les manifestations culturelles limite le risque de nouvel attentat. Ce serait trop simple. Nous sommes loin d'Israël, de Bagdad ou Kaboul - et je n'ai pas d'opinions sur ces pays et leur politique - mais imaginez-vous que les populations arrêtent de vivre, qu'il n'y a plus de vie culturelle ? Elle a été réduite, et la vie doit continuer. Les mesures proposées sont étrangement simplistes, et les discussions entre les partis politiques français restent teintés d'un électoralisme immonde et impropre face à l'horreur que nous avons vécu.

La joie ne peut exister dans de telle circonstance, et la réminiscence assez peu. Il me reste la tristesse, et c'est ici que j'en viens.
Je suis finalement triste, et si je pleure et compatit avec les familles des victimes et leurs proches, je pleure aussi sur nous, pauvres citoyens qui venons de voir mourir pour la deuxième fois cette année notre sentiment de sécurité.
Je pleure sur notre société qui a laissé émerger des individus pouvant donner la mort.
Je pleure sur nos enfants qui vivront dans un monde bien différent du notre, un monde rappelant les heures sombres de la guerre d'Algérie, à la différence que nous ne nous battons pas contre un autre pays, mais contre nous même, contre nos enfants à qui nous n'avons pas donné les moyens de se projeter dans notre société.
Je pleure sur nos échecs, sur Notre échec, celui d'offrir si peu de rêves à certains des nôtres qu'ils en arrivent à penser que la mort et la destruction leur ouvriront des Paradis.

Parce que je suis triste, et que la colère et la guerre n'ouvriront pas les coeurs de tous ces hommes et femmes que nous avons laissé perdre dans notre société, à toutes ces personnes, je demande pardon.

mercredi 4 novembre 2015

De la transformation digitale ?

Après une journée chargée en café, et pour prolonger l'article précédent sur le digital, me vient l'idée d'une analyse à la serpe de ce qu'est la transformation digitale.

Mise en perspective

Il y a quelques années, j'ai entendu les cabinets de conseil parler de "transformation agile", ce qui a permis à beaucoup de se nourrir sur la bête d'un mouvement qui n'a finalement pas grand chose à voir avec le sujet vendu. C'est aussi à ce moment que j'ai découvert et ai commencé à entrer dans le sujet, je ne jette donc pas le bébé avec l'eau du bain.

A ce moment là, c'est-à-dire entre 2008 et 2010 en France, l'Agile n'est pas un concept neuf. Il est juste devenu "on stream", il a passé les deux premiers niveaux des courbes d'adoptions pour rentrer dans une phase de maturité importante, avec suffisamment d'expériences réussies pour que des individus viennent "brander" le sujet, que les groupes historiques se divisent ou laissent la place à d'autres se chargeant d'organiser de nouveaux évènements. Pour ceux qui connaissent, c'est la multiplication des "Agile Tour", les premiers "Scrum Gathering" pluri-annuels, DevOps Days etc.
L'analyse complète mériterait un article à lui tout seul, avec une composante autour de l'anthropologie, des effets de réseaux et j'en passe. N'ayant pas de volonté à faire une sociologie de l'émergence de l'agilité ici, je m'en tiendrai à du "gut feeling", tant pis pour la science.

En bref, et avec un lag entre les pays nord américains et les pays européens, la "transformation agile" se répand doucement, au rythme de l'évolution des organisations, c'est à dire plutôt vite pour les entreprises jeunes à culture en construction, et plutôt lente pour les plus agées, voire pas du tout pour certaine.

Mise en abîme de la perspective

Reprenons quand même le fondement. Pourquoi la transformation agile ? Quel est le vecteur initiant cette "transformation".
Vous le savez déjà, à la base, il y a le manifeste agile. Ce qui est moins clair est l'enjeu du manifeste. Sans rentrer dans les analyses que d'autres ont fait, les premiers mots sont finalement les plus forts et les plus oubliés :
Nous découvrons comment mieux développer des logiciels
par la pratique et en aidant les autres à le faire.
Tout d'abord il y a ce "nous" inclusif, marquant l'engagement des auteurs, nous que j'accepte et reprends régulièrement.
Ensuite, il y a ce "découvrons comment mieux développer des logiciels". Et là, c'est le choc de l'intuition qui s'avère exacte. L'enjeu du Manifeste n'est pas la transformation, mais l'accord de quelques uns sur un plus petit commun dénominateur à ce qui leur paraît essentiel pour développer, ce que nous appelerions aujourd'hui le "craftsmanship" et que mon cher Jean-Gustave Padioleau appelé "les arts pratiques".
Enfin, il y a ce dernier morceau "en aidant les autres à le faire", qui est à la fois une portée ambivalente d'accompagnement (aider l'autre), qui pourrait presque être vu comme du prosélytisme (convaincre l'autre que l'aide est celle requise).

Ce qui continue à m'étonner dans cette formulation initiale est l'absence de volonté à la "transformation". En terme Lean, il faudrait dire "Kaizen", c'est à dire la suite de petite amélioration continue permettant d'atteindre l'état de maîtrise ultime.

Dans ces conditions, la vague de "transformation agile" n'est pas une vague neutre, et est surtout une vague de repositionnement du discours, ce qui se traduit dans la communauté par le "scaling agile", où que j'appelle "quelle recette employer pour rendre mon entreprise agile alors que je ne le suis pas".
Ce glissement sémantique est celui du passage de l'équipe à laquelle le responsable / manager demande d'aller plus vite pour atteindre une échéance et qui découvre l'agile, l'implémente et réussit (ou pas), au manager du manager qui lui demande de reproduire le fonctionnement d'une équipe sur l'ensemble du pôle.
La question est bien celle de l'échelle, et je remercie David Anderson qui a déclenché l'épiphanie avec son discours sur "l'Entreprise Service Planning" au LKFR15. L'échelle en effet, car le niveau de dialogue en jeu concerne le Comité de Direction, et plus l'équipe. Et si vous avez déjà discuté avec des Comités de Direction, les attentes cognitives et le langage à employer sont vraiment différentes de celui de l'équipe. Dans une logique de reproduction cher à Bourdieu, la composition d'un Board est souvent celui d'une distance forte à l'opérationnel (et ce n'est pas vrai partout), avec une attente plus orientée sur l'impact vis-à-vis du client actionnaire et non du client final.
Il vient de là que la belle théorie du Manifeste appartient à une carte mentale hétérogène à celle des membres du board. Transformation agile devient une contrainte à changer, sans égard pour les individus présents. Dit autrement, le glissement sémantique et de l'agir va du "nous agissons par choix et nous changeons" à "vous devez vous adapter et changer".

Dans un cadre similaire, je vous laisse imaginer l'impact et l'appropriation par la base de la démarche, et l'écart à la cible.

Retour aux moutons digitaux

Le détour fut long. J'espère ne pas vous avoir perdu. Car revoici le digital et le pouvoir du doigt, et je vous renvoie à l'article précédent pour l'histoire.
Avec le doigt, la génération Y/Z, fer de lance de l'usage du même digital, entre dans l'entreprise appelant la transformation digitale.
Je vous laisse alors imaginer l'impossibilité d'un dialogue entre un Comité de direction, dont la composition est largement masculine, avec une moyenne d'âge approchant la cinquantaine, et un sens de l'étiquette "hérité" pour reprendre Bourdieu, et la base des acteurs dont la moyenne d'âge est moitié moindre, avec un sens de la notoriété déléguée au nombre de followers twitter, d'ami FB et autre.

Là où la rupture est intéressante est sur une triple nécessité non requise dans le cadre de la transformation agile, et qui modifie le cadre :
  1. L'entreprise peut difficilement faire sans la "génération digitale" en terme de compétences : si vous ciblez du digital mais n'avez que les compétences de ma grand-mère (qui sont inexistantes), vous allez être vraiment à côté. C'est une sorte de "skills fit to purpose".
  2. De même pour le public cible : si vous voulez entrer sur le smartphone de la génération de client à venir, il vaut mieux l'avoir en interne ou à disposition, sur un principe de "eat your own dog food". (une partie de la théorie autour du product development ne l'implique pas. Si vous n'utilisez pas votre propre application, je vous laisse en tirer la conclusion qui va bien)
  3. Le "digital native" ne comprend pas toujours l'enjeu des règles de l'entreprise, et s'y intéresse peu. L'enjeu de l'entreprise est de conserver les potentiels digitaux, là où les potentiels de l'agile peuvent accepter certaines contraintes.
Ceci fait de la transformation digitale un sujet encore plus riche, le principe de la dialectique au format Goldratt le rendant assez simple à résoudre pour les dirigeants comme pour les équipes.
Pour rappel, Goldratt explique dans ses thinkings tools que tout conflit se résout sous la forme d'un "nuage à évaporer". Pour cela, il faut représenter le conflit sous forme d'une opposition, chercher le but commun, et trouver le résonnement logique qui permet avec l'objectif commun d'atteindre le même objectif. Il y a alors deux options, soit "évaporer" l'opposition juste avant l'objectif, soit évaporer l'opposition forte, la deuxième solution étant plus robuste que la première.

 Je n'ai pas la prétention d'évaporer le vôtre, ni celui de la transformation digitale en générale, c'est une histoire de contexte. Ce qui aide la dynamique est l'objectif commun.
Et là, seul Peter Drucker peut répondre à la question : le but d'une entreprise est de créer des clients. Goldratt va un peu plus loin en expliquant que l'enjeu est de construire et développer un tabouret à trois pieds :
  1. Maintenir la satisfaction des actionnaires (ou parties prenantes)
  2. Développer les clients
  3. Ce que je traduis par "développer le capital humain de l'entreprise", c'est à dire les individus travaillant
Enlevez un de ces trois pieds et vous tuez votre entreprise à moyen ou long terme. Ne l'ayez pas en tant que méta-niveau dans votre stratégie d'entreprise, et la conclusion est la même.
Ceci peut sembler idiot. Ceci ressemble à la première évidence que je n'ai jamais entendu en école de management, et à discuter avec des managers, cela ne doit pas être expliqué trop souvent. C'est ce qui ressemble le plus à l'essence du pourquoi, et donc au plus petit commun dénominateur permettant d'amorcer une discussion sur la "transformation digitale".
Ceci ne peut que mettre d'accord le CXO et le "digital native", car en plus de comprendre son propre intérêt, chacun comprend la vision d'ensemble, l'écosystème dans lequel il évolue.

Plus que du digital

Parler de transformation digitale est finalement assez proche du processus à l'oeuvre dans la transformation agile de l'entreprise. La différence est la période, avec un chevauchement des périodes plus que probable pour les retardataires. C'est ce qui rend le phénomène "désordonné" dans la terminologie de Cynefin, c'est à dire que personne dans l'entreprise ne sait dans quel état de complexité est l'entreprise.
Il y a ontologiquement une différence entre ces deux transformations, et en même temps une véritable proximité de vecteurs du changement à un instant donné de la "transformation" (un petit groupe au début, des grands pontes plus tard).

De cet indépassable apparent, conduisant à des postures du "il faut changer", je vois finalement une opportunité dans la transformation digitale. L'urgence à se transformer est une contrainte externe intériorisée par la direction de l'entreprise (nos bénéfices diminuent, les GAFA viennent nous tailler des croupières), qui se répercute à tous les étages. Sans rentrer dans des discours incompréhensibles sur de l'analyse prospective, de la divination et de la langue de bois, le retour aux trois principes permettant de développer l'entreprise (satisfaction des actionnaires, développer des clients, développer le capital humain) me paraît être le meilleur moyen d'acter la compréhension de la difficulté de l'environnement actuel et de s'engager mutuellement en parvenant à dépasser les oppositions de principes.

Je ne dis pas que cela est simple. C'est le début de l'émergence d'une organisation différente, avec des phases de traductions importantes, des conflits à résoudre, etc.
C'est aussi pour ceux qui n'ont pas encore démarrer leur transformation agile, un moyen de la prendre du bon pied, car à quelques cas de mauvaise foi prêt, peu de personnes impliquées dans l'entreprise peuvent débattre du bien fondé des trois pieds du tabouret si elles veulent rester assises sans tomber.

lundi 2 novembre 2015

Préparer son LKFR 2015

Demain, c'est le début du LeanKanban-France, avec un programme impressionant. Avec autant de talks, il est compliqué de faire le choix, de naviguer. Le point positif est que toutes les conf sont enregistrés par InfoQ-fr et seront disponibles... au fur et à mesure. Vous avez aussi une option de streaming sur les "mains sessions".

Dans ce dédale, comment se déplacer demain. Petite visite rapide de ce que je ferais (lorsque je ne fais pas d'interviews), ce qui n'engage que moi, et petits conseils suivant vos préférences avec quatre profils :
  • Le bleu-bite, béotien de son état qui débarque
  • Le LK-ha, celui qui a dépassé et veut s'améliorer
  • Le dev, aka le geek comme son nom l'indique
  • Le coach, parce qu'il le vaut bien
  • Le Lean-Kanban Entreprise, celui qui dirige le monde

Mardi matin, le roi, la reine...

Mon choix :
Bleu-bite
 LK-ha
Le Dev
Le Coach
Lean-Kanban Entreprise
 Hell of a day, no? N'oubliez pas de gazouiller : #lkfr15 !

Mercredi

Allez, mercredi c'est permis, soyons fou, la journée est super dense.
Mon choix :
Bleu-bite
LK-Ha
Le Dev
Le Coach Lean-Kanban Entreprise Voilà le programme, toute demande de remboursement ou mécontentement sera entendu, et j'y répondrais dans les plus brefs délais. Vos choix sont vos choix, je ne vous rembourserai pas ;)

Et pour info, il existe aussi de nombreux ateliers, n'hésitez pas, c'est souvent sympa =)

jeudi 29 octobre 2015

Petit guide du digital à l'usage des newbe

En discutant avec une très bonne amie hier, elle m'a demandé quels sont les livres à lire pour comprendre le langage du "digital". Ce petit article est une sorte de réponse pour décrypter cette tendance.

Du digital, retour à l'ontologie

Parler du digital c'est souvent ne pas savoir de quoi on parle. Ce "buzzword" est entré dans les termes du bingo des consultants (choisissez) en communication/conseil/stratégie/marketing leur servant à vendre une colonoscopie très profonde et très cher avec un retour discutable (sauf pour eux, et sans offense pour ces personnes qui gagnent leur pain).

Ceci étant dit, reprenons le littre qui désigne le digital comme :
  • 1 Adj. Terme d'anatomie. Qui appartient aux doigts. Nerfs digitaux, ceux qui se distribuent aux doigts.Appendices digitaux, appendices ou diverticules que présentent les intestins, et que l'on a ainsi appelés par analogie de forme avec les doigts d'un gant.
    Impressions digitales, dépressions superficielles que présente la face interne des os du crâne et qui correspondent aux circonvolutions cérébrales.
  • 2 S. m. Terme de botanique. Champignon appelé plus ordinairement clavaire.
Le digital est donc bien ce retour au doigt, ou plus exactement le retour à l'usage du doigt (voyez le point sur la colonoscopie). Je vois ce phénomène comme la prolongation d'un processus qu'évoquait Georges Epinette, le digital étant l'étape suivant le passage du maniable au manipulable.

Pour comprendre cette idée, rien ne vaut la voiture, même si le contexte de Georges était celui du SI, et qu'il a une portée assez générale socialement.
Quand vous achetiez une voiture jusqu'au début des années 2000, et que vous étiez bricoleur, vous pouviez à peu près tout faire dessus, de la vidange au niveau d'huile, en passant par changer les ampoules, le moteur, la courroie et toutes ces pièces dont je ne comprends pas la fonction. C'était l'ère de la voiture maniable, c'est à dire que vous pouviez travailler dessus, y mettre la main et avoir une action effective dessus. Le manipulable est l'avénement de la voiture "à console externalisée", celle où en ouvrant le capot, vous n'avez qu'un bloc opaque, ou la moindre pétouille vous impose de passer chez votre garagiste (je ne file pas la métaphore du proctologue, vous avez compris le principe). Avec le digital, vous arrivez à l'étape d'après : vous conduisez votre voiture avec un doigt (voire sans avec les expérimentations de voiture sans chauffeur), et concrètement, vous ne savez pas comment elle fonctionne.
Au final, l'ère du digital est celle du "seamless experience", l'expérience sans couture dont le rêve est le même que le caleçon de la même facture : pas d'empêchement ni de frottement, l'extase absolue.

Fin de la digression et revenons à nos moutons. Le digital c'est quoi ? Je dirais le retour à l'usage du doigt, c'est à dire à l'action de l'acteur qui agit sur lui et son environnement. Le doigt redevient le prolongement de la volonté dans une sorte de dépassement de la dichtomie cartésienne de l'immédiateté. J'ai envie d'un livre/déjeuner/rendez-vous, mon doigt appuie sur le bouton de mon téléphone/tablette permettant de rendre le service.
Et c'est sans doute la bonne transition, car le digital ne se comprend qu'avec l'émergence des technologies tactiles. Il ne peut y avoir de digital sans écran, et il n'y aurait probablement pas de digital si la firme à la pomme n'avait lancé son premier iPhone. L'idée sous-jacente est toujours la même : comment débarrasé la technologie de son aspect "infâme" qui est la couche technique physique, en l'espèce le clavier numérique, et transformer le manipulable en digital. Le mouvement est celui consistant à donner l'impression de la maîtrise en rendant un degré de liberté à l'usager qu'il considère comme primordial, ici le sentiment de dominer la technologie en la rendant simpliste, en échange d'un niveau de complexité jamais égalé et d'une mercantilisation de l'ensemble des actions de son doigt. Même Marx n'aurait pas osé rêver d'une idée pareil.

Résumons cette éthymologie ontologique du digital.
  1. Le digital n'existe qu'en concordance des technologies tactiles, pour faire court smartlets
  2. C'est sans doute l'étape suivant l'ère du manipulable, où chacun avait l'impression de payer des trucs plus chers pour un usage peu différent de la génération d'avant, mais sans possibilité de le modifier seul comme pour la génération d'avant (perte des moyens de l'agir sur l'objet)
  3. Le digital permet le retour au sensitif, à "l'expérience utilisateur" (ou UX pour les intimes), c'est à dire à l'acteur agissant sur l'objet
  4. Il n'y a pas d'objet au digital sans compréhension d'une dimension "modèle d'affaires", c'est à dire que le retour à l'action passe par la perte d'autres libertés rarement identifiées.
  5. Donc parler de digital, c'est parler d'un doigt, surtout celui qu'un beau parleur veut positionner dans votre fondement
Il y aurait sans doute toute une théorie et pratique de la sensitivité dans le digital et son impact sur le quotidien. L'investissement prodigieux des grandes firmes américaines et chinoises sur les matériaux, les courbes des objets en sont un des points visibles.

Quelques références

Pour commencer des lectures, garder bien en tête les deux derniers points de la liste du dessus. La littérature sur le digital est pléthorique (amazon renvoie plus de 25000 références de livres rien qu'en Français) et la majorité sert à ressasser des concepts très éloignés du terrain.
Pour faire dans la pratique, et entrer dans une démarche d'application, le plus simple est de ne pas lire des livres sur le digital, mais les livres qui expliquent les modèles d'affaires autour du digital. Voici donc cinq références, toutes en anglais, et presque toutes disponibles dans la langue de Molière :
  1. Parce que cela n'a rien à voir, et qu'en même temps pour réussir le digital il faut comprendre le "mindset", The Toyota Production System, Taiichi Ohno, qui est la base de tous les suivants et le seul n'existant à ma connaissance qu'en anglais,
  2. Pour comprendre comment faire pour concrétiser une idée, avec les exemples du monde digital, Business Model Generation, Alex Osterwalder et Yves Pigneur
  3. Le livre qui a lancé des carrières, des entreprises qui marchent (et beaucoup qui ne marchent pas), avec des exemples très clairs et une base scientifique très pauvre, The Lean Startup, Eric Ries
  4. Celui qui le complète le mieux est Running Lean de Ash Maurya, qui appuie sur les points d'ombre de The Lean Startup, avec toujours beaucoup d'exemples
  5. Enfin, parce qu'il faut comprendre la manière dont les dirigeants du monde le voit demain, The New Digital Age de Eric Schmidt et Jared Cohen. Je n'ai pas réussi à le finir, et en même temps, c'est sans doute le plus intéressant car l'un des seuls qui traitent de quasiment tous les sujets, de la politique à la médecine en passant par l'éducation, l'internet, et le reste.
Pour aller plus loin, vous pouvez toujours surfer sur des sites/blogs. Mais là, ça dépasse largement mon domaine =) Vous avez des éléments comme "La Revue du Digital" et j'en passe. Je m'abstiens de les lire car 1) ça n'est vraiment pas une passion 2) ce n'est pas mon boulot 3) quand par hasard je tombe sur un article, j'ai plus souvent envie de vomir ou de le déchirer ou d'agonir l'auteur d'insultes pour faire des raccourcis qu'autre chose.
Ne me faîtes pas dire ce que je ne dis pas, il y a des idées intéressantes. Si vous en trouvez, n'hésitez pas à partager.

Avec les cinq premières références, vous aurez sans doute les 9/10 des éléments de  langage et de culture permettant de discuter de digital, dans la perspective du doigt, et surtout vous pourez reposer le discours avec votre client/boss/voisin/cousin autour du vrai noeud du problème : le digital ça sert à quoi ? ça apporte quoi ? quelle valeur sociale/sociétale s'en dégage ? quelle destruction de valeur cela implique-t-il ?

 Bonne lecture.

mardi 13 octobre 2015

Lecture autour de l'Agile et du Lean-Kanban à l'usage des honnêtes gens (et des bleu bites)

Après plusieurs facilitations autour de l'agilité et du Lean Kanban, les personnes présentes me demandent régulièrement des "lectures" pour compléter la pratique. La communauté française / francophone finit par être importante, et quelques ressources sympathiques disponibles.

Pour commencer une saine culture agile / lean voici quelques premiers pas accessible en ligne pour gratuit :

Autour de l'Agile

 L'Agile, tout le monde en parle, mais qui connait vraiment ? En tout cas, moi pas.
 La plupart des liens proviennent de Les 8 ressources indispensables par Romain Couturier (il n'en reste que 7, mais on ne va pas chipoter, dont certaines sont de vrais livres à acheter)

Il y a là ce qui me paraît être le vernis minimum de discussion.

Autour du Lean

Le Lean est un concept assez ancien, et son usage dans l'IT se retrouve dans deux groupes majeurs dont les ambitions ne sont pas les même. Vous avez une tendance Lean-IT, tirée par Daniel T. Jones et P. Womack, une tendance Lean Kanban développée par David J. Anderson. A côté d'eux, vous retrouvez des personnalités comme Mary et Tom Poppendieck (Lean Software), du Kanban pur, les communautés historiques Lean, et j'en passe.
Conclusion : c'est un peu compliqué pour le commun des mortels, alors simplifions (un des principes du Lean, quelque soit sa provenance) :

Et pour aller plus loin

Aller plus loin est toujours possible. Le chemin de l'Agilité / du Lean est sans fin, et ressemble assez au poème de R. Frost "The Road not Taken". Si vous voulez poursuivre vos découvertes :
  1. Pratiquez. L'Agile et le Lean ne sont pas des approches théoriques mais de la praxis avec une dose d'amélioration continue et de méta (la prise de distance). Il existe beaucoup de théories sous-jacentes (socio-dynamique de groupe, théorie des flux, socio-psychologie de la motivation, et j'en passe). Concrètement, ce n'est pas la question. Au début, pratiquez, pratiquez et pratiquez.
    Dans la meilleure configuration, trouvez un coach (ou quelqu'un d'extérieur pour la prise de distance) et pratiquez encore pour vous améliorer, trouver des Meetups et pratiquez.
    Après une à deux années, d'introspection et d'adaptation, allez plus loin.
  2. Si vraiment vous êtes curieux (bravo !) je vous invite à regarder les ressources fraîchement traduites chez :
    • Les traducteurs agiles, groupe de bénévoles (dont je fais encore parti), popularisant les ressources des auteurs clés de l'agilité. Si vous êtes bilingue et que cela vous intéresse, n'hésitez pas à participer.
    • Le wiki d'Ayeba, émanation plus ou moins directe du premier, avec un nombre de ressources impressionnantes.
    • La partie Process et Méthodes d'InfoQ-Fr. C'est de la quasi publicité et je l'assume.
    • Twitter est l'une de mes sources principales d'informations, les membres de la communauté étant très actifs.
  3. Regardez les vidéos / captation des grandes conférences (attention, il y a des déchets, ce sera l'objet d'un prochain post) :
  4. Enfin, si vraiment vous voulez poursuivre, développer votre anglais. C'est triste (ou pas) mais la plupart des ressources et des tendances sont anglophones !

mercredi 25 mars 2015

Préparation Priorisée pour le ScrumDay 2015

Après l'annonce du programme du ScrumDay 2015 je vous propose un regard très personnel sur les ateliers et séminaires à faire absolument (dans la limite des places disponibles), ou à passer une tête.

Tous les séminaires ont lieu le 2 avril. So : save the date. Et n'oubliez pas vos places pour le Scrum Day
Et pour info, cette année InfoQ-fr fait la captation des conférences. Vous les retrouverez toutes quelques semaines après
Note importante : il n'y a aucun jugement de valeurs, de portée normative dans le propos. Vous n'avez que ma vision à partir des pitchs des points qui me paraissent les plus importants.

A ne pas rater !

Cette année, le ScrumDay fait venir deux rockstars :
Pour la suite, et comme souvent, faites des ateliers ! Comme je le disais, et comme depuis plusieurs années, les conférences du ScrumDay sont sur youtube.
Pour cette année, ce sera plutôt sur InfoQ.com, mais d'autres infos viendront plus tard.

Allons-y :
Ca fait déjà pas mal pour cette fois =)

Et pourquoi pas !

Et voici la suite de mon classement tout personnel
Voilà ! Que vous soyez en phase ou non, à la limite ce n'est pas la question. J'espère juste que vous prendrez du plaisir au ScrumDay, que vous discuterez et rencontrerez plein d'individus et avancerez sur votre chemin Agile.

jeudi 5 mars 2015

Les concepts cubes sont en Français

Après un peu d'absence, quelques nouvelles des traductions récentes.
Trois concepteurs géniaux (je n'ai pas d'autres termes) proposent depuis quelques temps des "Concept Cubes". Ceux sont :
Le principe est simple. Pour véhiculer des idées Agiles, au lieu d'utiliser des paquets de transparents que personne ne lit, les auteurs ont construits des Cubes. Vous voyez un dé, c'est la même chose avec 10 centimètres de côté, de la couleur, plein de caractères dessus, que l'on peut se jeter à la figure, s'envoyer, qui sert de totem pour la prise de parole, etc.

Et voici donc leurs "concepts" en Français :

Cérémonie Agile

 Le cube des "Cérémonies Agiles" sont les grands temps d'un cycle plutôt Scrum :
  • Le Daily
  • Le planning
  • La démo
  • La rétro
  • Le planning de version
  • Le grooming de backlog
Vraiment fun et plein de couleurs, c'est un aide mémoire pour les équipes un peu jeune manquant encore un peu de confiance / pratique pour s'approprier les rituels.

User Stories

Quelle équipe a commencé avec des User Stories convenables ? Combien en ont aujourd'hui ? Pour ma part, assez peu, et soyons francs, ce n'est pas le cube qui va transformer les US toutes seules en de superbes explications.
Néanmoins, le cube permet de reposer les bonnes questions :
  • INVEST
  • Quels éléments de risques / faisabilités sont disponibles
  • Comment rédiger une US ou un format BDD
  • L'équipe a-t-elle les éléments de compréhension ?
  • L'équipe a-t-elle les éléments du "Terminé" ?
Encore une fois, pour débuter (ou en cas de doute), c'est un artefact précieux (par exemple en séance de backlog grooming).

Protéger votre temps

Il ne doit rester qu'une partie des non agilistes (je mets les praticiens lean et autres adeptes de la TOC dedans) pour ne pas connaître les vertus de la gestion et de la protection du temps. Et pour paraphraser le prophète (Ken, pas l'autre ;) : "Protecting your time is Simple, it's not easy" (la citation de base vient avec Scrum).
La encore, plusieurs conseils qu'il faudrait toujours avoir à l'esprit, alors à défaut, vous pourrez les avoir à la main.

Conclusion ?

Alors, le premier niveau de travail est terminé, en tant que francophone vous pouvez utiliser les cubes. J'espère que vous aimerez, autant que j'ai pris plaisir à traduire et à échanger avec les auteurs (thanks a lot guys, it's really fun to work with you).
Ensuite, quand vous aurez imprimé les vôtres, vous vous rendrez peut être compte comme moi, qu'en milieu professionnel il est un objet compliqué à trouver : le tube de colle ! j'ai mis un quart d'heure pour y arriver, et encore, il était vieux, sec, enfin pas terrible.
Du coup, l'idée m'a été soufflée de réfléchir à un mode "origami". C'est en cours et les idées sont les bienvenues.

 En plus les créateurs, dans leur grande mansuétude, nous ont laissé des templates pour en créer d'autres.
Alors je vous l'annonce, j'en ai prévu au moins un dans les deux mois à venir (mon backlog se remplit dangereusement vite) sur les rétrospectives.
 Allez, je vous laisse peupler vos bureaux de petits objets cubiques, faites des photos et partager =)

mercredi 21 janvier 2015

Parution de "Premier Kanban"

Ca y est, "Premier Kanban", la traduction française de "Priming Kanban" de Jesper_Boeg vient de paraître chez InfoQ.

Ce fut long, ce fut dur et très agréable de travailler sur ce texte riche.

Merci à l'équipe InfoQ/Fr pour l'accompagnement =) et surtout à Nime pour la qualité de sa relecture et à l'équipe des traducteurs agiles

Une synthèse à venir bientôt