Code Review

Lo bueno

  • Ayuda a reducir errores
  • Ayuda a valida requisitos
  • Ayuda a mantener estilos de código
  • Aprender entre los pares
  • Alienta a mejorar
  • Mejora la calidad

Lo malo

  • Tiempo largo en responder/aprobar
  • Comentarios irientes

Reglas

  • Somos humanos, seamos amables
  • Automatizar todo lo posible
  • Todos pueden ser revisores
  • Mantener la latencia baja

Responsabilidades del solicitante

  • Debe ser legible
  • Asegurar que el código pasa todos los tests (si existen)
  • Leer el código enviado y anotar comentarios de ser necesario
  • Detallar lo mas posible que se pretende solucionar y/o enlazar a tickes
  • No asignar revisor si no esta completo el MR
  • Ponerse en el caso del revisor
  • Hacer MR acotados (tamaño y contexto)
  • Evitar hacer cambios posteriores
  • Responder a todos los comentarios
  • Las revisiones son discusiones no pedidos

Responsabilidades del revisor

  • Tener en cuenta descripción y requisitos
  • Evaluar posibles daños colaterales
  • Dividir comentarios en critico, opcional y positivo
  • Ser constructivo en los comentarios
  • Dejar al menos un comentario positivo
  • Proporcionar sugerencias de código
  • Revisar de manera oportuna

Preguntas que debe hacerse el revisor

  • ¿El código es difícil de leer?
  • ¿Se puede refactorizar?
  • ¿Son descriptivos los nombres de variables/clases/funciones/etc?
  • ¿Hay funciones demasiado grandes?
  • ¿Esta bien documentado el código?
  • ¿Puede ser mas eficiente?
  • ¿Cumple con los estándares de código?

Conceptos de ingeniería a revisar

  • DRY
  • Estabilidad
  • Performance
  • Testeabilidad
  • Dependencias
  • Efectos colaterales
  • Verificaciones/seguridad

Ver que errores y problemas siguen apareciendo y ser mentalmente incapaz de abordarlos me ha provocado sentimientos de fracaso y depresión. Cuando miraba el proyecto momentjs, solo podía ver los aspectos negativos. Los errores, nombres equivocados y errores que había cometido. Provoco estar en un ciclo de estar demasiado deprimido para contribuir, lo que llevó a estar deprimido porque no estaba contribuyendo...

Tim Wood, autor de momentjs

Code Review

By c778551

Code Review

Tips para mejorar el code review

  • 193