¿Qué es Python y por qué es tan popular?



 

 



Existen razones por las cuales un ingeniero devops necesita aprender Python, para eso vamos a responder las preguntas que están circulando en las redes:

¿Por qué es Python tan popular?

¿Por qué es Python tan demandado en DevOps específicamente ?

¿Por qué Python es usado en DevOps, con ejemplos específicos

¿Cuanto conocimiento mínimo de Python debes tener como Ingeniero DevOps y finalmente ¿Cómo comenzar con Python?


Comencemos con la primera pregunta:


1.¿Qué es Python y por qué es tan popular?


Principalmente Python es un lenguaje de programación así como Java o Javascript; Python comparado con otros lenguajes tiene dos ventajas muy grandes, primero es fácil de aprender, tiene una sintaxis simple y es muy fácil de configurar y comenzar por ejemplo comparándolo con Java en el cual necesitas una configuración inicial antes de siquiera comenzar tu aplicación pero es igual o quizás más poderoso que Java.


Ahora que es lo que hace un lenguaje poderoso o como se puede decir que Python es más poderoso, eso viene del ecosistema es decir las librerías los módulos que los desarrolladores de Python desarrollan ellos mismos pero también los desarrolladores externos crean y mantienen estas librerías así mientras más personas adoptan el lenguaje, más poderoso se vuelve;

Gracias a la librerías y las nuevas funcionalidades que se añaden, la segunda ventaja es que es flexible, pero ¿qué significa flexible en este caso? ¿qué es lo que hace un lenguaje flexible?

Significa que es fácil moldearlo a tus deseos, es decir no estás limitado o restringido por los atributos específicos del lenguaje como el sintax o los tipos de datos o alguna otras limitaciones, puedes extender Python ampliamente y uno de los resultados de esta flexibilidad convierte a Python en un lenguaje multipropósito,lo que quiere decir que es usado para muchas y diferentes categorías como:


data science


desarrollo web


machine learning


y en devops para escribir scripts de automatización.


2 ¿Por qué es Python tan demandado en DevOps?


Si revisas las descripciones de trabajo para el Ingeniero Devops, notarás que el 90 % de ellos incluyen Python como requerimiento, entonces ¿Por qué python es tan popular y demandado para los trabajos devops’y porque no un lenguaje diferente para el scrpting?,de hecho es por las características que ya mencioné antes, que es flexible, simple y fácil de leer, aún así es muy poderoso, ahora vamos a ser un poco más específicos:


Lo primero Python no necesita ser compilado y construído como java por ejemplo, lo que hace que el desarrollo en Python sea rápido e indoloro entonces perfectamente adecuado para los scripts simples que ejecuten tareas simples.

Segundo

Python es muy liviano, no requiere un tiempo de ejecución enorme como java, es muy fácil de instalar y correr.

La tercera razón es la que sintaxis de Python es muy simple, casi se lee en

pseudocódigo, y porque es eso importante, porque lo hace fácil para las personas que no escribieron el script ellos mismos, lean y entiendan el código, así pueden trabajar en él haciendo que los scripts de Python sean más mantenibles comparados a scripts de bash por ejemplo y comparando a los scripts de bash o powershell Python es plataforma independiente es decir que puede correr lo mismo desde linux, windows, mac os, y finalmente otra razón es que Python tiene muchas librerías geniales que automatizan las tareas de devops y eso es de nuevo gracias a la gran comunidad.


Las librerías son geniales porque en vez de escribir todo desde cero puedes usar el código de otras personas y construir a partir de ellos.


Estas son las razones por las cuales Python es una de las principales tecnologías usadas en las tareas devops.


Veamos ejemplos específicos de lo que Python es usado en DevOps

El ingeniero DevOps trabaja con muchas herramientas y tratar de combinarlas es realmente lo específico del trabajo de un devops en comparación a otros, se necesita conocer muchas herramientas para construir los procesos de devops como CI / CD, la preparación de la infraestructura , gestión y monitoreo etc.


Para dar ejemplos específicos:


La actualización automática de un ticket de información en Jira


saber si un Jenkins build corre exitosamente


automáticamente desencadenar jobs de jenkins en algún evento que pasó durante algún proceso del desarrollo del software.


envío las notificaciones a los miembros del equipo de eventos específicos cuando algo pasa en el sistema, el ambiente de desarrollo o aún en el CI / CD pipeline como


construir caracteristicas, errores en las aplicaciones, etc, quizás


haciendo regulares respaldo de nexus o los servidores de jenkins o la base de datos de tla aplicación


limpiar viejas imagenes de docker de los servidores para liberar espacio en los servidores, entonces estos son ejemplos de tareas que el ingeniero de devops pueda hacer en su trabajo

Estas cosas son complejas con muchos pequeños detalles y son tareas repetitivas , entonces en algún punto querrás hacerte la vida un poco más fácil y para hacer estos procesos más eficientes y tener menos errores deberás automatizar las tareas de manera que sea menos trabajo manual para ti en adición a eso si necesitas crear scripts de automatización o pequeños programas para tu equipo, para los desarrolladores, operadores y testers y así resolver algunos de sus problemas, esto puede ser un realmente una parte genial de tu trabajo, yo me emociono cuando creo programas que pueden automatizar cosas que los miembros de mi equipo han hecho manualmente en la compañía todo este tiempo.

Porque vienes al rescate y haces su vida más fácil también, ahora ves que útil es el conocimiento en python puede ser para un ingeniero devops y cómo puede ayudar en tu trabajo como devops pero también hacerte más valioso en tu trabajo y para tu equipo.


ahora veamos la pregunta 3.¿qué tanto de conocimiento en programación y de Python necesitas tener como un ingeniero devops?


No necesitas conocer todos los detalles del lenguaje, no es necesario que diseñes o implementes grandes y complejas aplicaciones de software o crear una página web elegante, lo que necesitas es ser capaz de automatizar tareas que tú y tus miembros del equipo harían manual como monitoreo, respaldos, limpiezas etc.

para ser capaz de hacer eso, necesitas estar familiarizado con lo básico de Python, cosas como el syntax, los tipos de datos, capaz de escribir lógica simple, saber como usar los módulos y librerías etc.hay muchos conceptos avanzados de programación como programación orientada a objetos, herencia, programación paralela también como los web frameworks de python y estas cosas son geniales para saber, pero no son esenciales para el trabajo de DevOps, lo más importante que es deberías estar cómodo con las gestiones de paquetes y la integración de librerías de terceros o trabajar con API de aplicaciones externas como proveedores de nubes etc.


Y si te preguntas 4.¿cómo puedes iniciar en Python?



comienza con un curso de python básico pero lo importante es aplicar este conocimiento en el trabajo en tareas de devops reales como aplicaciones y monitoreo de servidores respaldo de base de datos, tareas de automatización en la nube con AWS etc.

Espero que este artículo te haya ayudado a tener un claro entendimiento de por qué necesitas Python como ingeniero devops .

Comentarios

Entradas populares de este blog

AWS SAM y AWS Lambda docker Container Image tutorial con PYTHON USANDO A...

Solucion: Docker Error: No such container:

Los unicas 4 herramientas que necesitas para volverte un master en Devops