Zerosquare (./854) :
jamais de modifs en production, et toujours un backup.
Pour défendre mon beefsteak, mes requêtes de changements en prod sont faites via transaction, et je vérifie toujours avant les nombres de changements envisagés via un select :3
Bon, j'en rajoute une couche juste derrière, mais je viens d'hériter d'un petit devis qui consiste à changer un brin le système du site existant d'un nouveau client.
Sur le papier, ça ne semble pas long à faire. On m'a devisé 35h pour ça, je me dis que 2-3 jours auraient largement suffi. Maintenant je me dis qu'une semaine ne sera pas suffisante.
Le problème en une phrase : le site du client est une créature de Frankenstein, une création conçue et "améliorée" par plusieurs générations de stagiaires (je ne plaisante pas) qui mélange allégrement des requêtes en vieux MySQL avec aucune protection élémentaire (il faut 10 secondes max de regard sur le code avant de trouver sa première injection SQL potentielle), du code qu'on croirait tiré de "J'apprends le PHP dès 3 ans", des pages dont le design varie grandement de l'une à l'autre (pour exemple, on passe d'un affichage en back digne de 2002 à du bootstrap coloré de partout avec d'énormes boutons tout mimi).
Et bien sûr, bien sûr... ZÉRO VIRGULE AUCUN COMMENTAIRES SUR LES QUELQUES CENTAINES DE FICHIERS QUE REPRÉSENTE LE PROJET !
Notre proposition initiale était de tout brûler au lance-flammes, et partir sur de bonnes bases pour 60k€.
Je modifie un truc comme je parcours un champ de mines (la moindre modif peut casser d'autres pages) parce qu'ils avaient 3k€ de budget.
Je n'arrive ni à en rire ni à en pleurer, plus je traine dessus et plus je suis consterné.
J'ai prévenu mes collègues, et je ne plaisante pas, que dès demain et pour les jours suivants, je viens au boulot avec une bouteille.
En espérant que le
Ballmer Peak m'aidera à m'en sortir... ou à rendre cela plus supportable.