He estado haciendo muchas revisiones de código últimamente, y no estoy seguro de los efectos positivos y negativos y la profesionalidad de poner comentarios positivos y / o divertidos en las revisiones de código.
Utilizamos Github como nuestra plataforma de revisión de código en mi equipo, por lo que cualquiera puede ver los comentarios. Generalmente trato de usar esta plataforma para que todo el proceso de principio a fin sea visible e histórico.
Respuestas:
Es importante resaltar lo positivo y lo negativo. Sé que si estuviera revisando el refactor de un subsistema infernal particular en algo ordenado y limpio, probablemente le compraría una pizza al programador por sus esfuerzos.
Si está utilizando revisiones como capacitación, es doblemente importante: resaltar un buen código será útil para los programadores junior que también revisen ese código. Tendrán la oportunidad de hacer preguntas sobre por qué un enfoque o técnica en particular es mejor que otro.
fuente
Divertido: guárdelo para el enfriador de agua, excepto en dosis mínimas; tener una cara de ciruela no es un requisito para revisar el código.
Positivo: Ciertamente. La revisión incluye tanto positivo como negativo / constructivo, por definición.
La retroalimentación positiva ayuda a todos:
Para el que recibe el visto bueno, refuerza su confianza e inspira a hacer más de lo mismo a través de sus comentarios positivos.
Por lo demás, como otros han mencionado, aprenderán qué hacer y qué no hacer . También se les animará a sobresalir, por lo que un día también podrán estar en el centro de atención.
Una vez trabajé para un jefe que fue liberal en sus comentarios positivos: el equipo fue muy exitoso y productivo como resultado. Siguió adelante, y otros asumieron el cargo que carecían de su capacidad para alabar un trabajo bien hecho. La productividad y la moral cayeron en picada, y muchos de los mejores miembros del equipo abandonaron la empresa.
fuente
Yo diría que mantenga los comentarios limpios y al grano, exactamente por la cultura.
No se puede evitar que algunas personas tomen las cosas mal.
Para mitigar eso, una charla personal de uno a uno facilitará las cosas, si no es posible cara a cara, chat, correo electrónico o skype.
fuente
Comentar en una revisión de código es administrar
Tratar los comentarios como una herramienta de gestión.
Insertar comentarios en una revisión de código es una forma de gestión. Como tal, debe abordarse como una herramienta de gestión.
Use prácticas gerenciales al comentar
Hay una estructura para administrar personas donde el objetivo es alcanzar el resultado deseado. Algunos de los principales enfoques de gestión no se aplicarán en los comentarios, pero la mayoría sí. Los temas aplicables incluyen medio ambiente, liderazgo, organización y control.
Medio ambiente
Cultura
El entorno dicta el estilo de gestión. La cultura y el entorno del lugar de trabajo deben tenerse en cuenta al utilizar cualquier herramienta de gestión. Por lo general, esto se ve afectado por la industria y el tamaño de la empresa o entidad que se administra.
Estilo
Si hay una cultura alegre, eso puede aparecer en el estilo de gestión que se utiliza. Si hay pautas, políticas y consecuencias muy estrictas, eso debería reflejarse en el estilo utilizado. Entonces, si todos están a bordo para una broma de Star Wars que hace referencia a droides y un soldado de asalto de mente débil, entonces puede ser aplicable una interjección cómica. Sin embargo, si hay graves consecuencias de no tomarse en serio el resultado final, entonces puede ser necesario evitarlo.
Liderazgo
Fundamentos
Hay tres pilares principales de liderazgo a considerar al comentar. Es decir, son visión, comunicación y juicio.
Vision
Es importante tener en cuenta la gran visión al explicar o dar instrucciones. En los comentarios, esto podría significar señalar cómo pequeños cambios afectan al proyecto en su conjunto, cuáles son las implicaciones de adoptar diferentes enfoques, o un consejo para la separación de las preocupaciones.
Communication
Ser un buen comunicador es importante en muchos aspectos de la vida. No es diferente en los comentarios. Es importante emplear un nivel sabio de brevedad, especialmente porque los comentarios no deberían ocupar mucho espacio. Llegue al punto temprano y luego respalde con un ejemplo si es necesario. En una organización más grande, esto también puede incluir la necesidad de enviar un comunicado o memorando si el problema no se localiza en una sesión de revisión.
Judgement
Es importante que se use la estrategia cuando se juzga si es necesario hacer comentarios y cuáles deben ser los cambios. Su juicio no siempre tiene que ser correcto, pero sí debe ser consistentemente correcto, especialmente cuando se hacen grandes juicios.
Organizando
Desde el punto de vista gerencial, la organización se referirá a tener en mente el objetivo final y garantizar que los procesos estén alineados para seguir un conjunto de reglas. Los comentarios también deben tener esto en cuenta, ya que los comentarios deben, cuando sea posible, basarse entre sí para asegurarse de que se siga el flujo del diseño. También será importante tener en cuenta el alcance del código que se está revisando para reducir el acoplamiento y seguir el diseño general.
Controlador
Controlar las acciones de quienes se gestionan es un proceso delicado. Si bien es firme, también debe tenerse en cuenta que las personas son importantes. Hay varias habilidades gerenciales para usar mientras se controlan a otros. Estas habilidades son políticas, conceptuales, interpersonales, diagnósticas y técnicas.
Político
La política se puede encontrar en cualquier momento que haya interacción entre las personas. Es un tema enorme, pero en un sentido general, la política gira en torno a la influencia. Es importante tener en cuenta la política personal y profesional en el trabajo al hacer un comentario. Esto podría estar relacionado con una instrucción, una broma o incluso una pregunta.
Conceptual
La gestión a través de la conceptualización es una herramienta importante. Requiere un análisis complejo de la situación en cuestión. Al comentar puede ser beneficioso incluir parte del análisis utilizado para llegar a la conclusión o el cambio indicado en la revisión.
Interpersonal
Las habilidades interpersonales son muy importantes cuando se maneja. Este también es un gran tema. Algunas de las cosas importantes a considerar con las habilidades interpersonales son la tutoría, la crítica constructiva y el "arponamiento".
Mentoring
Es importante que el manejo se vea más como un mentor que como un antagonista. En una revisión de código, esto significa que a veces será beneficioso incluir un guiño a un patrón o enfoque de diseño que podría usarse para mejorar una situación.
Constructive Criticism
La crítica es importante porque invoca la reflexión. Sin embargo, las críticas deben mantenerse tan positivas como sea posible cuando sea posible. Esto significa ofrecer evidencia válida para respaldar las críticas y también garantizar que el tono utilizado no sea negativo. Al revisar el código, esto podría incluir mostrar una excepción o un posible escenario que generaría un error al tiempo que implica una solución en lugar de mostrar cada lugar que era incorrecto cuando todo el código tendría que ser reemplazado de todos modos.
"Harpooning"
"Arponar" es cuando arpeas figurativamente a alguien al suelo. Esto se hace desglosándolos paso a paso sin ningún alivio hasta el punto en que se sienten incapaces de levantarse. Si ataca a una persona en una revisión de código o en otro lugar, perderá su cooperación. Es importante evitar romper a alguien en exceso.
Resumen ejecutivo
Trate los comentarios en una revisión de código como una herramienta de gestión. Tenga en cuenta que los comentarios deben ser breves, al grano y constructivos. También asegúrese de que al comentar la persona que se está revisando se tenga en cuenta.
fuente
Las revisiones de código son una herramienta para mejorar la calidad del código, en parte al descubrir defectos. Más importante aún, desea inculcar buenas prácticas de codificación.
Desde esta perspectiva, es importante comentar sobre las cosas bien hechas. En un contexto de capacitación, las mejoras también deben comentarse. Si su cultura es de mejora continua, siempre debe comentar las mejoras.
Se producirán errores, errores y una codificación incorrecta. Indíquelos de manera no personal y trátelos como se espera.
Desde una perspectiva de modificación del comportamiento, la recompensa es mucho mejor para producir cambios que el castigo. Consideraría tener un buen trabajo como recompensa.
fuente