Cada domingo tu bandeja de entrada se llevará una alegría

LSN191

El parentesco entre la construcción de edificios y de software por Diego López

La newsletter está abierta a participaciones y hoy escribe para ti un invitado de excepción.

Diego López es desarrollador software con alto interés en el mundo del frontend y de la programación creativa.

Es el creador de Coding Potions, un blog sobre desarrollo en el que sobre todo escribe artículos sobre Vue, Angular y Javascript en general.

Además tiene una newsletter llamada Alquimias en la que comparte reflexiones sobre el mundo de la programación y además comparte artículos y recursos que encuentra por la red.

🚀 Apúntate y recibe La Selecta
Newsletter cada domingo

Programadores y albañiles

Mucha gente dice que los albañiles y los desarrolladores son muy parecidos. Ambos construyen algo a medida, utilizan su set de herramientas y prefieren medir y pensar dos veces a tener que corregir o rehacer algo.

¿Podemos afirmar entonces que los desarrolladores son los albañiles del siglo XXI?

No del todo, aunque ahora veremos que hay fases y procesos de la construcción de casas y edificios que son muy parecidos a los del mundo del desarollo.

Planificación

Antes de empezar una casa hay que hacer los planos. Tienes que decidir que tipo de casa quieres construir, en qué espacio, para qué tipo de personas y con qué presupuesto.

Con el desarrollo de software pasa lo mismo, aunque hoy en día ya no se toman todos los requisitos en la fase inicial (ciclo cascada) si que hay que pensar bien lo que se quiere hacer y con qué propósito, aunque durante el desarollo puedan cambiar ciertos aspectos.

Los dos mundos comparten su naturaleza de producto a medida, que hay que probar y testear e integrar con otros productos o técnologías, por ejemplo en la construcción de edificios hay que tener en cuenta su conexión con el sistema de red eléctrica y de agua de la calle y hay que hacer pruebas y cálculos para que la casa no se derrumbe.

Desarollo

En esta fase ambos casos tienen en común que un fallo de diseño o de implementación puede hacer que se pierda mucho tiempo (y dinero) a la larga en el proyecto.

Por ejemplo cambiar una habitación de una casa ya hecha se puede hacer, pero haciendo obra y todo lo que eso conlleva. En software puede pasar lo mismo, un error en la elección de framework o de requisitos puede hacer que se pierda mucho tiempo.

Otra cosa en común que comparten es que en software y en construcción de casas intentas siempre usar cosas ya hechas. En software es muy común usar librerías, frameworks y lenguajes ya probados, al igual que al hacer una casa compras muebles, ventanas, puertas y todo tipo de decoraciones ya creadas.

Como se suele aconsejar lo mejor es "no reinventar la rueda" y usar tecnologías y piezas que se saben que funcionan y están bien probadas.

La metáfora no aplica siempre

Aunque los dos mundos son muy parecidos la realidad es que también tienen sus diferencias.

En desarrollo de software hoy en día se siguen metodologías ágiles, eso quiere decir que se planifica semana por semana y que los requisitos iniciales pueden cambiar durante el proceso de desarrollo.

En construcción de casas sin embargo, una vez hechos los planos se tiene que mantener el diseño hasta que termina la obra. Es cierto que una vez hecha la casa puedes mover paredes y adaptar cosas a tus necesidades, pero es una vez ha acabado la fase de desarrollo.

Otra diferencia importante es que en el mundo software se pueden construir piezas en paralelo de forma independiente sin necesitar de una base común a todas.

En el mundo de la albañilería por otro lado no se puede crear cada habitación de forma independiente, hay que primero hacer los cimientos de la casa, paredes y tejados antes de ponerte a hacer las habitaciones.

Aunque cuidado con esto porque se está modernizando, cada vez se ven más casas prefabricadas en los que se compra cada habitación por módulos que luego se juntan para formar la casa terminada.

¿Será que estos dos mundos tienden a parecerse?


Si te ha gustado este envío, haz correr la voz entre colegas, gente a la que quieres y, por supuesto, compártelo en twitter.

El penúltimo renglón

Como siempre, tu colección de recursos preferidos, también en el último domingo de Octubre.

¡Nos leemos el próximo domingo!