Je fais beaucoup de revue de code ces derniers temps, et je ne suis pas sûr du positif et les effets négatifs et le professionnalisme de mettre positif et/ou commentaires amusants dans des revues de code.
Nous utilisons Github comme plate-forme de révision du code de mon équipe, de sorte que les commentaires sont visibles par tout le monde. J'essaie généralement d'utiliser cette plate-forme de sorte que le processus du début à la fin est visible et historique.
Il est important de mettre en évidence les positifs ainsi que les négatifs. Je sais que si j'étais en train de passer en revue le refacteur d'un sous-système infernal particulier dans quelque chose de soigné et propre, j'achèterais probablement le programmeur une pizza pour ses efforts.
Si vous utilisez des critiques en tant que formation, il est doublement important - mettre en évidence un bon morceau de code sera utile pour les programmeurs juniors examinant également ce code. Ils auront une chance de poser des questions sur la raison pour laquelle une approche ou une technique particulière est meilleure qu'une autre.
drôle : Enregistrez-le pour le refroidisseur d'eau, sauf dans des doses minimales - Avoir un visage de pruneau n'est pas une condition de révision du code.
positif : certainement. L'examen inclut à la fois positif et négatif/constructif, par définition.
Les commentaires positifs aident tout le monde:
Pour celui qui recevait le pouce, vous renforcez leur confiance et vous les inspirez à faire plus de la même manière que vos commentaires positifs.
Pour le reste, comme d'autres l'ont mentionné, ils apprendront quoi faire, ainsi que quoi ne pas faire. Ils seront également encouragés à exceller, de sorte qu'ils puissent aussi être un jour sous les projecteurs.
Une fois, j'ai travaillé pour un patron qui était libéral dans ses commentaires positifs - l'équipe a été très réussie et productive. Il a déménagé et d'autres ont pris la relève qui manquait sa capacité de féliciter un travail bien fait. La productivité et le moral ont pris un nezdifier et bon nombre des meilleurs membres de l'équipe ont quitté la société.
Je dirais que les commentaires sont propres et au point, exactement à cause de la culture.
Vous ne pouvez pas éviter que certaines personnes prennent le mauvais sens.
(.
Traiter les commentaires comme un outil de gestion
L'insertion de commentaires dans un examen de code est une forme de gestion. En tant que tel, il devrait être abordé comme un outil de gestion.
Utilisez des pratiques de gestion lorsque vous commencez
Il existe une structure pour gérer les personnes où l'objectif est de rencontrer un résultat souhaité. Certaines des principales approches de la gestion ne s'appliqueront pas dans des commentaires, mais la plupart des volontés. Les sujets applicables incluent l'environnement, le leadership, l'organisation et le contrôle.
Environnement
Culture
L'environnement dicte le style de gestion. La culture et l'environnement du lieu de travail doivent être gardés à l'esprit lorsque vous utilisez des outils de gestion. Cela est généralement affecté par l'industrie et la taille de la société ou de l'entité gérée.
Style
S'il y a une culture légère, cela peut survenir dans le style de gestion utilisé. S'il existe des directives très strictes, des politiques et des conséquences, cela doit être reflété dans le style utilisé. Donc, si tout le monde est à bord d'une blague des guerres d'étoiles faisant référence à des droïdes et d'une tempête de Stormtrooper faibles, une interjection comique peut être applicable. Cependant, s'il y a des conséquences désastreuses de ne pas prendre au sérieux le résultat final, il peut être nécessaire d'éviter d'être évitées.
Leadership
Fondamentaux
Il y a trois piliers principaux de leadership à prendre en compte lors de la commentaires. À savoir, ils sont la vision, la communication et le jugement.
Vision
Il est important de garder la grande vision à l'esprit lorsque vous expliquez ou donnez des instructions. Dans les commentaires, cela pourrait signifier de souligner la manière dont les faibles changements affectent le projet dans son ensemble, quelles sont les conséquences d'adopter différentes approches, ou une pointe du chapeau à la séparation des préoccupations.
Communication
Être un bon communicateur est important dans de nombreux aspects de la vie. Ce n'est pas différent dans les commentaires. L'emploi d'un niveau de brièveté sage est important - d'autant plus que des commentaires ne devraient pas prendre beaucoup de place. Allez au point précoce, puis sauvegardez-le avec un exemple si nécessaire. Dans une organisation plus importante, cela peut également inclure la nécessité d'envoyer un communiqué ou un mémo si la question n'est pas localisée à une session d'examen.
Judgement
Il est important que la stratégie soit utilisée lors du jugement si des commentaires doivent ou non être apportés et que doivent être les changements. Votre jugement n'a pas toujours besoin d'être correct, mais il doit être toujours correct, en particulier lorsque des appels de jugement importants sont faits.
Organisation
D'un point de vue de la direction, l'organisation fera référence à la maintenance de l'objectif final et de veiller à ce que les processus soient alignés sur un ensemble de règles. Les commentaires devraient également garder cela à l'esprit dans la mesure où les commentaires devraient être lorsque cela s'appuiera de l'autre pour s'assurer que le flux de conception est suivi. Il sera également important de garder à l'esprit la portée du code examiné afin de réduire le couplage et de suivre la conception globale.
Contrôle
Le contrôle des actions de ceux-ci est géré est un processus délicat. Tout en étant ferme, il convient également de garder à l'esprit que les gens sont importants. Il existe plusieurs compétences de gestion à utiliser tout en contrôlant les autres. Ces compétences sont politiques, conceptuelles, interpersonnelles, diagnostiques et techniques.
Politique
La politique peut être trouvée à tout moment il y a une interaction entre les personnes. C'est un énorme sujet, mais dans une politique de sens générale tourne autour de l'influence. Il est important de garder à l'esprit la politique personnelle et professionnelle au travail lorsque vous faites un commentaire. Cela pourrait être lié à une instruction, à une blague, voire une question.
conceptuel
Gérer via la conceptualisation est un outil important. Cela nécessite une analyse complexe de la situation à portée de main. Lorsque vous commenciez, cela peut être avantageux pour inclure une partie de l'analyse utilisée pour la conclusion ou le changement indiqué dans la révision.
interpersonal
Les compétences interpersonnelles sont très importantes lors de la gestion. C'est aussi un sujet important. Certaines des choses importantes à prendre en compte avec les compétences interpersonnelles du mentorat, de la critique constructive et du "harponnage".
Mentoring
Il est important que la gestion soit considérée comme un mentor que comme un antagoniste. Dans un examen de code, cela signifie qu'il sera parfois bénéfique d'inclure un signe de tête à un modèle de conception ou une approche qui pourrait être utilisée pour améliorer une situation.
Constructive Criticism
La critique est importante car elle invoque la réflexion. Cependant, la critique devrait être conservée aussi positive que possible quand elle peut être. Cela signifie proposer des preuves valides pour soutenir la critique et garantissant également que le ton utilisé n'est pas négatif. Lors de la révision du code, cela pourrait inclure une exception ou un scénario possible qui générerait une erreur tout en impliquant une solution au lieu de montrer chaque endroit qui était incorrect lorsque l'ensemble du code doit être remplacé de toute façon.
"Harpooning"
"Harpooning" est lorsque vous harpillez au figuré quelqu'un au sol. Cela se fait en les brisant pas à pas à pas sans aucun sursis avant le moment où ils se sentent incapables de se lever. Si vous harpillez une personne dans une critique de code ou ailleurs, vous perdrez leur coopération. Il est important d'éviter de casser une personne excessive.
Résumé
Traiter les commentaires dans un examen de code en tant qu'outil de gestion. N'oubliez pas que les commentaires devraient être brefs, au point et constructif. Assurez-vous également que tout en commentant que la personne examinée est prise en compte.
Les critiques de code sont un outil d'amélioration de la qualité du code, en partie en découvrant des défauts. Plus important encore, vous voulez instiller de bonnes pratiques de codage.
De cette perspective, il est important de commenter des choses bien faites. Dans un contexte de formation, des améliorations devraient également être commentées. Si votre culture est une amélioration continue, vous devriez toujours commenter des améliorations.
Les erreurs, les bugs et le mauvais codage se produiront. Signalez-les de manière non personnelle et traitez-les comme prévu.
D'une perspective de modification comportementale, la récompense est beaucoup mieux pour produire des changements que la peine. Je envisagerais d'avoir un bon travail remarqué comme une récompense.