django

Recursos de programación de django
Ponente Nombre: Juan Luis Cano Rodríguez Título: Python para un mundo mejor: informe desde la trinchera Sala: Bollullo ———————— Equidad, trabajo digno, cooperación, sostenibilidad ecológica, reparto justo de la riqueza, compromiso con el entorno. No es ficción, sueño, ni utopía: es un sector que representa el 10 % del PIB en España, que ha sido recientemente impulsado por la ONU, y del que puedes formar parte. Hablamos de la Economía Social y Solidaria. ¿Y qué tiene que ver Python en todo esto? Alerta spoiler: la madurez tecnológica de la ESS madrileña y más allá deja mucho que desear, así que no vas a escuchar sobre metaversos, blockchains, ni "inteligencias artificiales" en esta charla. Lo que sí vas a escuchar es un resumen sobre el estado actual de la cuestión, el papel que juega el software libre, y sobre todo nuestra experiencia utilizando Python para gestionar cientos de entidades y socias, automatizar tareas, y en definitiva ayudar a crear un mundo mejor. Comenzaremos haciendo una breve introducción de la carta de principios de la Economía Social y Solidaria, contaremos cómo estaba el panorama tecnológico cuando llegamos (prepárate para llevarte las manos a la cabeza), desmenuzaremos los avances que hemos hecho en el último año gracias a Python (desde Django hasta reportlab pasando por Odoo e incluso una alternativa a Mastodon llamada Takahē), y cerraremos la charla con una nota de esperanza, una hoja de ruta muy ambiciosa, y una invitación a colaborar. — Python España: https://es.python.org/ Python Canarias: https://pythoncanarias.es/ Twitter/X: @PyConES Mastodon: https://fosstodon.org/ @pycones
Ponente Nombre: Andros Fenollosa Título: LiveView, un enfoque moderno de desarrollo Web Sala: Patos ———————— El enfoque de LiveView, o HTML sobre WebSockets, simplifica el desarrollo de aplicaciones de una sola página (SPA). Por un lado, evitar la construcción de una API (reduciendo costes), minimizas las esperas sustituyendo las peticiones HTTP por un protocolo más rápido (WebSockets), y puedes olvidarte de implementar un framework de JavaScript para renderizar el HTML, ya que lo harás desde el backend. Una técnica de desarrollo web que permite trabajar con lo mejor de un Server-side Rendering con la flexibilidad de una Single-page Application sin renunciar a un SEO de 100 puntos en PageSpeed Insights. Un enfoque moderno de desarrollo Web que evita el uso de APIs, la complejidad en el frontend y da respuestas en tiempo real. En la charla enseñaré sus secretos usando de base a Django. Desde la arquitectura, casos de éxitos que he vivido con clientes, ventajas, desventajas, aplicaciones, herramientas actuales, libros y un pequeño framework en Django. — Python España: https://es.python.org/ Python Canarias: https://pythoncanarias.es/ Twitter/X: @PyConES Mastodon: https://fosstodon.org/ @pycones
Pregunta 1: ¿Qué problemas has encontrado al intentar usar Snowflake como BBDD para una web hecha con Django? Pregunta 2: ¿Por qué deberíamos utilizar Snowflake como BBDD para nuestros proyectos en Django? ¿Sólo si necesitamos manejar grandes datos o para algo más? Pregunta 3: ¿Podemos tener la parte transaccional y analítica en Snowflake? Pregunta 4: ¿Una forma de backend/prototipado rápido?
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: 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: 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: 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: 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.