livres programmation

Quelques principes en vrac

La gestion de projet, notamment les méthodes agiles viennent surtout du monde informatique. Aussi, il semble logique de regarder dans ce monde pour trouver quelques bonnes pratiques de programmation que l’on peut appliquer dans la vie de tous les jours. Ces principes ne viennent pas de moi (les autres non plus d’ailleurs) mais là c’est flagrant ! Je balance donc en vrac les plus connus en se raccrochant à autre chose que de la programmation. C’est parti pour les acronymes bizarres.

KISS

simple compliqué
simple compliqué

Mon préféré, Keep it simple, Stupid ou tout autre locution pour dire : fais simple, idiot. En fait, entre deux solutions, il faut toujours choisir la plus simple. Je pourrais vous être rasoir 1 sur le sujet mais puisque faut faire simple : ne chercher pas de solutions compliquées.

DRY

Appris avec ruby on rails 2 : Don’t repeat yourself . En clair et en français : ne pas réinventer la poudre. Nous passons beaucoup de temps à faire des choses qui existent par ailleurs, et même refaire des choses que l’on a déjà faite. Avant de se lancer dans une création ex nihilo, voyons ce qui a déjà été fait par notre voisin. On peut par exemple, très bien utiliser s’appuyer sur des bonnes pratiques de programmation pour éditer quelques principes. Le but du DRY est d’éviter les redondances. Bémol : cela ne veut pas dire qu’il faut utiliser un truc inadéquat par pure fainéantise.

YAGNI

You ain’t gonna need it : vous n’en aurez pas besoin. En gros, ne vous encombrez pas de choses dont vous aurez éventuellement besoin et surtout n’anticipez pas les besoins des autres. Exemple de la vie de tous les jours : vous allez chez le garagiste pour une vidange, soit 1 heure de boulot, mais il vous garde la journée et vous annonce fièrement qu’il vous installé un attache-remorque parce-qu’un jour, vous achèterez peut-être une caravane !! Cela vous a coûté un bras, vous avez perdu une journée, y’a des chances que vous ne soyez pas content…Par contre, YAGNI n’empêche pas l’anticipation, si vous prévoyez effectivement d’acheter une caravane dans 6 mois, faîtes poser l’attache lors de la vidange, cela vous évitera 2 déplacements.

MoSCoW

Rien à voir avec Moscou, en fait c’est MSCW, les o sont là pour arriver à le prononcer. Il s’agit plus d’une méthode. Elle est d’ailleurs utiliser en méthode agile 3 pour la priorisation et ranger le « backlog » et même chez PRINCE2. On est donc en plein dedans et je reprends wikipédia :

  • M : Must have this, c’est-à-dire ‘doit être fait’ (vital).
  • S : Should have this if at all possible, c’est-à-dire devrait être fait dans la mesure du possible (essentiel).
  • C : Could have this if it does not affect anything else, pourrait être fait dans la mesure où cela n’a pas d’impact sur les autres tâches (confort).
  • W : Won’t have this time but would like in the future, ne sera pas fait cette fois mais sera fait plus tard’ (luxe, c’est votre zone d’optimisation budgétaire). On peut même ajouter nécessaire, sinon, poubelle direct.

Tout l’art consistant dans la négociation avec le client, payeur ou autre à ne pas mettre tout en must. Pour cela, il faut limiter le nombre de must possible (soit en nombre, soit en pourcentage…)

Conclusions

Il y en a sûrement pleins d’autres (dans l’idée Worse is better, Less is more…) mais je vais faire kiss, pour une fois et donc m’arrêter là.

Navigation<< Informer n’est pas communiquer7éme principe : vous serez mort demain ! >>

notes

  1. jeux de mots, à vous de chercher
  2. http://rubyonrails.org/
  3. framework DSDM : DSDM est conçu pour être facilement adapté et utilisé en conjonction avec des méthodes traditionnelles telles que PRINCE2 ou en complément d’autres approches Agiles telles que Scrum.