TRABAJANDO EN PAREJA

Descubre aquí los beneficios de trabajar en pareja y como esta metodología puede ayudarte a mejorar tu desempeño desarrollando código limpio, testeable y escalable

Introducción – ¿Qué es el pair programming?

Pair programming es el término que se utiliza en inglés para referirnos a la programación que se realiza en pareja con otro programador y mediante la cual ambos desarrolladores pueden intercambiar u ocuparse de los mismos roles para trabajar en el desarrollo de las diferentes partes de un código, resolver problemas de atascamiento o incluso hacer pruebas a un software.

En la práctica hemos comprobado que trabajar bajo la metodología Pair Programming requiere de mayores tiempos para llevar a cabo determinados procesos de elaboración de código, los cuales son compensados y superados en gran medida por la calidad final de los mismos.

Esta metodología ha tomado cada vez mayor reputación entre las empresas y los programadores que desean avanzar en la programación de aplicaciones robustas debido a los grandes beneficios que cada equipo consigue al programar en parejas.

¿Qué ventajas tiene implementar pair programming?

Al implementar la programación en parejas uno de los mayores beneficios que obtenemos está relacionado con el desarrollo ágil de software y por lo tanto el aumento en la productividad que esta metodología aporta, ya que muchas veces dos cabezas piensan mejor que una. Es por eso que contar con el apoyo y la creatividad de otra persona puede ayudarnos a superar con mayor facilidad los problemas de atascamiento o construcción de soluciones.

A su vez, trabajar con otra persona en tiempo real nos permitirá desarrollar un código mucho más robusto y estable que al final presentará una mayor calidad debido a que fue construido y revisado con una mirada más crítica en comparación a cuando trabajamos solos.

Trabajar con una dupla creativa también nos brinda la posibilidad de encontrar soluciones más eficientes en menores tiempo, así como también un enfoque más acrecentado en cada una de las etapas de elaboración y producción sobre las que nos enfocamos.

Mediante esta técnica los integrantes del equipo no solo obtendrán una mayor seguridad a la hora de desplegar soluciones y elaborar partes nuevas del código, sino que además las curvas de aprendizaje e incorporación de nuevos miembros podrán ser menos empinadas debido a que podremos formar equipos en los que un programador avanzado trabaje a la par de un programador que recién se incorpora

Por último, pero no menos importante, al trabajar mediante esta modalidad obtenemos aplicaciones con propiedad del código colectivo lo que favorece el esfuerzo en equipo más que el esfuerzo grupal mejorando la dinámica de trabajo, incrementando la sinergia grupal y generando una mayor confianza y seguridad en cada desafío.

 

¿Existen desventajas al programar bajo esta técnica?

Una de las desventajas más notorias de trabajar en pareja cuando programamos suele estar referida a los problemas de afinidad entre los miembros de un equipo, ya que el carácter, la predisposición y una mente abierta es fundamental para abordar en conjunto esta metodología de trabajo. 

Aunque no suele considerarse una desventaja trabajar con alta concentración y efectividad, cuando trabajamos mediante pair programming los niveles de distracción suelen reducirse al mínimo con lo cual el agotamiento y la fatiga suelen incrementarse después de muchas sesiones. Es por eso que cada equipo debe tener consideración con las prestaciones y posibilidades de sus miembros flexibilizando el método y los tiempos de trabajo para cada equipo.

 

Tipos de pair programming - estilos

Aunque existen diferentes estilos para trabajar en parejas, en la mayoría de los casos hay dos roles bien definidos que en la práctica suelen ser intercambiados por los programadores de un equipo de trabajo: el rol de driver (conductor) y el rol de navigator (copiloto).

El conductor suele ser el encargado de escribir las líneas del código mientras que el copiloto se ocupa de dirigir, guiar o conducir al conductor.

Los estilos de pair programming más conocidos son 3:

Backseat Navigator

Este estilo de trabajo en parejas suele utilizarse cuando uno de los dos programadores cuenta con menor conocimientos que el otro.

A través de la navegación por asiento trasero el programador menos experimentado toma el rol de conductor escribiendo lo que el copiloto dicta. De esta manera el programador más experimentado puede asumir los roles tácticos de desarrollo mientras que el programador menos experimentado recibe las indicaciones y progresa con velocidad en el despliegue de cada proyecto, al mismo tiempo que incrementa su nivel de programación y experiencia.

Ping Pong Pairing

Cuando hablamos del estilo de programación ping pong solo basta con imaginar el juego para comprender que los roles driver/navigator son intercambiados constantemente como la pelota de ping pong lo hace entre las dos partes de la mesa.

Este estilo suele utilizarse mucho cuando realizamos pruebas técnicas a nuestros programas. Primero uno de los programadores escribe un test que actualmente falla para que la segunda persona encuentre la prueba para pasar el test. Luego la segunda persona escribe un nuevo test que falla para que la primera persona encuentre como superar la prueba técnica. 

Mediante este tipo de pair programming los programadores pueden familiarizarse con el desarrollo dirigido por test o TDD y obtener una sinergia grupal que focaliza la atención para que ambos mejoren su desempeño.

 Pomodoro

El método pomodoro se utiliza para focalizar la atención. Mediante este estilo los programadores trabajan sesiones de 25 minutos, descansando 5 minutos entre sesión y sesión hasta completar 4 sesiones para conseguir una pausa más larga de 15 minutos.

 

Lo bueno de aplicar el método pomodoro en pair programming es que además de aumentar la concentración cada equipo puede utilizar los tiempos de sesión para intercambiar los roles y lograr así que ambos miembros ocupen 2 veces el rol de conductor y 2 veces el rol de navegador durante cada ciclo pomodoro completado.

Conclusión

Trabajar en parejas en programación es una experiencia que puede generar grandes rendimientos a la hora de avanzar sobre un estilo de programación enfocado en las buenas prácticas. Es por eso que en Craft Code te animamos a que experimentes estos estilos de pair programming y descubras más de sus beneficios en la práctica.

 

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad