forumAbrir tema

¿Cómo se construye una cultura de revisión de código? Mis observaciones de diez años

RRıdvan Y***hace 18 días·48 mensajes·17,1 mil visualizaciones#equipo#calidad#proceso
RRıdvan Y***Experto
Cargo
Líder de equipo de desarrollo
Miembro desde
sept 2023
Mensaje
196

Doki · Diseño de interfaz · 2023

#1

Llevo mucho tiempo como líder de equipo, así que voy a escribir esto sin prisas, porque el error más común en este tema es querer ir demasiado rápido.

La revisión de código no es una auditoría, es una herramienta de aprendizaje. En los equipos que no aceptan esta frase, el proceso siempre acaba igual: el senior busca errores, el junior se pone a la defensiva, las revisiones se ralentizan y al final nadie lee nada y aprueba por inercia.

He acumulado algunas reglas que funcionan, os las comparto.

Enviad cambios en trozos pequeños. Nadie lee de verdad un cambio de 500 líneas, todo el mundo pone "se ve bien". En cambios de menos de 200 líneas, el número de bugs encontrados aumenta notablemente.

Comentad el código, no a la persona. En vez de "¿por qué has hecho esto así?", preguntad "¿qué pasa aquí en este caso?". Es la misma info, pero la conversación cambia por completo.

Automatizad las discusiones de estilo. Temas como indentación, comillas o nombres deben resolverse con herramientas. Si se gasta el tiempo humano en eso, se escapan los problemas reales.

CCerenParticipante
Cargo
Especialista en pruebas
Miembro desde
mar 2024
Mensaje
178
Más útil#2

Estoy de acuerdo con el test, pero tengo una duda: ¿está escrito qué buscar en la revisión?

La razón de mi pregunta es esta: en la mayoría de equipos hay revisión de código, pero en qué mirar depende de la persona. Uno mira los nombres, otro el manejo de errores, otro no mira nada. Luego dicen "lo hemos revisado" y los mismos bugs salen a producción.

A nosotros nos funcionó una lista de comprobación corta. No es larga, son 5 puntos: ¿están cubiertos los casos de error?, ¿se han pensado los límites?, ¿se rompe la compatibilidad hacia atrás?, ¿hay tests?, ¿el logging y monitoreo son suficientes?

Lo medí, no lo estimo: el número de bugs que salieron a producción bajó notablemente el trimestre después de implementar esta lista. La lista no tiene magia, solo hace que todos miren lo mismo.

KKayahanParticipante
Cargo
Full-stack
Miembro desde
jun 2024
Mensaje
118
#3

estoy de acuerdo con la regla de trozos pequeños pero en la práctica es difícil. a veces el cambio es grande por naturaleza.

nuestra solución fue esta: antes de enviar un cambio grande, escribimos y compartimos el enfoque en una página. una lectura de 5 min evita una hora de debate en la revisión.

enterarte del enfoque equivocado después de escribir 500 líneas es lo peor. a esas alturas nadie quiere volver atrás y la mala decisión sale a producción.

AAhmetNuevo miembro
Cargo
Estudiante · software
Tipo de organización
empresa familiar
Miembro desde
ene 2025
Mensaje
48
#4

¿Puedo decir algo como novato?

Para mí lo más difícil no es no tomarme los comentarios como algo personal. Cuando llega un comentario que no entiendo, me da miedo volver a preguntar, creo que pareceré tonto. Luego adivino y arreglo mal.

No sé si me pasa solo a mí, pero quizás a otros también.

RRıdvan Y***Experto
Cargo
Líder de equipo de desarrollo
Miembro desde
sept 2023
Mensaje
196

Doki · Diseño de interfaz · 2023

#5

No te pasa solo a ti, es muy común y arreglarlo es nuestro trabajo, no el tuyo.

A nosotros nos funcionaron dos cosas. Primero, escribir la justificación al comentar. En vez de "cambia esto", decir "da error en este caso, por eso es mejor así". Si hay justificación, la necesidad de preguntar baja.

Segundo, cuando hay más de dos rondas de mensajes, llevar la conversación a un chat. Una reunión de 15 min es más rápida que 15 comentarios y desgasta mucho menos.

Y una cosa más: no hay preguntas tontas. Otras tres personas del equipo se preguntan lo mismo que tú pero no preguntan. Al preguntar, haces un favor a las cuatro.

SSerhatParticipante
Cargo
Desarrollador Go
Miembro desde
may 2024
Mensaje
88
#6

Dejar la discusión de estilo a las herramientas es la mayor ganancia por sí sola. Se monta en una semana y ahorra tiempo durante años.

SSinemExperto
Cargo
Gestor de proyectos
Miembro desde
oct 2023
Mensaje
176
#7

Aviso desde gestión de proyectos: poned el tiempo de revisión en el plan.

En nosotros pasó esto: durante mucho tiempo no consideramos la revisión como parte del trabajo, en el plan solo estaba el tiempo de desarrollo. Resultado: cada revisión se veía como "lo que retrasa el trabajo" y se hacía por cumplir.

Desde que lo pusimos en el plan, nadie sabotea las revisiones, porque ya no es algo que retrasa, es parte del plan.

GGürkanParticipante
Cargo
Sector energético
Tipo de organización
agencia boutique
Miembro desde
nov 2023
Mensaje
94
#8

Me pasó lo mismo.

AAyşegülParticipante
Cargo
Hotel boutique
Tipo de organización
taller
Miembro desde
ago 2024
Mensaje
86
#9

Exactamente así. Si no lo pones por escrito desde el principio luego surgen discusiones.

Lo dejo como nota, por si sirve.

TTolga Y***Experto
Cargo
Responsable de exportaciones
Sector
Imprenta
Tipo de organización
cadena de tiendas
Miembro desde
ago 2023
Mensaje
3
#10

Estoy totalmente de acuerdo. Que todo el mundo haga algo no significa que sea lo correcto.

Si tenéis dudas, escribid, os responderé en la medida de lo posible.

TTülay K***ParticipanteMiembro de la comunidad
Miembro desde
mar 2023
Mensaje
216
#11

A mí me pasó justo al revés por eso escribo. Lo importante no es la cifra sino en qué se basa esa cifra.

Si escribís el resultado aquí, también servirá de ayuda a otros.

ŞŞerife K***Veterano
Cargo
Director de clínica
Sector
Electricidad-electrónica
Tipo de organización
startup recién creada
Miembro desde
dic 2023
Mensaje
128
#12

Dejo una advertencia. Antes de decidir, mirad qué datos tenéis en la mano.

Ningún proceso mejora si no se registran datos porque no sabes qué tienes que arreglar. También me gustaría saber si alguien lo hace de otra manera.

KKaan G***ExpertoMiembro de la comunidad
Miembro desde
jun 2023
Mensaje
94
#13

Estoy siguiendo esto.

EElif B***Participante
Cargo
Coordinador de mensajería
Sector
Servicios de salud
Tipo de organización
empresa dentro de un holding
Miembro desde
dic 2023
Mensaje
228
#14

A nosotros también nos pasa.

AAlper E***ParticipanteMiembro de la comunidad
Miembro desde
dic 2024
Mensaje
184
#15

Guardado.

JJülide A***Participante
Cargo
Director de contabilidad
Sector
Joyería
Tipo de organización
Empresa de 20 empleados
Miembro desde
may 2024
Mensaje
103

Doki · Escaneo de vulnerabilidades · 2026

#16

Voy a resumir el tema porque se han dado varias respuestas diferentes. Empezad con una pequeña prueba, no lo integréis todo de golpe.

Yo seguiría por ese camino.

GGökhan A***Participante
Cargo
Fabricante · muebles
Miembro desde
oct 2023
Mensaje
74
#17

Perdona, pero esto no es válido en todos los casos. Las soluciones que funcionan a pequeña escala se rompen al crecer, aprendí esto tarde.

Corrijanme si me equivoco.

YYasemin S***ParticipanteMiembro de la comunidad
Miembro desde
feb 2024
Mensaje
42
#18

Rara vez se encuentra un texto que lo explique tan claro. No tengáis miedo de preguntar, quien no pregunta siempre paga más caro.

Si el alcance crece, debe crecer el plazo o el presupuesto. No hay tercera opción. También me gustaría saber si alguien lo hace de otra manera.

RRecepNuevo miembro
Cargo
Fontanero
Tipo de organización
Empresa de 20 empleados
Miembro desde
dic 2024
Mensaje
22
#19

tema muy oportuno.

AAlper P***Participante
Cargo
Administrador de sistemas
Sector
Inmobiliaria
Tipo de organización
Empresa de 20 empleados
Miembro desde
ago 2024
Mensaje
85
#20

Tomo nota, gracias.

Responder