django

Recursos de programación de django
Ponente: Maria Camila Guerrero Giraldo Título: Lo mejor de dos mundos: Backend y Machine Learning con Python Aula: Teoría 7 (Domingo) ----------------------------- Resumen: El desarrollo de backend y Machine Learning parecen ser dos temas muy diferentes, sin embargo, les contaré mi experiencia en la transición entre estos dos; fue un proceso bonito, fácil y sútil gracias a Python y sus bien conocidos frameworks. Ven, únete a mí y sigue este viaje profesional que realmente he disfrutado. Antes que nada, quiero hablar un poco desde mi experiencia, cómo fue esa transición para mí y cómo tuve la oportunidad de pasar al área de Machine Learning sin tener una carrera en estadística o algún tipo de estudio relacionado. Mi participación en las comunidades de Python fue clave para obtener el conocimiento y conocer a las personas adecuadas en este paso de mi carrera. Luego, me gustaría presentar algunos conceptos clave relacionados con el backend y, especialmente, enfatizar los frameworks que me ayudaron (Flask y Django), nombrando las generalidades, los conceptos que estos frameworks me ayudaron a reforzar conocimientos importantes y especialmente cómo la documentación y la tutoría de las personas con las que trabajé me convirtieron en un desarrolladora backend. También me gustaría hablar sobre cómo, en mi experiencia de backend, la mayoría de las cosas que hice usaron procesos síncronos. Y en este punto de la charla, haga un contraste con mi experiencia en Machine Learning, donde al mismo tiempo estaban presentes frameworks como Django y Flask, pero donde gran parte del procesamiento que se hacía era asíncrono. Mientras que en el backend tenemos APIs y solicitudes (Body, Middleware APIs, Responses), en Machine Learning tenemos pipelines (ETLs, Trainings y Predictions). Aquí me gustaría hacer una analogía y mostrar que en realidad son similares pero los contextos son los que realmente cambian. Algo que aprendí en ambos roles es que el desarrollo es importante, pero el mantenimiento y la calidad de lo que desarrollamos es mucho más importante. Voy a mencionar algunos conceptos de calidad y mantenimiento para cada contexto para que el público se sienta familiarizado y pueda ver lo interesantes que son ambos mundos, también nombrando específicamente algunas bibliotecas y herramientas pythonicas que soportan esta fase (Cloud tools, MyPy, Pylint, Scipy, Jupyter Labs). Como cierre de la charla me gustaría mencionar que me encantan ambos roles y hay muchas cosas por aprender, sigo aprendiendo sobre patrones de diseño, buenas prácticas, investigación sobre temas y me doy cuenta cada día, que estar en una comunidad como Python hace que este trabajo sea increíble todo el tiempo. Definitivamente en mi corta experiencia puedo decir que tengo lo mejor de ambos mundos.
Ponente: Manuel Calzado Vidal Título: Feature Flags. Stay in Control Aula: Teoría 7 (Sábado) -------------------------------------- Resumen: This talk aims to teach from scratch the concept of Feature Flags. How we have used it intuitively in those settings files, keeping boolean variables, how frameworks like Django manage in a more advanced way, for example permission levels and how finally, there are very powerful ways to deploy without activating any logic, do A/B deployment, incremental, ... deactivate features if you have any problem, with a click, without changing code or deploy... We live in a world of continuous delivery, with constant monitoring, logging... Feature flags are variables that are used within logical conditions. Imagine storing the rules that define the value of those feature flags outside your system, in a place where you can enable, limit or completely disable the use of a part of your application, from outside your own code. - Deploy the logic on a Friday... but enable it on Monday, giving incremental access to your users. - Block payments from a country or from a payment platform. - Change which class implements an interface as you need... Feature flags vs Blue / Green Feature flags vs Configuration management
Ponente: José Carlos Calvo Tudela Títutlo: Optimización de rendimiento de una API usando DRF Aula: Teoría 8 (Domingo) ----------------------------------------- Resumen: Django Rest Framework (DRF) nos facilita la creación de APIs mediante una filosofía "muy Django" es decir, con muchos elementos que hacen cosas de forma automática. Gracias a DRF podemos crear APIs de forma rápida y mantenible. El problema llega cuando dicha API se empieza a usar de forma masiva, y empiezan a surgir los primero problemas de rendimiento. Veremos cuales son esos problemas, y varias alternativas para solucionarlos, teniendo en cuenta que en general la mantenibilidad y el rendimiento suelen ir enfrentados.
Ponente: Israel Saeta Pérez y Francesco Venneri Títutlo: Django Zero Downtime Migrations Aula: Teoría 7 (Sábado) ---------------------------------------- Resumen: Building an application with Django is fairly easy at the beginning because the framework provides stable solutions for many of the issues that every engineer deals with. But when things start to get bigger and complex, we can’t ignore what happens behind the scenes. We often need to “tweak” the standard behavior to comply with our exigencies. How do we perform changes on a database with Django? We use what is known in the framework as “migrations”. We will see the basics of what they are, how they work and focus on their risks: they can be painful, lock tables and generate failed requests and downtime for the end users. We will then show the solution we have adopted in TravelPerk to perform migrations in the safest way possible without impacting the availability of our systems. An approach we call “Zero Downtime Migrations”.
Ponente: Daniel Sánchez Llopis Título: Más vale Wagtail en mano que CMS volando Aula: Teoría 8 (Domingo) ---------------------------------------------------- Resumen: Cómo crear la base de un CMS de una forma rápida y fácil es la clave que muchas veces se busca. En esta charla sobre Wagtail podremos ver las funcionalidades que nos ofrece dentro un espectro inicial de desarrollo de un CMS, además de ver varias las opciones mas personalizables y eficientes que podemos desarrollar para nuestro CMS como que trabaje en diferentes idiomas, creemos un generador de formularios, etc. Wagtail es una herramienta que estos últimos años ha crecido a nivel funcional y técnico a pasos agigantados, gracias a sus grandes capacidades como generador de contenido. En esta pequeña charla podremos ver los avances de Wagtail y su potencia para desarrollar en poco tiempo,una herramienta funcional ya sea como stack único o como Api de consulta. Todo ello es gracias a la facilidad que nos da el framework por si mismo y su versatilidad dentro de un marco como Django, ya que es su base sostenible. Haremos un pasada desde los puntos más básicos del framework como la generación de los modelos, sus especificaciones para su gestión desde el frontal del CMS incorporado, la autenticación o sistema de permisos personalizados, hasta la integración de elasticsearch, la generación de modelos para generar tareas programáticas dentro del cms, la creación de un sistema de auditoria o el uso de las señales.
Ponente: Fran Muñoz y Sonia Alhama Títutlo: Resolver, Romper, Recombinar: las tres Rs para programar apps Django reutilizables Aula: Teoría 8 (Sábado) ------------------------------------------------------------- Resumen: Como desarrollar tus proyectos pensando desde el inicio en paquetes que puedas usar o publicar. Nos enfocaremos en Django y como crear apps reutilizables y empaquetables, ya sea para reutilizar en tus proyectos o contribuir a la comunidad en forma de código libre. Revisaremos el proceso de diseño, las herramientas que nos aporta el propio framework y las técnicas que usan tanto django como las librerías más usadas en la comunidad. Finalmente daremos algunos consejos rápidos sobre la publicación y la preparación del setup.py.
Celebramos nuestro último meetup online de 2021, confiando en poder volver en algún momento de 2022 a los meetups presenciales y encontrarnos físicamente de nuevo. Mientras tanto, cerramos el año con una charla espectacular de un viejo conocido que ya ha pasado por Python Madrid en 2018 hablando de los "Papeles de Panamá". Se trata de Miguel Fiandor que en esta ocasión nos hablará de un tema de actualidad como los "Pandora Papers" y como ha sido posible este increíble trabajo de periodismo de datos gracias a Python y su ecosistema de bibliotecas datos. En esta charla vamos a ver que papel juegan Python y Pandas en una investigación periodística como los Pandora Papers. Veremos las librerías que utilizamos en las ETLs de transformación de millones de documentos en [mini] bases de datos, los distintos escenarios que se presentan, y nuestras herramientas preferidas, algunas cocinadas en casa. Sobre Miguel Fiandor: Soy Ingeniero Informático de la Universidad Politécnica de Madrid, en el 2012 me contagié de la fiebre de los datos, opendata, webscraping, etc, y decidí lanzarme a la piscina y emprender con un proyecto personal, 'Transparecia de Cuentas Públicas'. Económicamente no fue la mejor idea y empecé a hacer de freelance con Python y Django, en uno de estos saltos acabé en el ICIJ. Llevo 6 años como desarrollador de aplicaciones y bases de datos para el ICIJ, el Consorcio Internacional de Periodistas de Investigación que publicaron los 'Papeles de Panamá', 'Papeles del Paraíso', entre otros. Utilizo Python a diario para desarrollar los procesos ETL que dan forma a los millones de documentos filtrados para convertirlos en herramientas útiles para los periodistas, o también apps públicas y accesibles para todo el mundo.
Miguel Jiménez nos presenta "Adiós Django: tu API usando solo Python". Resumen: El objetivo será solamente usando Python y con ayuda de nuestro proveedor de cloud montar nuestra API REST de forma sencilla teniendo que saber poco más que Python olvidándonos de todo lo que hay alrededor de este tipo de proyectos que no es código. --- La novena edición de la PyConES se celebra como un evento en línea y totalmente gratuito durante los días 2 y 3 de Octubre de 2021. Web: https://2021.es.pycon.org Agenda: https://2021.es.pycon.org/ #schedule
Tomás Garzón Hervás nos presenta "Entrega tu producto como una API". Resumen: Entregar tu plataforma como un servicio es muy común hoy en día, donde encontramos múltiples servicios trabajando juntos e interaccionando entre ellos para conseguir un objetivo común. Por tanto, proveer de una poderosa API es clave para conseguir una buena integracion en el ecosistema. Hablaremos como podemos mejorar nuestra API y de esta manera mejorar nuestro producto facilitando la integración con terceros. Compartiremos patrones aplicados y lecciones aprendidas sobre el diseño de las APIs, bsaadas en el framework Django y Rest Framework, donde se tratarán temas como la autorización y autenticación, seguridad, bloqueo de llamadas, performance y tiempos de respuesta, operaciones batch, testing, etc. --- La novena edición de la PyConES se celebra como un evento en línea y totalmente gratuito durante los días 2 y 3 de Octubre de 2021. Web: https://2021.es.pycon.org Agenda: https://2021.es.pycon.org/ #schedule