Un article sur les bonnes pratiques autour de la code review.
C'est souvent une part importante dans le Time To Deploy d'une équipe et l'auteur donne des conseils pour accèlérer ce processus:
- garder les PRs petites: <200 lignes de code
- faire les reviews rapidement: mettre un place un outil de notification aide beaucoup sur ce point
- automatiser le maximum: tests, lint
- utiliser des stacked diffs pour découper plus facilement une PR (pas dispo sur Github malheureusement)
- utiliser la méthode Ship/Show/Ask qui permet d'éviter la nécessité de reviews dans certaines situations
Plus j'entends parler du Stacked Diff/Trunk Based développement et plus ça donne envie d'essayer. Graphite semble proposer ce genre de fonctionnement et intègre Github
Le service de scan de vulnérabilité et de qualité de code LGTM s'arrête le 16 décembre 2022.
Ils se sont fait intégré aux équipes de Github depuis 3 ans et leur moteur d'analyse de code est maintenant intégré complètement à Github: CodeQL
Pour l'utiliser, il faut mettre en place cette Github Action
Il ne faut pas toujours chercher à rendre le code clean avec des abstractions et en évitant les répétitions.
Souvent cela rend le code plus complexe et donc plus difficile à maintenir.
La est toutes la subtilité du métier de développeur, trouver le bon compromis entre clean code et KISS code (Keep It Simple and Stupid).
L'auteur pointe aussi une autre erreur, de gestion d'équipe, il a refactoré le code d'un collègue sans lui en parler avant.
Un autre outil à ajouter à sa CI pour vérifier des règles en dehors du code comme la taille d'une PR, la mise à jour d'un fichier de changelog, la présence de tags Github, etc
Excellente vidéo sur la revue de code.
- Vous n'êtes pas votre code: laissez votre égo de côté
- Vous embarquez votre status social en revue de code
- Soyez empathique
Désavantages imprévus de la revue de code:
- perte d'ownership des développeurs sur leur code
- moins d'opportunité d'apprendre de ses erreurs
Sur quoi faut-il porter son attention lors d'une revue de code