Programing

Modelo de Usuarios personalizado en Django

Django es un Framework para el desarrollo de Aplicaciones Web en Python, que incluye un modelo de autenticación y gestión de usuarios que podemos extender para adaptar a nuestras necesidades (tanto para usuarios admin, como no admin), algo que no sólo es habitual, sino también una práctica recomendada. En este Post vamos a ver cómo extender el modelo de Usuarios proporcionado por Django, añadiendo atributos, personalizando sus páginas, así como otros detalles como el envío de email (ej: reseteo de contraseña) y la configuración de secretos desde variables de entorno o desde un fichero .env (evitando hardcodear datos sensibles o configuraciones variables en el settings.py y registrarlos en el historial de git)

Ejemplo de un proyecto básico con Python, Django y PyCharm – II

Django es un Framework para el desarrollo de Aplicaciones Web en Python, que facilita muchas tareas, como la generación de páginas dinámicas desde el modelo (base de datos), uso de estilos y estáticos para mejorar la presentación (ej: css, js, imágenes, etc), auto-generación de formularios desde el modelo (minimizando el esfuerzo de codificación), y proporciona autenticación de usuarios mediante la built-in App de Auth, que a su vez permite crear formulario de login, logout, o signup de forma muy sencilla. Todo eso, y algún detalle más, es lo que vamos a ver en este Post.

Ejemplo de un proyecto básico con Python, Django y PyCharm

Django es un Framework para el desarrollo de Aplicaciones Web en Python, que proporciona su propio ORM e implementa un patrón Modelo-Vista-Plantilla (MVT: Model-View-Template) muy similar al popular MVC. En este Post vamos a ver un sencillo ejemplo, paso a paso, para introducirnos con las Plantillas de Django, cómo utilizarlas, utilizar Modelos, veremos el Panel de Administración (Django Admin), Vistas basadas en Clases, Pruebas Unitarias en Django (así como la forma de obtener un informe de cobertura y subirlo a Sonarqube), y como dockerizar la solución con Gunicorn y NGINX.

Hello World con Python, Django y PyCharm

Django es un Framework para el desarrollo de Aplicaciones Web en Python, que cada día goza de mayor popularidad, facilitando el desarrollo rápido de Aplicaciones Web de forma sencilla. En este Post explicamos como crear un Proyecto Django desde cero con el IDE de PyCharm, introducimos los principales conceptos de Django que veremos a través de un ejemplo, cómo ejecutar y depurar nuestro código, cómo Dockerizarlo, y cómo utilizar un servidor Web Gunicorn y un NGINX como Proxy Inverso con Docker Compose, además de algunos otros detalles.

Python – Exportando datos de Sonar con sonar-exporter

Muchas empresas utilizan SonarQube para el análisis estático de código y ejecución de pruebas unitarias, lo que permite entre otras cosas, detectar bugs, vulnerabilidades de seguridad, cobertura de código, y code smells, para diferentes lenguajes de programación (ej: Java, Kotlin, C#, JavaScript, Python, etc.). En este Post os comparto una utilidad Python de línea de comandos para la exportación a CSV de datos de SonarQube, de utilidad para obtener tanto datos de usuario, grupos, y proyectos, como métricas de los diferentes proyectos, y poder ver su evolución en el tiempo. Open Source, totalmente free (repo en GitHub), y preparada para correr en Docker y Kubernetes

Python – Exportando datos de Jenkins con jenkins-exporter

Jenkins es quizás la principal herramienta para automatizar el CI/CD en muchas empresas, una herramienta abierta y extensible mediante Plugins y scriping, que permite integrarse cualquier tecnología que puedas necesitar. En este Post os comparto una utilidad Python de línea de comandos para la exportación a CSV de datos de Jenkins (ej: usuarios, jobs, builds, roles, etc.), de utilidad para obtener datos estadísticos, poder ver su evolución en el tiempo, o incluso repartir costes entre departamentos o cualquier tipo de análisis de uso. Open Source, totalmente free (repo en GitHub), y preparada para correr en Docker y Kubernetes

Python – Exportando datos de Jira, Confluence y Bitbucket con atlassian-exporter

Muchas empresas utilizan la suite de Atlassian, para la gestión de su ticketing (Jira Service Management), gestión de sus productos Software (Jira Software), documentación tipo Wiki (Confluence), y gestión de los repos Git (Bitbucket), entre otros motivos porque, la integración de todos ellos ayuda mucho a gestión ágil de proyectos y de productos. En este Post os comparto una utilidad Python de línea de comandos para la exportación a CSV de datos de Jira, Confluence, y Bitbucket (en todos los casos, de las versiones Cloud), de utilidad para obtener datos estadísticos, poder ver su evolución en el tiempo, o incluso repartir costes entre departamentos. Open Source, totalmente free (repo en GitHub), y preparada para correr en Docker y Kubernetes

Hello World con Python y PyCharm

Python es uno de los lenguajes de programación más populares (no lo digo yo, lo dice la encuesta anual de Stack Overflow), y PyCharm es uno de los principales IDE para programar en Python (junto a Visual Studio Code, son las dos principales opciones), al proporcionar auto-completación de código, depuración avanzada, integración con Git, gestión de paquetes o librerías, refactorización de código, extensión mediante Plugins, y mucho más. En este Post vamos a explicar a través de un ejemplo, cómo crear un nuevo Proyecto en PyCharm, y aclarar las dudas habituales, como la gestión de los Virtual Environment, integración con Git y/o GitHub, ejecutar y depurar, Dockerizar nuestro programa, ejecutarlo con Docker Compose, añadir un README y una Licencia Open Source, etc