¿Qué opináis del pair programming, es eficaz o es una perdida de tiempo?: la pregunta de la semana

3 comentarios

Genbeta Dev

Esta semana queremos debatir con vosotros una de las técnicas estrella y quizás más conocida cuando hablamos de extreme programming. Se trata de la programación por parejas o pair programming en la que dos programadores se sientan juntos para resolver una misma tareas. Existen ventajas obvias como dos ojos ven más que uno, pero en ocasiones parece que es una perdida de recurso si los dos programadores no pueden trabajar en paralelo al tener un único ordenador. Así que la pregunta de esta semana es:

¿Qué os parece el pair programming, es eficaz o es una perdida de tiempo?

Recordad que para responder, debéis hacerlo desde nuestra sección Genbeta Dev Respuestas (sigue el enlace).

Y ahora que tenemos pregunta, vamos a por la mejor respuesta de la semana pasada. La pregunta era ¿Qué tecnologías usáis para vuestras aplicaciones?. La respuesta más valorada ha sido la de Francisco Antonio Tapias que nos has hecho un estupendo resumen, organizando por categorías cada una de las herramientas que usa:

Antes de contestar, me he tomado mi tiempo en ver con qué trabajan los lectores de genbetadev. He podido comprobar que además de ser muy heterogéneos, que no existen tendencias claras en cuanto a frameworks. Eso indica algo claro: que no hay panaceas y que cada uno busca su mejor solución. También indica que nuestro nicho económico goza de salud (dentro de lo que cabe, con la que está cayendo) al existit tanta buena oferta de tecnología.
Bueno, a lo que vamos. Suelo trabajar con entornos de software libre, por lo que casi (“casi”) todas las herramientas que os comentaré, son eso, libres.

1. Editores: – Geany. Este es el que uso para casi todo desde hace un año. Es muy ligero y engloba todos los mínimos para un editor de desarrollo de software. Me sirve para desarrollar en cualquier cosa. – Gedit. Lo uso bastante también. Con los plugins que se le instalan, se transforma en un editor de código muy poderoso. Lo único que no me gusta es que no puedo plegar/desplegar bloques de código. – Otros editores que ya uso menos, por estar en la actualidad centrado en entornos más de scripting (python, ruby, php, jquery): Monodevelop, kdevelop, Anjuta.

2. Lenguajes: python, ruby, php, javascript, C#, C

3. frameworks: web2py y ruby on rails, jquery, Gnome y Mono

4. backends de datos: mysql, posgresql, SQLServer (el “casi”), MongoDB, sqlite.

5. Para intercambiar datos de forma remota o construir API’s de acceso remoto: JSON, XML y webservices.

6. Diseño bbdd; MysqlWorkbench (para luego generar png para documentación) o escribir SQL/JSON o DAL/ActiveRecord

7. Documentación: DocBook XML, DIA para diagramas. 8. Repositorios y gestión de proyectos: svn, git, TRAC, Redmine. 9. Entornos operativos: Linux. Distros por orden de preferencia: Ubuntu, Debian, Suse.

Espero que le sirva a alguien par orientarse.

Como de costumbre, muchas gracias por participar. Nos leemos la semana que viene
En Genbetadev Respuestas | ¿Qué os parece el pair programming, es eficaz o es una perdida de tiempo?

Anunciate aquí
Anunciate aquí
Anunciate aquí

¿Quieres saber más?

Artículos

Artículos relacionados que probablemente también te interesen

Ver más

Respuestas

Preguntas sobre este tema que ha contestado la comunidad

+ Deja tu comentario

Comentarios

  • 1

    Avatar de juanpablogc !

    En mi opinion es mejor separar las capas de programación por programador disponible, yo siempre es lo que he visto que funciona mejor, una vez hecho esto se integra todo en la solucion.

    Eso si cuando hay problemas o dudas siempre comentarlo, sobre todo si han pasado ya mas de 5 horas programando. Otra cosa que funciona mucho es descansar 5-10 minutos en otro sitio tomando algo y me vienen las ideas solas e incluso se modifican las existentes.

  • 2

    Avatar de charli_htp !

    Yo he programado así con compañeros cuando estaba realizando trabajos durante la carrera.
    Tras una sesión de pair programming (qué término más guay, aunque yo lo conocía por programar por parejas) tenía varias sensaciones:
    1) Acaba mucho más cansado mentalmente.
    2) Aunque no lo parezca, pero uno de los dos coge la inicitiva con respecto al otro.
    3) Es altamente improductivo si la tarea que se está realizando no está ligada al diseño de la arquitectura.

    El ejercicio de programar es algo tan personal como pintar un cuadro. ¿Os imagináis a dos pintores pintando un mismo cuadro cada uno con su estilo?

    -- editado por última vez a las 11:30

  • 3

    Avatar de Jose Juan !

    En mi opinión picar código en parejas no vale para nada, de hecho, si dos programadores están delante de un ordenador picando código ¡es que no están programando!.

    ¿Entonces...?

    Para obtener los datos de una base de datos y mostrar un report al usuario no hacen falta dos programadores, de hecho es algo que se suele hacer a la vez que otras cosas.

    Para lo que sí es útil N programadores es para hacer un "brainstorm" (o como se llame), es decir, a la hora de plantear, valorar, analizar, ... diferentes enfoques de un problema a resolver.

    Por supuesto que puede hacerse delante de un ordenador, picando código, pero dicho código es para validar o contrastar diferentes ideas, no para generar el producto final (por ejemplo, para valorar si en cierta estrategia es mejor usar un hash, una lista, ...).

    Picar código, mejor cada uno por su lado... (pienso).


    PD: hablamos en general, habrá situaciones críticas en las que se requiere un código de altísima calidad, entonces, varios programadores para generar el supercódigo probablemente sea deseable/necesario, pero no es lo normal ¿no?.

    -- editado por última vez a las 12:00

Escribir un comentario

Para hacer un comentario es necesario que te identifiques: ENTRA o conéctate con Facebook Connect

Anunciate aquí

WSL Weblogs SL