Las buenas ideas, patrones y principios que se usan en el desarrollo de software, ¿de dónde salen?
[ H I L O ] ⇩
A finales de 1980 @unclebobmartin comenzó a recopilar distintos principios de diseño de software.
Algunos de los principios habían sido formulados por otros colegas, por ejemplo el Principio de Sustitución de Liskov fue enunciado por Barbara Liskov y Jeannette Wing.
@unclebobmartin El Tío Bob por aquella época debatía sobre estos principios con otros colegas en USENET (una especie temprana de Facebook).
A lo largo de los años, los principios fueron cambiado.
Luis Piedrahita en un show preguntó a una joven sentada en la segunda fila del patio de butacas del Teatro Principal que compartiera en voz alta un sueño.
Por inalcanzable que fuera. La chica optó por un tópico: que le tocara la lotería, o mejor todavía, el Euromillón.
El monologuista le pidió que concretase más.
Que pronunciase una cantidad generosa, con la que ella considerara que ya no tendría que volver a trabajar en el resto de su vida.
¿Eres desarrollador de software o eres cría de una gaviota?
AVISO: esto va a dejarte con cara de gaviota.
Te cuento ⤵️
Niko Tinbergen realizó un estudio sobre el comportamiento de las gaviotas cuya peculiaridad es un punto rojo en el pico.
Se percató de que las crías de éstas picoteaban el punto rojo de sus progenitores cada vez que estaban hambrientas.
Con este escenario, Niko creó un prototipo de pico fabricado de cartón.
Cuando puso el pico artificial en el nido, las crías de gaviota lo ignoraron. Después, colocó el mismo pico pero con un punto rojo de un tamaño similar al de las gaviotas adultas.
Como nos gusta catalogar como buena o mala práctica muy rápidamente en este este sector.
Ahora parece que Trunk-Based Development es la solución divina y se habla de gitflow como si fuera el demonio.
Esta pelicula ya la he visto muchas veces, es una reposición.
Me explico ⤵️
Pasamos de catalogar de buena práctica a mala práctica solo porque es lo único que conocemos, se lo hemos escuchado a alguien o porque en mi contexto me va bien o me fue mal
Nos olvidamos de que son dos herramientas que pueden tener sus casos de uso y contextos donde aplican.
Es volver a caer en aprender en base a soluciones y no a problemas.
Igual de malo es usar gitflow como estándar en una empresa para todos los casos como lo es usar Trunk-Based Development siempre.