—Verás, hay sólo una constante… una universal. Que es la única verdad real. Causalidad. Acción, reacción. Causa y efecto.
—Todo comienza con una elección.
—No. Eso es falso. La elección es una ilusión creada entre quienes tienen poder… y los que no lo tienen.
Matrix Reloaded, diálogo de Merovingio sobre la causalidad.
.
.
“Donde otros ven caSUAlidad, yo veo… CaUSAalidad”, decía Merovingio, en este caso en Matrix Revolutions. De manera similar, tomando como base las palabras de Merovingio, te voy a dejar aquí algunas bien sabidas «causas» y «efectos», de entre muchas que te podría haber escrito, que se dan en la gestión de proyectos tecnológicos, algunos de esos efectos que alguno considera caSUAlidad, a ver qué te parece…
Si comprimes tiempos de proyecto más allá de lo posible, causa, más adelante te dejarás el presupuesto en mantener software muy mal hecho, efecto.
Hará que la entrega sólo sea posible quitando del medio todo aquello que “consume” tiempo y que no sea implementar líneas de código, quitando pruebas, quita evaluar la calidad del código, quita pensar en un buen diseño, quitar montar un servidor de integración continua, quita pensar en control de versiones, quita hacer retrospectivas, etc. Fuera. Todo. A duras penas, trabajando mucho y mal… al final se llega a la fecha de entrega, aunque sea entregando algo “podrido por dentro”. Llámalo deuda técnica. Más aquí… Entendiendo los efectos de poner fechas sin criterio e imposibles a proyectos (versión para torpes) (1/2)
Si añades gente a un proyecto que ya va retrasado, causa, entonces… se retrasará más, efecto
La “conocida” Ley de Brooks, que, aunque hay que matizar según el caso, nos recuerda que los recién llegados frenan a los presentes por el tiempo que se necesitan para que aprender lo suficiente y ser productivos, el tiempo que durante ese periodo se necesitará de las personas que ya estaban, que han de enseñar a los nuevos, y del aumento de las vías de comunicación, lo que implica, entre otros, más gasto en coordinación del trabajo, gestión, etc. Más info, te dejo post “Añadir gente a un proyecto software con retraso hace que se retrase más”, algunos detalles y revisiones
Lo que mides y pides, causa, es lo que obtienes, efecto. Si pides y mides horas… obtienes horas.
Proyectos que solo valoran “las horas” que ven a alguien trabajando, a los que parece importarles nada el conocimiento que acumulado durante años y que se puede aportar en 30 min., seguir valorando el trabajo de un profesional en función de las horas que pasa sentado en la oficina, generar la justificación de que habiendo estado ciertas horas en la oficina… se ha cumplido con el trabajo. Te dejo post de este tema… Horas en la oficina vs ideas y conocimiento aportado
Si orientas el desarrollo desde las pruebas, causa, aseguras un desarrollo testeable, efecto.
La base de los TDD, BDD y relacionados, que nos recuerda que mucho desarrollo se hace sin tener en mente la importancia de las pruebas, tanto para asegurar (hasta donde sea posible) que todo está correcto, como para asegurar buenos diseños, como para permitir pruebas de regresión, que a su vez ayudan a la refactorización, que a su vez controlan la deuda técnica, etc. Pero como no se suele desarrollar pensando que que luego hay que testear, una excelente estrategia es primero hacer las pruebas y luego hacer un software que las supere.
- Diario: cómo Javier Garzás evita quedarse obsoleto estudiando a un X10 con IA-Esteroides - 7 noviembre, 2024
- Si creas Historias de Usuario con IA ¿A quién pertenecen? ¿A ti o la IA? El mono Naruto te lo explica - 31 octubre, 2024
- HistorIAs de usuario y como a Maximiliano lo ENGAÑABAN con la IA y como una viejuna historia del 1500 le salvó - 24 octubre, 2024
¡qué gran post! me ha encantado, Javier eres un crack 🙂
Gracias Santi 😉
Excelente post! Muchas veces en el frenesí del inicio del proyecto no nos fijamos en los efectos que se desencadenaran luego.(Aaaa! me encantan las referencias de cine)
La elección es una ilusión creada entre quienes tienen poder… y los que no lo tienen.
muy bueno, pero aplicado la política por ejemplo sería difícil decir cuando el pueblo elige lo que quieren los políticos o cuando el pueblo elige a los políticos para que hagan lo que ellos quieran. ¿se pude extender la idea a los proyectos?
En otros casos tal vez sea más directo, como un padre manipulando a sus hijos pequeños.
Como siempre otra entrada interesante que comienza en un símil cinematográfico y acaba en proyecto informático.