AvaiLabs Formaciones

Cómo conseguir un código más limpio gracias a las katas de programación

Nuestro departamento siempre está en una búsqueda continua de mejora, tanto individual como colectiva. Nos gusta poner en práctica nuevas iniciativas, formaciones y experiencias que nos ayuden a ser mejores programadores cada día, pues entendemos que esto también se traducirá en una mejora del código, que será más eficaz y legible. Las últimas que hemos llevado a cabo son las katas de programación.

Katas, ¿y eso qué es?

No, no es ese lugar donde se prueban diferentes vinos, aunque como acompañamiento tampoco vendrían mal. 😉 El término de kata, en lenguaje de programación, nació en el libro «The Pragmatic Programmer», escrito por Andrew Hunt y David Thomas, y tiene como máxima el entrenamiento continuo para mejorar la manera en la que hacemos el código. Lo mejor es que se puede realizar de muchas maneras, pues no hay reglas fijas establecidas e inamovibles.

¿Cómo lo ponemos en práctica en AvaiBook?

En nuestro caso, escogemos a dos conductores -piloto y copiloto- como en los rallies, pero, en este caso, uno toma el teclado y el ratón y el otro le acompaña dando instrucciones. Después nos juntamos todos los integrantes del departamento técnico, por ejemplo, para refactorizar alguna página que lleva varios años sin experimentar cambios; miramos su código e intentamos mejorarlo entre todos.

Durante media hora, las dos personas seleccionadas van modificando el código, siguiendo unas buenas prácticas ya férreamente instauradas en el grupo, con una idea final muy sencilla: obtener un código lo más limpio y legible posible. ¿Por qué lo hacemos así? En nuestro día a día, somos muchos los que podemos tocar el mismo trozo de código; hacerlo de esta manera nos permite ser más ágiles con las modificaciones y conseguir la mayor homogeneidad posible

Mientras ellos trabajan, el resto observa y toma nota de sus dudas, así como de aquellas acciones que ellos hubiesen realizado en su lugar, para dar paso a una futura mejora.

Pasados esos 30 minutos, se termina de programar, comentamos el código refactorizado y ponemos en común todas las anotaciones. Todos tenemos siempre algo que aportar, desde el más senior hasta el recién llegado en prácticas; unos tienen experiencia y otros frescura pues observan desde una mirada «limpia».

Si entre todas las visiones que surgen, hay algún aspecto que es interesante estandarizar, lo votamos en común, vemos cómo puede realizarse y lo anotamos en nuestra wiki “AvaiDoc” de buenas prácticas.

¿Qué conseguimos con las katas?

Todas estas acciones tienen el objetivo de agilizar el entendimiento entre compañeros y, por ende, también los procesos y proyectos. No importa quién haya realizado el último desarrollo o qué lógica haya implementado para hacerlo; lo importante es que, cuando a otro compañero le toque llevarlo a cabo, pueda comprenderlo rápidamente.

También ayuda a los recién llegados a entender cómo nos organizamos para que puedan adaptarse a nuestro código fácil y rápidamente. Es, digamos, una relación win to win: entre todos nos ayudamos a ser mejores y, con ello, conseguimos un código cada vez más limpio para ser más eficaces.

1 COMENTARIO

DEJA UNA RESPUESTA

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *