jueves, 18 de mayo de 2023

Me certifique en AWS Certified DevOps Engineer!

Este examen ha sido uno de los más difíciles a los que me he enfrentado a lo largo de mi carrera profesional, he salido victorioso y hoy lo comparto con mucha satisfacción.




Cómo explicar CI/CD para principiantes

 La codificación no se trata solo de escribir líneas brillantes de código, también se trata de asegurarse de que el código funcione bien con el resto del sistema de software.

¡Ahí es donde entra en juego la magia de CI/CD!


1. 𝗖𝗼𝗻𝘁𝗶𝗻𝘂𝗼𝘂𝘀 𝗜𝗻𝘁𝗲𝗴𝗿𝗮𝘁𝗶𝗼𝗻 (𝗖𝗜): 

Imagina que tú y tus amigos están trabajando en diferentes partes de esta torre LEGO.

Sería un caos si todos trataran de juntar sus piezas al final, ¿verdad?

Las cosas podrían no encajar, o la torre podría derrumbarse porque algo no estaba bien.

Entonces, en cambio, cada vez que usted o un amigo agrega una nueva parte (como una nueva pieza de código), inmediatamente la adjunta a la torre (o la "integra").

De esa manera, puede ver rápidamente si encaja bien o si hace que la torre sea inestable, y solucionar cualquier problema cuando aún sea pequeño y manejable.


2. 𝗖𝗼𝗻𝘁𝗶𝗻𝘂𝗼𝘂𝘀 𝗗𝗲𝗹𝗶𝘃𝗲𝗿𝘆 (𝗖𝗗): 

Ahora, supón que quieres mostrar tu torre LEGO a tus padres todas las noches cuando regresan del trabajo.

No querrías mostrarles una torre que no es estable o está incompleta, ¿verdad?

Por lo tanto, se asegura de que la torre esté siempre en un estado lo suficientemente bueno para presumir (como un programa que está listo para ser entregado).

Cada vez que agrega una pieza, también se asegura de que esté colocada correctamente y se vea bien (la "entrega").

De esa manera, su torre LEGO siempre estará lista para ser presentada.

Entonces, CI/CD en el mundo de la codificación es como agregar y mejorar constantemente su torre LEGO, y tenerla siempre lista para presumir.


En la actualidad,

🔧 Integración continua (CI) una práctica de desarrollo en la que los desarrolladores integran código en un repositorio compartido con frecuencia, preferiblemente varias veces al día.

Luego, cada integración se verifica y prueba automáticamente para detectar errores de integración lo más rápido posible.

Este enfoque permite que los equipos identifiquen y aborden los errores más rápido, mejoren la calidad del software y reduzcan el tiempo que lleva validar y lanzar nuevas actualizaciones de software.

🚚 Continuous Delivery (CD) es una extensión de la integración continua.

Implica preparar automáticamente el código para su lanzamiento a producción después de pasar una serie de pruebas.

El objetivo es tener una base de código que esté siempre lista para implementarse en un entorno en vivo.


Recuerde, CI/CD no es una solución única para todos; es más una filosofía o un conjunto de prácticas adaptadas a las necesidades específicas de una organización.

Si no está utilizando CI/CD, se está perdiendo una serie de beneficios.

Image Credit - @sec_r0 on twitter.