Ce matin (un lapin a tué un chasseur), je me penche pour la première fois depuis quelques temps sur le code du back office de Typo, le blogware développé avec Ruby On Rails dont je m’occupe depuis quelques années. Suite à des discussions avec plusieurs entreprises qui souhaitent le vendre à leurs clients, nous avons en effet décidé de supprimer tout ce qui n’était pas absolument nécessaire afin de repartir du bon pied ensuite.

Une bonne raison pour maintenir une couverture de tests potable, et d’alléger les contrôleurs du profit du modèle, c’est que vous pouvez trancher dans la masse très rapidement sans ventiler [votre application] façon puzzle aux quatre coins de Paris, mais ce n’est pas mon sujet du jour.

La vue de l’éditeur à peine chargée dans Textmate, mon immeuble tout entier résonne d’un terrible cri primaire :

Putain de bordel de merde de nom de moi-même, qui est le gougnafié sous Word qui m’a pondu ce HTML de merde ?!

C’était moi. Évidemment.

Je me rappelle avoir terminé ma dernière refonte par l’éditeur, avec l’envie de sortir la nouvelle version le plus rapidement possible, au mépris des règles les plus élémentaires du développement web. Il fallait juste que ça ressemble vaguement à quelque chose, et basta.

C’est à ce moment là que j’ai mentalement essuyé la sueur imaginaire de la culpabilité qui perlait sur mon front. Et si quelqu’un d’autre que moi avait regardé, voire repris ce code ? Comment aurait-il réagi ? Combien de temps aurait-il passé à tout remettre d’équerre afin de reprendre là où je m’étais arrêté ? Et si c’était à moi que c’était arrivé ? J’effaçai donc tout et je recommençai sur des bases saines, c’est à dire sémantiquement correctes et sans style inline (méga shame on me).

Quand vous développez pour le Web, même pour vous, même s’il s’agit d’une interface d’administration que seules quelques personnes utiliseront, écrivez toujours un HTML sémantiquement correct. Non par parce que le Web sémantique est hype, mais par pitié pour le pauvre gars (ou la pauvre fille) qui reprendra votre code. Merci pour lui.