Compensaciones:
- Agotador. Según mi experiencia práctica, codificar 1 hora en pareja es tan intensivo como codificar 3 horas solo. Se necesita más descanso entre las sesiones de programación en pareja. Y mas cafe.
- Cuando surge un problema, dos personas están atrapadas en él. Solo por esta razón, a veces sugiero dejar la programación de pares hasta que encontremos la solución.
- Dos personas son absorbidas por una tarea.
- Todos los desarrolladores deberían tener entornos de trabajo similares. No es demasiado fácil hacer la programación de pares, cuando el entorno es totalmente desconocido para un miembro del par. (Usar el mismo IDE es apenas suficiente, aunque a veces me siento incómodo con diferentes configuraciones de validación de código o diferentes esquemas de color.
- Cuando se forma un par malo. Hay buenos pares y malos pares. Por ejemplo, unirse a dos desarrolladores junior no tiene mucho sentido, pero unirse a dos profesionales también podría no ser la mejor opción porque discutirán interminablemente sobre las cosas más marginales.
Beneficios:
- Un intercambio de conocimientos más efectivo. Dos personas conocerán el código escrito y el entorno (técnico, funcional, histórico, comercial) de ese código. Es bastante importante en el desarrollo ágil, donde no hay tanta documentación escrita. También es una muy buena oportunidad para aprender sobre un módulo interno del software desarrollado o un marco de trabajo de terceros, cuando una persona de la pareja ya tiene algún conocimiento al respecto.
- “Más ojos ven más cosas”. Si una persona no detecta un error, la otra lo hará.
- Dos personas se inspiran mutuamente y refinan sus ideas.
- Si una persona tiene reclamos menores sobre la calidad del código, la otra lo obligará a ir al nivel superior.
- Solo se necesita una estación de trabajo. 🙂
- ¿Por qué debería aprender Scala? ¿Cómo es diferente / único / mejor que otros idiomas? ¿Hay operaciones que solo se pueden realizar en Scala? ¿Qué tan rápido es en comparación con Java / Haskell / Clojure / Lisp, etc.?
- ¿Deben los ingenieros diseñar?
- ¿Qué software se desarrolló con el método de 'sala limpia'? ¿Por qué?
- ¿Qué compañías en Silicon Valley tienen la reputación de tener los "peores" ingenieros?
- ¿Cuál es el mejor software para que un principiante aprenda a ingresar a la industria de efectos visuales?