Revisiones de código: un nuevo enfoque colaborativo

Fuentes: On commenting and approving pull requests

Este artículo de Jake Worth explora una metodología innovadora para revisiones de código (pull requests) que busca optimizar el flujo de trabajo y fomentar un ambiente de colaboración más efectivo. La idea central es combinar la aprobación de un pull request con la inclusión de comentarios, incluso si estos son sugerencias menores, preguntas o identifican problemas no críticos.

Tradicionalmente, las revisiones de código se ven como un proceso de aprobación o bloqueo. Sin embargo, Worth argumenta que, en equipos con un alto nivel de confianza y madurez, los comentarios pueden ser una oportunidad para el aprendizaje, la mejora continua y la identificación de riesgos potenciales. Al aprobar un pull request junto con los comentarios, el revisor demuestra que confía en la capacidad del equipo para considerar y, si es necesario, implementar las sugerencias. Esto asume que el equipo es lo suficientemente rápido para realizar los cambios y que el sistema de integración continua (CI) puede validar las modificaciones de manera eficiente.

Esta práctica es especialmente útil en entornos de startups y pequeñas y medianas empresas (SMBs) donde la alineación del equipo es crucial. Para que funcione bien, requiere que los miembros del equipo confíen en la capacidad de sus compañeros para interpretar y actuar sobre los comentarios. Además, es importante considerar la configuración del repositorio, ya que algunas plataformas eliminan las aprobaciones al detectar nuevos commits. El uso de herramientas como linters, formatters automáticos y type checkers reduce la necesidad de comentarios triviales, permitiendo que el revisor se concentre en aspectos más importantes.

Worth también recomienda el uso de etiquetas contextuales (como 'nitpick:', 'question:', 'suggestion:') basadas en el estándar Conventional Comments para clarificar la intención de cada comentario. En casos de problemas más significativos que deberían bloquear el trabajo, el revisor puede optar por comentar sin aprobar, o comentar y bloquear. El artículo finaliza con un desafío a los lectores para probar esta metodología con un colega de confianza, promoviendo una cultura de mejora continua y un enfoque en el progreso sobre el cumplimiento estricto de procesos.