Aquesta setmana hem tingut la visita d’uns clients amb qui fa molt de temps que treballem i que han vingut a veure algunes de les novetats que estem desenvolupant. La veritat és que, a vegades, va bé fer l’exercici d’explicar a algú tot el que hem anat construint al llarg dels anys, ja que, en el dia a dia, no sempre valorem l’evolució del producte. Quan una persona externa t’ho reconeix, és molt d’agrair. Per tant, sempre va bé frenar un moment per observar tot el camí recorregut; això sempre és gratificant.
També recomano a tothom que faci servir GitHub Pages per allotjar pàgines i tingui un domini wildcard cap a GitHub, que ho desactivi immediatament. Hi ha el risc que algú faci un mal ús d’aquest accés i segresti subdominis.
Començo amb algunes recomanacions,
💾 Programari
Boring, és una utilitat per la consola que permet gestionar els túnels SSH de forma senzilla.
🤔 Curiositats
Un article sobre com s’analitzen paquets en una “Noise Storm”, que seria una gran quantitat de paquets inundant la xarxa. El més curiós de l’article és la descoberta d’una càrrega dins del paquet amb el text “LOVE”. Posteriorment, l’autor va publicar un segon article amb més informació.
📦 Recursos
Sóc un gran amant de PostgreSQL, i trobo molt interessant aquest article sobre el disseny del control de concurrència i versions. Explica com aquest aspecte es podria millorar i és molt útil per entendre com funciona. Així, quan hem de definir estructures o processos, podem evitar problemes futurs. Molt recomanable si utilitzes PostgreSQL!
🌟 El concepte
Amb el concepte d'aquesta setmana tanquem el cicle que hem anat construint sobre les eines i metodologies de treball en equips de desenvolupament col·laboratiu: repositoris (Vermutech #17), commits i branques (Vermutech #18), pull-requests (Vermutech #19) i integració contínua (Vermutech #20). Ara toca explicar el pas final en aquest procés: el Continuous Deployment o Desplegament Continu.
El Continuous Deployment és una pràctica que permet que cada canvi que passa les proves i validacions automàtiques es desplegui directament en producció sense cap intervenció manual. Això vol dir que les noves funcionalitats i millores arriben a l’usuari tan aviat com són validades, proporcionant un flux constant de canvis que els usuaris poden provar gairebé en temps real.
A GISCE-TI, el desplegament continu ens aporta grans avantatges:
Reducció del temps de lliurament: Elimina el retard entre el desenvolupament i el llançament, donant la possibilitat d’oferir novetats amb rapidesa.
Minimització d'errors: Amb proves automatitzades en cada commit, ens assegurem que el codi que arriba a producció manté la seva estabilitat.
Feedback immediat: Quan els usuaris poden provar les novetats al moment, l’equip rep feedback ràpidament i pot ajustar la funcionalitat segons les necessitats reals.
Aquest sistema ens permet desplegar el backend automàticament cada nit, quan l’impacte en la productivitat és menor, mentre que el frontal es desplega cada vegada que hi ha una nova versió durant el dia. Per garantir la coherència entre backend i frontend, fem servir feature flags (Vermutech #5), una eina que ens permet activar o desactivar funcionalitats segons la disponibilitat al backend, de manera que el frontal només mostra les funcions que el sistema pot suportar en cada moment.
Tot i els seus avantatges, el desplegament continu requereix una infraestructura robusta i proves de qualitat, assegurant que el codi que es desplega està suficientment protegit contra errors. Així, aquesta pràctica completa el procés de desenvolupament, oferint un flux constant de millores en mans dels usuaris amb rapidesa i seguretat.
💖 Feedback
Si t’ha agradat i em vols ajudar, fes arribar aquest contingut a qui creguis que li pot interessar, i entra al canal de Telegram per comentar la publicació.