Noticiero Python y Datos

Archive

El noticiero no vuelve, pero Juanlu sí

¡Hola!

Recibes este correo porque eras una de las personas que leía el Noticiero de Python y Datos. Lo primero de todo, c̶ó̶m̶o̶ ̶e̶s̶t̶á̶n̶ ̶l̶o̶s̶ ̶m̶á̶q̶u̶i̶n̶a̶s̶ muchas gracias.

El año pasado se me juntaron demasiadas cosas. El cambio de trabajo me supone ya un esfuerzo mental constante - estoy creciendo mucho a nivel personal y profesional, a costa de más altibajos y desgaste.

Por otro lado, la desaparición de Twitter (ahora X) me robó una fuente de información que utilizaba con frecuencia. Estoy feliz en Mastodon y muchos de mis pythonistas favoritos han dado el salto, pero no todos. No estaba dispuesto a sacrificar mi salud mental por seguir en la red de Musk, si bien encontrar cosas interesantes para el noticiero se me hizo más difícil.

#70
February 17, 2024
Read more

El noticiero vuelve pronto ❤️

Estoy teniendo unas semanas un poco intensas de trabajo y además hay un pequeño problema técnico que tengo que resolver antes de seguir mandando emails, así que la siguiente edición del noticiero se va a demorar un poco. Gracias por la paciencia ❤️

Mientras tanto, que sepas que voy a estar dando un Kedro Tour a partir de la semana que viene. ¿Nos vemos en la PyData de Barcelona, en Python Girona, o en Big Data Mallorca? https://www.linkedin.com/posts/juanluiscanor_kedro-python-datascience-activity-7069967726085046272-a1c9?utm_source=share&utm_medium=member_desktop

Un saludo,

Juanlu

#69
June 2, 2023
Read more

Episodio 77 🐍⚙️

Versiones nuevas de Altair, plotnine, y pandera, codificando variables categóricas de manera sencilla en scikit-learn, trabajando con datasets particionados en Kedro, nos vemos en la PyCon Lituania, y fotitos de la JupyterCon de París.

🚀 ¡Muchas versiones nuevas esta semana!

Se ha publicado Vega-Altair 5.0 (Altair para los amigos), una biblioteca Python para visualización estadística basada en la gramática Vega-Lite, con muchas novedades: soporte para parámetros dinámicos, soporte experimental para el protocolo de intercambio de dataframes `dataframe, y mucho más.

De hecho, en el blog de Liam Brannigan, uno de los divulgadores de Polars más activos, puedes leer cómo utilizar dataframes de Polars con Altair 5.

También tenemos plotnine 0.12.1, una implementación del "Grammar of Graphics" en Python (en otras palabras: "ggplot2 en Python"). Esta versión trae un nuevo gestor de composición (es más fácil evitar que se solapen los objetos), un nuevo método save_helper() que devuelve la figura de matplotlib subyacente, y mucho más.

Y por último, pandera 0.15, que permite definir esquemas de datos para dataframes, trae soporte para pandas 2.0, sintaxis más breve para el tipado de los esquemas, valores por defecto, y mucho más.

💡 Esta semana he descubierto category_encoders, una extensión de scikit-learn para codificar variables categóricas. Creo que era el problema más frecuente entre mis alumnos, ¡y de mucha gente! Los hay supervisados y no supervisados.

También he descubierto kedro-partitioned, una extensión de Kedro para trabajar con datasets compuestos de muchos archivos.

📚 Esta semana no he leído ningún artículo notable, ¡mucha faena!

🛫 La semana que viene estaré en la PyCon Lituania hablando de cómo convertir tus notebooks de Jupyter en código mantenible usando Kedro. ¿Alguien más por allí?

🗼 Esta semana me perdí la JupyterCon en París, ¡por las fotos parece que estuvo espectacular! Mi sueño sería poder tener a Fernando Pérez dando una charla en la PyConES, ojalá se cumpla algún día.


Algunas de estas actualizaciones las he ido publicando en inglés en mi cuenta de Mastodon. ¡Sígueme en el Fediverso!

#68
May 12, 2023
Read more

Episodio 76 🐍⚙️

Edición ultrarrápida de domingo por la tarde: versiones nuevas de numba, statsmodels y geopandas, por qué no usar leyendas en matplotlib, y primeras pruebas con StarCoder.

🚀 Tenemos numba 0.57 (y llvmlite 0.48) con esperadísimo soporte para Python 3.11, soporte para cadenas dinámicas en excepciones, mejor soporte para aritmética de media precisión en CUDA, ¡y mucho más!

También ha salido statsmodels 0.14, con esperadísimo soporte para descomposición multiestacional y más cosas.

Y por último, geopandas 0.13 recién salida del horno (hace apenas unos minutos) incluyendo soporte para reproyectar a WGS-84 al guardar a GeoJSON (como dice el estándar), preparación para Shapely 2.0, y mucho más.

Y como cada primer noticiero de mes, novedades sobre Polars: entre las versiones 0.17.0 y 0.17.12 ha habido unos cuantos nombres de parámetros cambiados, soporte para crear un DataFrame desde un modelo de Pydantic, y muchas mejoras de rendimiento. ¡Esto va a toda velocidad!

📚 Me ha gustado mucho este artículo de Cameron Riddell sobre por qué no usar las leyendas de matplotlib.

#67
May 7, 2023
Read more

Episodio 75 🐍⚙️

Versiones nuevas de CausalNex, Pillow, Ray, y Prefect, dashboards sin backend con stlite y voici, cruzando el antimeridiano sin dramas, y malos tiempos para Binder.

🚀 ¡Fiesta de versiones nuevas esta semana!

Mis compañeros de QuantumBlack han publicado CausalNex 0.12, con nuevas visualizaciones de grafos interactivas basadas en Pyvis.

También ha salido Pillow 9.5, con posibilidad de especificar la resolución en DPI al guardar PDFs, nuevo parámetro corners para redondear las esquinas de las imágenes, modo RGBA para PDFs, y más.

#66
April 29, 2023
Read more

Episodio 74 🐍⚙️

Nuevo modelo masivo de lenguaje abierto, magia prohibida para depurar procesos Python, Shiny para Python, versiones nuevas de MLFlow, PyMC, y neuralforecast, topics de Kafka para series temporales, y estilos cyberpunk para matplotlib.

🦜 Esta semana Stability AI ha lanzado StableLM, un modelo masivo de lenguaje bajo licencia Creative Commons Atribución - Compartir Igual. No es el primer modelo masivo de lenguaje abierto (Alpaca, Dolly, y otros) y tampoco quiero dedicar mucho espacio a estos temas en el noticiero porque los peligros de los loros estocásticos son reales no soy un especialista, pero me ha parecido reseñable por venir de la empresa que creó Stable Diffusion. El modelo está disponible en Hugging Face.

Como ya señaló André Staltz, el "tiempo hasta la alternativa open source" se acorta cada vez más.

🚀 Esta semana ha habido numerosos anuncios y versiones nuevas, ¡intentaré resumir!

Bloomberg ha publicado PyStack, una herramienta que usa "magia prohibida" para inspeccionar la pila de un proceso Python. Puede servir para depurar procesos de larga duración o analizar volcados de memoria (core dumps). Por supuesto, el gran Pablo Galindo está en el ajo. Tienes más información en el anuncio oficial.

El soporte de Shiny para Python ya está disponible de manera general. No faltan las soluciones para crear cuadros de mando (dashboards) en Python, ¡por suerte hay para todos los gustos!

Y finalmente, tenemos versiones nuevas de:

  • MLFlow 2.3, con soporte mejorado para modelos de lenguaje (transformers, langchain, openai).

  • PyMC 5.3, con un nuevo método Model.debug() para ayudar a depurar modelos.

  • neuralforecast 1.5, con métodos jerárquicos y muchos modelos nuevos.

💡 Esta semana he descubierto, gracias a la charla de Javier Blanco en PyData Madrid, quix-streams, una biblioteca Python para facilitar el trabajo con series temporales utilizando Apache Kafka.

#65
April 23, 2023
Read more

Episodio 73 🐍⚙️

🚀 ¡Festival de versiones nuevas esta semana! Empezamos:

La gente maja de Ploomber ha sacado JupySQL 7.0, que incluye una API tipo ggplot para visualizaciones sobre tablas, soporte para MySQL y MariaDB, mejores mensajes de error, y mucho más. Además, Eduardo se lió la manta a la cabeza e implementó resaltado de sintaxis SQL en Jupyter, ¡por fin!

syntax

Por otro lado, Modin 0.20 trae implementaciones de algunas funciones para Dask que ya estaban disponibles con otros motores, y Prefect 2.10 por su parte trae “workers” (que van a sustituir a los “agents”), proyectos para agrupar flujos con sus dependencias, mejoras en la observabilidad a través de eventos, y mucho más.

#64
April 14, 2023
Read more

Episodio 72 🐍⚙️🐼 pandas 2.0

🐼 ¡Tenemos pandas 2.0! Claramente la noticia de la semana y de lo que llevamos de año.

Marc García, el release manager para esta versión, escribió un excelente artículo desgranando el cambio clave de esta versión, que es el cambio de motor de NumPy a Arrow. Estas ideas al final nacen del ya clásico “Apache Arrow y las 10 cosas que odio de pandas”, escrito hace casi 6 años por Wes McKinney, creador de ambos. Haber llegado por fin a empezar a ejecutar esa visión es un hito de la comunidad y todos los usuarios de pandas nos vamos a beneficiar de ese duro trabajo.

Para mayor entretenimiento, Marc contó todo el proceso, que duró varias horas, en su Twitter:

(¿Parece que Substack ya no puede incrustar tweets? ¡Gracias, Elon!)

#63
April 6, 2023
Read more

Episodio 71 🐍⚙️

💖 Como cada mes, tenemos el boletín de NumFOCUS con jugosas novedades, ¡recomiendo encarecidamente su lectura! Además, han publicado también su informe anual de impacto. Muy feliz de ver lo que han conseguido este año, y de haber podido contribuir nuestro granito de arena desde PyData Madrid.

Screenshot displaying "Virtual Meetups and Collaborations - NumFOCUS is a key supporter of PyData’s volunteer-led global Meetups now on every continent but Antarctica." and some numbers:  175598 RSVPs to 3024 total events, 216 groups, 73 countries, 203817 members.

🚀 Aparte de las versiones nuevas recogidas por NumFOCUS, esta semana hemos sacado Kedro-Viz 6.0, con previsualización de tablas, mejoras en el área de seguimiento de experimentos (experiment tracking), y más cosas. Y de paso, ¡nuevo blog!

#62
April 1, 2023
Read more

Episodio 70 🐍⚙️

¿Publicar en domingo o dejarlo ya para la semana que viene? He preferido optar por lo primero, sobre todo teniendo en cuenta que aún va a costar que vuelva el noticiero los viernes por la mañana. ¡Que lo disfrutes!

🚀 Esta semana ha salido nueva versión de la Anaconda Distribution, la 2023.03, que incluye la última y más nueva versión de conda, nueva versión de Anaconda Navigator (la interfaz gráfica para lanzar aplicaciones y gestionar entornos), soporte para Python 3.11, e inclusión de transformers y otros paquetes nuevos.

Hablando de conda, ha salido también mamba 1.4, con errores mejorados en caso de conflicto de dependencias y otras pequeñas novedades. Si te animas a probarlo por fin, ojo con acabar como esta persona (mejor usa micromamba):

#61
March 26, 2023
Read more

Episodio 69 🐍⚙️

🔥 ¡El lunes arranca la segunda edición del mayor hackathon open-source de Procesamiento del Lenguaje Natural en español! El evento se desarrollará entre el 20 y el 31 de marzo, y los equipos que desarrollen un proyecto enfocado a uno de los Objetivos de Desarrollo Sostenible tendrán un punto extra. Si participas, ¡recuerda difundir con el hashtag #HackathonSomosNLP!

Hackathon Somos NLP 2023: Los LLMs hablan Español

🚀 ¡Fiesta de versiones nuevas importantes esta semana!

En primer lugar, PyTorch 2.0 trae una nueva API torch.compile, una nueva biblioteca llamada functorch inspirada en JAX, mejoras sustanciales de rendimiento, nuevas versiones de muchos componentes del ecosistema (TorchAudio, TorchVision…) y muchísimo más. Amplía información leyendo el anuncio oficial.

#60
March 18, 2023
Read more

Episodio 68 🐍⚙️

🚀 Me perdí hace unos días scikit-image 0.20, con nuevos ejemplos en la galería (incluyendo algunos interactivos muy chulos), soporte para imágenes anisótropas, nuevo parámetro channel_axis para imágenes multicanal, y mucho más.

También ha salido matplotlib 3.7.0, con soporte para barras de error en coordenadas polares, un nuevo método get_tick_params para ver la configuración de las marcas y rejilla, posibilidad de importar estilos de paquetes externos (esta petición la abrí yo en 2015, ¡más vale tarde que nunca!), y control de la leyenda fuera de los ejes entre otras cosas.

legend guide
#59
March 11, 2023
Read more

Episodio 67 🐍⚙️

🚀 Primera newsletter de mes, resumen de cambios en Polars (y hasta el mes que viene nada, ¡que si no, no hablo de otra cosa!): este mes han añadido salida a Excel y a bases de datos con nuevos métodos write_excel y write_database, ordenación de datos más grandes que la RAM (out-of-core) para varias columnas, y muchas mejoras tanto de ergonomía como de rendimiento.

Twitter avatar for @braaannigan
Liam Brannigan @braaannigan
Couple of nice changes to @DataPolars syntax in recent releases that make code look a bit cleaner

First - assigning columns with kwargs is no longer experimental so you can column_name = instead of using .alias

Image
9:09 AM ∙ Feb 21, 2023
40Likes2Retweets

⚠️ Es posible que hayas escuchado que está a punto de salir pandas 2.0. En este noticiero no suelo hablar de nada que no sean versiones ya estables, pero vale la pena avisar en este caso porque es más que posible que tu código o tus sistemas de integración continua se rompa ese día. Recuerda ajustar tus dependencias en tu requirements.txt o pyproject.toml:

(Y si todavía estás usando setup.py, estás tardando en migrar)

¡Cuando salga la versión estable dedicaremos el noticiero a ello!

💡 Esta semana he descubierto gator (antes Mamba Navigator), un gestor de entornos al estilo Anaconda Navigator pero de código abierto e integrado en JupyterLab.

https://raw.githubusercontent.com/mamba-org/gator/master/packages/labextension/jupyterlab_conda.gif

También he descubierto ydata-profiling, una versión actualizada del mítico pandas-profiling que también soporta Spark.

../../_images/widgets.gif

Y finalmente, también he descubierto Prefix.dev, un servicio online de creación de entornos conda/mamba. ¡Muy interesante!

Twitter avatar for @prefix_dev
prefix.dev @prefix_dev
Check out our latest feature: cloud environments on @prefix_dev . Create your own virtual environments within seconds, install locally and share them with whomever you like. See the announcement blog post by @tldejager here:
prefix.devIntroducing Online Environment SolvingWe’ve released our first version of online environment solving
4:39 PM ∙ Feb 21, 2023
35Likes12Retweets

📚 Me ha gustado mucho leer este informe de Quansight Labs sobre el impacto de la empresa en el ecosistema open-source.

Twitter avatar for @quansightai
Quansight @quansightai
At Quansight Labs, the open source projects we contribute to reach over 20 million people worldwide!

In our annual report, we highlight several project and community achievements we’re especially proud of. 🙌

#58
March 4, 2023
Read more

Episodio 66 🐍⚙️

🔥 Hace poco se anunció el nuevo JupyterLab Desktop, una forma diferente de utilizar este famoso editor. Para mí siempre ha sido un poco tedioso tener que instalar JupyterLab en cada entorno virtual de cada proyecto, y la opción de tener una instalación global y seleccionar el kernel adecuado siempre me pareció complicada comparada con lo sencillo que es elegir un intérprete en PyCharm o VS Code. Parece que JLab Desktop viene a solucionar este y otros problemas, así que estaré muy pendiente del proyecto.

Tengo que decir, eso sí, que mi primera impresión no ha sido satisfactoria. Estoy seguro que dentro de unas semanas o meses la experiencia mejorará notablemente.

🚀 Esta semana mi equipo ha publicado Kedro 0.18.5, incluyendo integración con OmegaConf, mejoras en el comando kedro run para hacerlo más consistente, soporte para usar generadores como nodos, y mucho más.

#57
February 25, 2023
Read more

Episodio 65 🐍⚙️

En algún momento volverá el noticiero a los viernes, están siendo semanas intensas. ¡Vamos allá!

🔥 ¡Tenemos dos anuncios jugosos de dos empresas muy importantes en el ecosistema esta semana!

Por un lado Anaconda Notebooks estrena un nivel gratuito. Esto nos da un JupyterLab en la nube, con la distribución completa de Anaconda instalada. Hay ciertas limitaciones: 100 MB de espacio en disco (así que no hay espacio para entornos extra) y 500 segundos de CPU al día, pero aun así creo que puede ser un entorno usable para experimentos y docencia.

Twitter avatar for @anacondainc
Anaconda @anacondainc
We’re excited to announce that Anaconda Notebooks is now completely FREE !! 💫🐍
#56
February 11, 2023
Read more

Episodio 64 🐍⚙️

🔥 Ha salido JupyterLab 3.6.0 con muchísimas novedades, y entre ellas el muy esperado modo colaborativo. Si llevas un tiempo siguiendo el proyecto tal vez esto te suene de algo, y no te faltaría razón: lo cierto es que ya hubo una versión de JupyterLab con colaboración en tiempo real, la 3.1 ¡en julio de 2021! Pero esta versión tenía graves problemas, y varios usuarios observaron cómo les desaparecían o se les corrompían completamente los notebooks. Casi dos años después la arquitectura de Jupyter ha cambiado completamente, y ahora sí que sí podemos confiar en que esta nueva funcionalidad será robusta.

Otros cambios interesantes incluyen un nuevo sistema de usuarios y notificaciones (posiblemente en preparación a lo que se viene para JupyterLab 4.0), mejoras de rendimiento, y algunas cosas más. Para más información, recomiendo leer el anuncio oficial.

He notado a mi alrededor que hay una brecha bastante grande entre data scientists, que utilizan JupyterLab o editores más minoritarios como Spyder, y data engineers, que suelen preferir VS Code o PyCharm. ¿Tú qué opinas? ¡Deja un comentario!

#55
February 4, 2023
Read more

Episodio 63 🐍⚙️

Semana intensa de trabajo con muchas formaciones, pero aunque sea tarde no quería dejar el noticiero sin mandar. Además, por aclamación popular, cambia de nombre a “Noticiero Python y Datos”. ¡Gracias por leer!

🚀 Las últimas versiones de Polars, hasta la 0.15.8, incluyen varias obsolescencias importantes: desaparece with_column en favor de with_columns (por consistencia), y se renombra iterrows a iter_rows. Además, varios métodos de transformación de texto ahora aceptan expresiones, por ejemplo str.starts_with, str.ends_with, y str.contains. Y finalmente, ¡parece que pronto vamos a tener soporte para seaborn!

Twitter avatar for @braaannigan
Liam Brannigan @braaannigan
Seaborn native support for @DataPolars looks really promising.

Quick example below of sns.jointplot

#54
January 27, 2023
Read more

Episodio 62 🐍⚙️🗳️

🚀 A principios de año Apache Arrow introdujo la versión 1.0 de la especificación “Arrow Database Connectivity” (ADBC), que pretende ser “una alternativa columnar a JDBC/ODBC”. Con ADBC, las bases de datos que usan Arrow nativamente ya pueden devolver resultados de consultas sin conversiones intermedias utilizando el protocolo Arrow Flight SQL, y las que no lo usen pueden hacer la conversión en el driver, mejorando el rendimiento. Con esto se completa el ecosistema Arrow para interacción con bases de datos: Arrow en sí mismo como formato en memoria, ADBC como API para clientes, y Arrow Flight SQL como protocolo de transferencia de datos. Si quieres saber más de Arrow, puedes ver mi charla en la PyConES 2022 sobre alternativas a pandas.

Y siguiendo con el tema, hemos tenido versiones nuevas de Polars (varias por semana, no las pongo todas en el noticiero), pero Polars 0.15.15 introduce ordenación out-of-core, lo que significa que se pueden ordenar miles de millones de filas sin que quepan en memoria en cuestión de un par de minutos.

https://user-images.githubusercontent.com/3023000/212352514-a44e74e4-21e2-421f-b06d-6a4d4c26dfd0.png
#53
January 20, 2023
Read more

Episodio 61 🐍⚙️

Estamos en el segundo noticiero del año y ya tengo exceso de enlaces, he tenido que comprimir y sintetizar bastante. ¡Vamos allá!

🚀 Ha salido Ibis 4.0, con varios nuevos backends incluyendo Polars y Snowflake, nuevos métodos read_csv y read_parquet para lectura de datos más sencilla, mayor granularidad para extraer elementos de campos JSON, y mucho más. Si estás buscando una capa de abstracción en Python sobre SQL, no te pierdas este proyecto.

También tenemos Fugue 0.8, y me gusta mucho cómo Kevin ha contado en LinkedIn la forma en la que han escuchado a los usuarios para hacer el proyecto más fácil de usar. Incluye varias funciones nuevas para lectura y escritura de datos y varias pequeñas mejoras de usabilidad.

#52
January 13, 2023
Read more

Episodio 60 🐍⚙️🍇 ¡Hola 2023!

🚀 ¡Estas navidades han salido versiones nuevas de multitud de paquetes esenciales en el ecosistema Python científico!

SciPy 1.10 tiene un nuevo submódulo scipy.datasets (dejando scipy.misc obsoleto), una nueva función scipy.interpolate.make_smoothing_spline que implementa un nuevo algoritmo de selección de parámetros para splines, una nueva función scipy.stats.goodness_of_fit para hacer pruebas de bondad de ajuste de manera sencilla, y muchísimo más. Si estás haciendo interpolación bidimensional, echa un vistazo a esta guía de transición.

Por su parte, IPython 8.0 trae mejoras en el autocompletado (sobre todo para claves de diccionarios) y otras pequeñas mejoras, y NumPy 1.24 elimina unas cuantas funcionalidades que estaban obsoletas, mejoras en F2PY (Fortran no estaba muerto, solo andaba de parranda) y algunos ajustes para casos raros de conversiones entre tipos. Estos dos proyectos son ya bastante maduros y no se esperan cambios sustanciales.

#51
January 6, 2023
Read more

Episodio 59 🐍⚙️🎄 Despedida 2022

🔥 ¡Por fin tenemos Shapely 2.0! Shapely es una biblioteca Python para manipulación de geometrías bidimensionales. Está basada en el paquete GEOS, y ha sufrido una enorme transformación que lleva fraguándose varios años y que resuelve varios problemas - entre ellos, la imposibilidad de instalar Cartopy y Shapely con pip en el mismo entorno virtual. Este problema se identificó hace más de 6 años, y fruto de un largo proceso desgranado y dirigido por Joris Van den Bossche, toda la arquitectura interna ha cambiado y el programa es ahora mucho más rápido.

Recomiendo encarecidamente consultar las diapositivas de la charla de Joris en el FOSS4G el año pasado. En ellas también se explica cómo Shapely, Fiona, y pyproj son la base de GeoPandas.

#50
December 16, 2022
Read more

Episodio 58 🐍⚙️

🔥 Ha salido scikit-learn 1.2 con un montón de novedades, y entre ellas una muy deseada desde hace años: ¡todos los transformers aceptan y devuelven dataframes de pandas! Esto significa que si tienes un Pipeline complejo con muchos pasos, ColumnTransformer, etc será capaz de, por ejemplo, retener el nombre de las columnas. Esto es un salto cualitativo en la forma en la que veníamos usando scikit-learn hasta la fecha y estoy deseando probarlo.

Tienes más información en la SLEP 18 (siglas de scikit-learn enhancement proposal). Nótese que la petición original data de 2015 y que ya había experimentos como sklearn-pandas, pero para integrar esos cambios en el proyecto han hecho falta muchas iteraciones. ¡A veces los tiempos en el código abierto son así!

🚀 Tenemos versión nueva de Jupyter Server, 2.0 - aunque es una pieza interna de Jupyter con la que los usuarios no interactúan directamente, es muy importante porque allana el camino para cambios grandes en el ecosistema: identidad (importante para cuando lleguen los notebooks colaborativos), autorización más granular, un sistema de eventos para comentarios y notificaciones, y mucho más.

#49
December 9, 2022
Read more

Episodio 57 🐍⚙️

🔥 ¡Avalancha de lanzamientos esta semana! Vamos por partes:

BigCode, una iniciativa conjunta de Hugging Face y una empresa canadiense llamada ServiceNow, ha creado The Stack, un conjunto de datos con código en más de 300 lenguajes de programación para entrenar modelos generativos. Lo que diferencia a esto de cosas como GitHub Copilot es que han elegido exclusivamente código liberado bajo licencias permisivas, y además han implementado mecanismos para que puedas averiguar si tu propio código está incluido, y si así lo deseas, borrarlo. ¡Así sí!

Twitter avatar for @BigCodeProject
BigCode @BigCodeProject
Is your code in 📑 The Stack? Check if your repositories are in the dataset and a large language models for code will learn from them!

hf.co/spaces/bigcode…

#48
December 2, 2022
Read more

Episodio 56 🐍⚙️

🚀 Ha salido ObsPy 1.4.0, un framework escrito en Python para procesado de datos sismológicos. Entre las novedades hay un nuevo módulo para leer datos de la Luna obtenidos por las misiones Apollo en formato ALSEP, soporte para formato NonLinLoc versión 7, arreglos para visualización cartográfica con proyecciones personalizadas, y mucho más. Si te interesa el tema, recomiendo ver su galería de ejemplos.

También tenemos versiones nuevas de Polars hasta la 0.14.31, con mejoras en el autocompletado para IPython y Jupyter, un nuevo método pearson_corr, y más mejoras en el nuevo motor de streaming. Sobre esto último, Ritchie Vink, el autor de Polars, me aclaró en Mastodon que incluso la interfaz lazy necesita que los resultados intermedios quepan en memoria, mientras que el nuevo motor permite procesar datos mucho más grandes que la RAM disponible.

#47
November 25, 2022
Read more

Hoy no hay noticiero

Llevo un rato frente a la pantalla tratando de buscar el momento de publicar la edición semanal del noticiero Python Científico, con mi lista larguísima de enlaces y mi selector de emojis preparado. Pero lo cierto es que estoy bastante turbado por lo que está pasando en Twitter, y no me puedo concentrar.

Hoy no hay nuevas versiones ni proyectos interesantes que he descubierto, porque esta semana ha sido bastante intensa. Puedes dejar de leer aquí: te prometo que el viernes que viene volveré a la carga. Lo que sigue es una breve diatriba con mi opinión personal.


Siempre he tenido una relación de amor-odio con las redes sociales: me han dado muchas cosas positivas, pero también mucho sufrimiento. No fue fácil durante la pandemia estar en constante conexión con malas noticias, no solo en España sino en todas partes del mundo, y acabé cerrando mi cuenta de Twitter, como ya había hecho en otras ocasiones. El año pasado, sin embargo, empecé en este mundo del Advocacy, y me sentí en la obligación de volver, con muchas reservas.

#46
November 18, 2022
Read more

Episodio 55 🐍⚙️🗽 Especial PyData New York

🐻‍❄️ Ya se terminó la PyData de NYC, y estoy contento de humildemente haber contribuido al que creo que fue uno de los temas clave del evento: ¿qué hay más allá de pandas? Mi charla sobre Polars (la primera dada por alguien que no es su autor, Ritchie Vink) estaba hasta la bandera, la charla Gil Forsyth (Voltron) sobre Ibis fue impecable, y Jeff Reback, mantenedor de pandas desde hace casi una década, explicó con todo lujo de detalles la actual situación del proyecto y el futuro que le espera.

Twitter avatar for @melissawm
Ax=b | chaos.social/@melissawm @melissawm
A packed room for @jreback - on the challenges of maintaining @pandas_dev
Image
4:05 PM ∙ Nov 10, 2022
19Likes3Retweets

Para resumir: ¡no tienes que preocuparte del futuro de pandas! El proyecto sigue adelante y la idea es ir haciendo mejoras incrementales. Mientras tanto, hay un esfuerzo coordinado por promocionar Ibis como una capa de abstracción por encima de pandas, que al mismo tiempo pueda comunicarse con diferentes backends. Esta es la diapositiva clave:

#45
November 12, 2022
Read more

Episodio 54 🐍⚙️

🔥 ¡Ya es oficial! Como anunciamos en julio, RStudio ha cambiado de nombre y ahora es Posit. En palabras de Hadley Wickham, Chief Scientist de Posit:

Posit no va de pivotar de R a Python. Va de ampliar y abrazar la comunidad Python así como la comunidad de R.

Creo que es un movimiento lógico teniendo en cuenta el declive progresivo de R, como pudimos ver en la encuesta de Kaggle hace dos semanas. Al mismo tiempo, la comunidad R es tremendamente amistosa y colaborativa, y eso es algo que sería una lástima que se perdiese. Y por último, creo que es una muy buena noticia que haya más entidades que le quieran plantar cara a VS Code, que va camino de convertirse en el monopolio de los IDEs, según extraje en su momento de la encuesta oficial de Python que hacen JetBrains y la Python Software Foundation.

#44
November 4, 2022
Read more

Episodio 53 🎃🐍3️⃣1️⃣1️⃣

🔥 La noticia de la semana es sin duda que ¡Python 3.11 ya está disponible! El irrepetible Pablo Galindo fue el que se encargó de publicar la versión, y la gran Mai Giménez diseñó un logo espectacular para la ocasión. ¡La representación española en CPython está en máximos históricos!

Twitter avatar for @pyblogsal
Pablo Galindo Salgado @pyblogsal
Python 3.11 is finally released. In the CPython release team, we have put a lot of effort into making 3.11 the best version of Python possible. Better tracebacks, faster Python, exception groups and except*, typing improvements and much more. Get it here:

python.org/downloads/rele…

Image
8:21 PM ∙ Oct 24, 2022
1,300Likes376Retweets

Esta versión trae importantes novedades, entre ellas mejoras de rendimiento notables (recomendable la charla de Pablo en la PyConES hace un mes), trazas de error mucho más explicativas, soporte para TOML en la biblioteca estándar, y mucho más. Los detalles están en el anuncio oficial.

Pero ¡ojo! No corras a actualizar tus sistemas todavía. Algunos proyectos todavía no publicaron wheels precompilados para Python 3.11, así que es posible que te encuentres con tiempos de instalación muy largos en el mejor de los casos, y fallos de instalación en el peor. Algunos paquetes como pandas y matplotlib ya lo hicieron hace días, otros como scikit-learn hace escasas horas, a numba aún le quedan semanas, etc. Asegúrate de comprobar el estado de tus dependencias antes de actualizar, o de preparar todo lo necesario para compilarlas desde su código fuente.

Twitter avatar for @numba_jit
Numba @numba_jit
Public service announcement: Yes, the Numba team is aware of the Python 3.11 release. 💥 Yes, we are working on it. 💪Please refrain from opening additional Issues on our tracker and subscribe instead to github.com/numba/llvmlite… and github.com/numba/numba/is… 🙏🙏🙏
github.comPython 3.11 · Issue #8304 · numba/numbaThis is the meta/coordination issue for Python 3.11 support for Numba and llvmlite. Note: The issue text will be updated continuously to reflect the current process and progress. As Numba interface…
12:23 PM ∙ Oct 25, 2022
38Likes4Retweets

🚀 La newsletter mensual de NumFOCUS recoge versiones nuevas de sus proyectos patrocinados y afiliados y otras noticias interesantes, recomiendo mucho leer la edición de octubre. Esta semana hemos tenido varias nuevas versiones, con cambios menores o superficiales: Voilà 0.4.0, Plotly 5.11.0, Polars 0.14.24, Meltano 2.8.0.

Los proyectos están inmersos cerrando Google Summer of Code, ultimando Hacktoberfest, trabajando en el soporte para Python 3.11, y deseando que llegue Closember.

Twitter avatar for @ClosemberDev
Closember @ClosemberDev
Hacktoberfest is almost done, so there will be a lot to cleanup. You care about the maintainers, finishing things, zero inbox ? Come participate to
closember.orgClosember 2022 by QuansightClosember aims to increase awareness about Open Source maintainer burnout and promote practices to make maintaining open-source less stressful and more enjoyable for everyone.
3:54 PM ∙ Oct 19, 2022
3Likes2Retweets

💡 Esta semana he descubierto Plywood Gallery, un nuevo framework para generar documentación de Python a partir de notebooks.

Mis antiguos compañeros de Satellogic, con Javier Marín a la cabeza, han publicado iquaflow, un framework de Python para verificación de calidad de datos con foco en imagen satelital y utilizando MLFlow. Javier contó más detalles sobre el proyecto en LinkedIn.

_images/Course_68_0.png

📚 Desde junio de 2022, Hugging Face es patrocinador oficial del Consorcio scikit-learn (¡gracias Guillermo Germade!)

Twitter avatar for @huggingface
Hugging Face @huggingface
Scikit-Learn and 🤗 join forces!

With a growing number of tabular classification & regression checkpoints, we believe statistical ML has its place on the HF Hub.

#43
October 28, 2022
Read more

Episodio 52 🐍⚙️

🚀 Esta semana ha salido Anaconda Distribution 2022.10, una nueva versión de la popular distribución de Python para ciencia de datos. Entre las novedades, se cuentan soporte para Python 3.10 (¡ojo que el lunes sale Python 3.11!), mejoras en Anaconda Navigator, compatibilidad completa para interfaces gráficas en macOS sobre M1, y las últimas versiones de conda, pandas, y matplotlib.

Twitter avatar for @anacondainc
Anaconda @anacondainc
We are pleased to announce the release of the Anaconda Distribution 2022.10 installer!

⭐ Updated resources for the community. ⭐ GUI support for macOS M1. ⭐Application tile enhancements & homepage filters for a dynamic experience.

Read more here 👇 bit.ly/3eF4SuK

bit.lyAnaconda | New Release: Anaconda Distribution 2022.10The 2022.10 release of Anaconda Distribution features Qt support in Anaconda Navigator v2.3.1, full GUI support for macOS M1’s ARM64 architecture, Python 3.10, improved security protocols, and several package updates. 2022.10 is the last release that will support Python 3.7. Click here to access…
10:36 PM ∙ Oct 18, 2022
16Likes3Retweets

También tenemos versiones nuevas de Polars: desde el último noticiero se ha incluido soporte para datos en streaming (¡ya puede leer datos más grandes que la RAM!), un lector de CSV por bloques, mejoras en el manejo de zonas horarias, y mucho más. La última versión al cierre de esta edición es Polars 0.14.21.

Twitter avatar for @RitchieVink
Ritchie Vink @RitchieVink
It bugged me that I needed to give this answer to @CMastication, so I started making @DataPolars a hybrid streaming engine. In the coming months we will support more streaming queries.

#42
October 21, 2022
Read more

Episodio 51 🐍⚙️

🚀 Esta semana ha salido dbt 1.3.0, una versión muy esperada porque ¡incluye la funcionalidad de modelar datos con Python! Hay todavía muchos cabos sueltos, así que si usas dbt y te interesa, puedes participar en la discusión.

También ha salido Panel 0.14, con varias novedades muy jugosas: compatibilidad con Pyodide y PyScript (es decir: ¡corre en el navegador sin backend!), mejoras sustanciales de rendimiento, y una extensión de Sphinx para crear documentación interactiva.

Twitter avatar for @MarcSkovMadsen
Marc Skov Madsen @MarcSkovMadsen
With @Panel_org 0.14 it is now possible to make your #python #sphinx documentation live and interactive powered by @pyodide. Check out the release blog post for more details blog.holoviz.org/panel_0.14.htm… and try out this interactive @matplotlib #dataapp guide panel.holoviz.org/getting_starte…
Image
5:55 AM ∙ Oct 11, 2022
27Likes9Retweets
#41
October 14, 2022
Read more

Episodio 50 🐍⚙️🎉

¡Llegamos a los 50 episodios! Muchas gracias por leer y por apoyar el noticiero. Si te gusta, recuerda compartirlo y animar a otra gente a que se suscriba. También me hace mucha ilusión recibir comentarios o respuestas por correo. ¡A por los 100!

🔥 La noticia de la semana la da DeepMind con AlphaTensor, una red neuronal que ha descubierto algoritmos de multiplicación matriciales más rápidos que los conocidos hasta la fecha. El artículo en Nature se lee fácil y tiene menos marketing que la entrada en su blog, es altamente recomendable.

Twitter avatar for @juanluisback
Juan Luis Cano Rodríguez @juanluisback
Figure 3 is key: it compares the complexity of previously known matrix multiplication algorithms and the ones discovered by AlphaTensor. The AI has re-discovered most optimal known algorithms, and improved the rank of a few more.
Image
9:01 AM ∙ Oct 6, 2022

Como muy bien avisa @potatoffel en Twitter, no hay mención en el artículo a la estabilidad numérica o las cotas de error para estos algoritmos. Al mismo tiempo, aunque asintóticamente se diga que un algoritmo tiene menor complejidad, es posible que la ventaja real solo se consiga para matrices muy grandes. Este breve artículo contiene algunas claves que pueden ayudar a entender en qué casos los nuevos algoritmos pueden ser aplicables y en qué casos convendría usar métodos alternativos.

#40
October 7, 2022
Read more

Episodio 49 🐍⚙️

🚀 Joaquín Amat ha publicado skforecast 0.5, con soporte para transformar la serie modelada y las variables exógenas dentro de los predictores, una nueva clase ForecasterAutoregMultiSeries para modelar varias series simultáneamente, y soporte para Python 3.10 entre otras novedades.

Por otro lado, plotnine 0.10, “el ggplot2 para Python”, trae varias mejoras en geom_ribbon para áreas sombreadas, arreglos para matplotlib 1.6.0, y algunas cosas más.

../_images/geom_segment_17_0.png
#39
September 30, 2022
Read more

Episodio 48 🐍⚙️

🔥 Estos días varios paquetes importantes del ecosistema PyData han sacado versiones nuevas:

pandas 1.5 trae numerosas mejoras, como por ejemplo una función from_dummies simétrica a get_dummies (¡por fin!), soporte para tipado gradual, implementación del protocolo estándar de intercambio de dataframes, y mucho más.

Twitter avatar for @pandas_dev
pandas @pandas_dev
New feature alert! ✨

In version 1.5.0 we’ve added from_dummies, which allows you to do decode one-hot-encoded DataFrames

#38
September 23, 2022
Read more

Episodio 47 🐍⚙️

🔥 ¡Esta semana la empresa Meta ha donado PyTorch a una nueva entidad llamada la PyTorch Foundation, que será parte de la Linux Foundation! Es una excelente noticia que proyectos tan utilizados tengan una gobernanza más abierta que no esté atada a los intereses de una empresa en concreto.

Twitter avatar for @linuxfoundation
The Linux Foundation @linuxfoundation
BIG NEWS: @Meta has transitioned @PyTorch to the Linux Foundation 🔥

Since 2017, PyTorch has grown to become a leading #AI framework. To accelerate progress in AI, PyTorch is moving to a new, independent #PyTorchFoundation.

Learn more: hubs.la/Q01m2S340

1:30 PM ∙ Sep 12, 2022
780Likes249Retweets

🚀 Ha salido ibis 3.2.0, con numerosas mejoras en los diferentes backends. Ibis es un proyecto Python que permite manipular datos al estilo SQL - algo así como “pandas sobre bases de datos”.

💡 Esta semana he descubierto haystack, un framework para búsquedas semánticas basado en PyTorch y Hugging Face, y conda-tree, una pequeña utilidad para visualizar las dependencias de un entorno conda como un árbol.

Twitter avatar for @jaime_rgp
Jaime Rodríguez-Guerra @jaime_rgp
This week I have been using a @condaproject tool I didn’t know about til very recently!

#37
September 16, 2022
Read more

Episodio 46 🐍⚙️

📣 Ya están abiertas las suscripciones para el evento de PyData Madrid de septiembre: “Acelerando flujos de datos y modelos de aprendizaje”. Ponentes de lujo, una sede emblemática, buen ambiente, y networking animado. ¿Te veo allí?

Twitter avatar for @PyDataMadrid
PyData Madrid @PyDataMadrid
Ya está abierto el registro para nuestra reunión de septiembre: 🔥 Acelerando flujos de datos y modelos de aprendizaje

meetup.com/pydata-madrid/…

Contaremos con @valerybriz y la gente de @graphext. ¡Nos vemos el jueves 22 de septiembre a las 19:00 en @TheBridge_Tech!

meetup.com🔥 Acelerando flujos de datos y modelos de aprendizaje, Thu, Sep 22, 2022, 7:00 PM | Meetup¡Se acabó el verano, pero vuelve PyData Madrid! Nos vemos de nuevo en septiembre para hablar de Python, Datos, Visualización, Inteligencia Artificial, ¡y lo que surja! El
10:00 AM ∙ Sep 8, 2022
5Likes4Retweets

🚀 Hace unas horas ha salido JupyterHub 3.0, con pocos cambios pero importantes: nueva interfaz de administración más detallada, mejoras en el control de acceso basado en roles (RBAC), y no más soporte a Python 3.6.

Como nota al pie, en el pasado utilicé TLJH (“The Littlest Jupyter Hub”) para desplegar instancias de JupyterHub pequeñas (hasta ~100 usuarios), pero se quedaron un poco estancados en la versión 1.0. Para despliegues basados en Kubernetes, existe Zero to JupyterHub, que como avisan en el anuncio parece que sí se va a actualizar pronto.

https://jupyterhub.readthedocs.io/en/stable/_images/dropdown-details-3.0.png

💡 Esta semana he descubierto skforecast, un paquete Python para prognosis de series temporales utilizando regresores de scikit-learn escrito por Joaquín Amat Rodrigo (¡y encima con ejemplos en español!)

También he dado con causalnex, una biblioteca Python para inferir causalidad en redes bayesianas.

../_images/03_tutorial_01_first_tutorial_26_0.png

📚 Siguiendo con el tema de series temporales, me ha encantado encontrar este libro abierto sobre ellas, y además un repositorio con los ejemplos hechos en Python (un poco desactualizados pero menos da una piedra).

Antes de descubrir dicho libro (¡lástima!) escribí un artículo sobre cómo automatizar un proceso de detección de anomalías utilizando Orchest y Clarify.

Automate your anomaly detection pipelines with Orchest and Clarify

Y por último, volviendo al tema de moda (Stable Difussion y similares), me ha parecido muy interesante este notebook que explica cómo funciona por debajo.

Twitter avatar for @johnowhitaker
Jonathan Whitaker @johnowhitaker
New notebook: “Grokking Stable Diffusion” Hopefully useful for anyone looking for content that goes deeper than just how to run the model! colab.research.google.com/drive/1dlgggNa… Covering: - The diffusion loop - Messing with text embeddings - img2img - arbitrary guidance More deets in thread 🧵
2:35 PM ∙ Sep 2, 2022
1,773Likes300Retweets

📸 Ayer conocí en persona a Victoriano Izquierdo, el cerebro detrás de Graphext, y quedé maravillado por el producto y la pasión que le ponen. ¡Gracias Elena por introducirnos!

Twitter avatar for @victorianoi
Victoriano Izquierdo @victorianoi
The number of calls to the police in NYC from people complaining about noises, music, and parties dramatically increased since the pandemic started 🚨

#36
September 9, 2022
Read more

Episodio 45 🐍⚙️🥳

🇪🇺 ¡Esta semana ha sido la EuroSciPy 2022 en Basilea, Suiza! Este evento me lo perdí (¡no puedo estar en todo!) pero tiene pinta de que fue excelente como siempre. Pronto estarán los vídeos subidos a su canal de YouTube.

Twitter avatar for @EuroSciPy
EuroSciPy @EuroSciPy
Let the fun begin! EuroSciPy2022 started today at Basel with great tutorials. It is lovely to see the EuroSciPy community again with many new faces :-) #euroscipy2022
Image
Image
3:08 PM ∙ Aug 29, 2022
30Likes10Retweets

🚀 Esta semana salió Airflow 2.3 con novedades bastante jugosas: soporte para generar tareas dinámicamente en tiempo de ejecución, separación del DagProcessorManager en un proceso aparte, creación de conexiones usando JSON, y mucho más. La propuesta completa (AIP-42) se puede leer en la wiki de Apache Airflow.

Twitter avatar for @juanluisback
Juan Luis Cano Rodríguez @juanluisback
The new release @ApacheAirflow, 2.3, ships a cool feature: dynamic task mapping!
#35
September 2, 2022
Read more

Episodio 44 🐍⚙️

A partir de hoy vuelve el noticiero con su periodicidad habitual. Espero que hayas pasado buen verano o invierno, ¡gracias por leer!

🔥 La noticia de la semana es la publicación de Stable Diffusion, un modelo generador de imágenes al estilo de DALL·E 2 pero con mejores prestaciones y ¡completamente de código abierto! La evolución de estos modelos está siendo vertiginosa pero sobre todo es muy interesante cómo se está avanzando hacia licencias éticas (este modelo no se puede usar para difundir información falsa o atacar personas) y hacia la apertura radical. Lo resume muy bien Mark Tenenholtz en este tuit:

Twitter avatar for @marktenenholtz
Mark Tenenholtz @marktenenholtz
DALLE-2 was paywall-released recently by an extremely well-funded company.

Just yesterday, a group of independent researchers released their own model (Stable Diffusion) that you can use in a few lines of code for FREE.

#34
August 26, 2022
Read more

Episodio 43 🐍⚙️

Esta edición resume las últimas dos semanas, aún seguimos a bajas revoluciones porque en agosto hace mucho calorcito. La siguiente edición también será en dos semanas, en septiembre vuelve la frecuencia de siempre. ¡Gracias por leer!

🔥 ¡Ha salido la agenda de la PyConES 2022! Muchas charlas y talleres sobre computación científica y cuántica, ciencia de datos, machine learning, inteligencia artificial… La mala noticia es que ya no quedan entradas, pero si tuviste suerte y conseguiste una, ¡nos vemos en Granada!

Twitter avatar for @PyConES
PyCon España @PyConES
Chan Chan! Que ya está el horario (en su fase beta)! 2022.es.pycon.org/schedule.html Nos queda sondear la asistencia para ajustar las salas.

En qué charlas nos veremos? 🤩🤩

2022.es.pycon.orgPyConES 2022 GRXPyConES, la conferencia de Python más importante de España
6:33 PM ∙ Aug 2, 2022
18Likes12Retweets

🚀 ¡Muchas versiones nuevas en los últimos días!

Streamlit 1.12.0 trae numerosas mejoras en los gráficos de líneas y barras, más flexibilidad para asignar variables a los ejes x e y, y mucho más.

Dask 2022.8.0 permite arrancar un servidor de Jupyter desde el propio Scheduler, calcula mejor las particiones y las divisiones al leer dataframes desde pandas, compatibilidad con SciPy 1.9.0, y más cosas.

Twitter avatar for @dask_dev
Dask @dask_dev
Dask now calculates the ‘npartitions’ and ‘divisions’ more accurately+intuitively while creating a DataFrame using ‘dd.from_pandas()’.

#33
August 12, 2022
Read more

Episodio 42 🐍⚙️

Esta edición llega un poco tarde por problemas logísticos, pero preferí mandarla ahora en vez de esperar a la semana que viene porque tiene noticias jugosas. El ritmo en agosto será más lento por vacaciones y compromisos varios. ¡Gracias por leer!

🔥 La noticia de la semana: ¡RStudio cambia de nombre a Posit! El IDE favorito de la gente de R ya era políglota hace tiempo, pero el nombre de la empresa no ayudaba. Ahora se quieren posicionar al mismo nivel que VS Code o incluso Jupyter en sí mismo (de hecho hay dudas sobre si Jupyter cumplió su objetivo de ser un editor multilenguaje).

Y lo que es más: ¡han anunciado Shiny para Python! ¿Podrá competir con soluciones establecidas como Panel, Dash, o Streamlit? El debate está servido.

Twitter avatar for @rstudio
RStudio @rstudio
We are excited to announce that RStudio, PBC will become Posit, PBC in October!
#32
July 30, 2022
Read more

Episodio 41 🐍⚙️🇺🇸 Especial SciPy US

🔥 El 12 de julio de 2022 se publicaron las primeras imágenes del telescopio espacial James Webb, un hito científico muy esperado. La diferencia de calidad con el Hubble es impresionante, y toda la gente que trabaja en astronomía está muy revolucionada. En la comunidad Python tenemos motivos para sentirnos orgullosos: como recoge este artículo en el blog de GitHub, Astropy y otros paquetes del ecosistema científico se están utilizando activamente para la planificación de las observaciones y el tratamiendo de los datos. ¡Hurra!

📜 Y precisamente esa misma semana se celebraba la 21ª SciPy US en Austin, Texas, el evento de referencia sobre Python científico en los EEUU. Después de asistir a la 1ª SciPy LATAM en 2015 en Posadas, Misiones, Argentina y a la 12ª EuroSciPy en 2019 en Bilbao, España, tenía muchas ganas de ir a este evento, y no decepcionó.

La lista de proyectos que descubrí esta semana se haría demasiado larga, pero tengo buenas noticias: ¡la tienes entera en las actas (proceedings) de la conferencia!
Así que en esta ocasión voy a contar cuáles para mí han sido las claves del evento.

#31
July 22, 2022
Read more

Episodio 40 🐍⚙️

🔥 Se ha publicado esCorpius, un corpus lingüístico del español preparado a partir de 0.8 petabytes de datos y disponible en Hugging Face bajo licencia CC BY-NC-ND 4.0. Tenéis más información en el post de Asier Gutiérrez-Fandiño en LinkedIn y en la publicación en arXiv.

🚀 Esta semana tenemos varias versiones nuevas:

galpy 1.8.0, un paquete Python para dinámica galáctica, introduce sistemas de referencia no inerciales (con el objetivo de incorporar el efecto de la aceleración del baricentro de la Vía Láctea), una nueva técnica para generación de sistemas estelares sintéticos, y como viene siendo la tónica en los últimos meses, ¡soporte para correr en el navegador usando Pyodide!

Twitter avatar for @jobovy
Jo Bovy @jobovy
💫 New version of galpy (1.8.0)! 💫
#30
July 8, 2022
Read more

Episodio 39 🐍⚙️

🚀 Hace unos días salió Dask 2022.6.1, ¡con soporte para Pyodide y PyScript! Además, están documentando las inconsistencias entre Dask y pandas para que sea más fácil pasar de una a otra.

Twitter avatar for @dask_dev
Dask @dask_dev
The Dask team released version 2022.6.1 on Friday!

It includes contributions from 21 people, including 4 new contributors.

Some release highlights: 🧵

#29
July 1, 2022
Read more

Episodio 38 🐍⚙️

🔥 ¡La empresa Anaconda ha comprado PythonAnywhere! El propósito de la adquisición, en palabras de la empresa, es acelerar la hoja de ruta de PythonAnywhere, que seguirá existiendo como un producto separado. ¡Seguro que tendremos más noticias próximamente!

Twitter avatar for @anacondainc
Anaconda @anacondainc
We’re thrilled to announce @anacondainc has acquired @pythonanywhere, the easiest solution for building and deploying cloud-based Python web apps. With this, Anaconda takes another big step in advancing Python accessibility. Read the press release here 👉 bit.ly/3HGR4dn
Image
1:15 PM ∙ Jun 22, 2022
115Likes34Retweets

🚀 ¡Ayer salió NumPy 1.23.0! Entre las novedades tenemos una aceleración notable de np.loadtxt (entre 2 y 18 veces más rápido dependiendo del caso), una nueva función np.from_dlpack para importar el formato tensorial DLPack, y mejoras en f2py (Fortran no ha muerto, solo estaba de parranda).

Twitter avatar for @numpy_team
NumPy @numpy_team
NumPy 1.23.0 is released 🎉 Highlights include: a much faster `loadtxt`, DLPack now exposed in the Python API, improvements to f2py, and improvements to promotion and comparisons of structured dtypes.
#28
June 24, 2022
Read more

Episodio 37 🐍⚙️

🇬🇧 ¡Escribo estas líneas en el tren camino a la PyData de Londres! Que yo sepa no habrá retransmisión en directo pero los vídeos se subirán al canal de YouTube en unas semanas. Puedes seguir este hilo en el que tuitearé sobre el evento:

Twitter avatar for @juanluisback
Juan Luis Cano Rodríguez #PyDataLondon @juanluisback
On my way to #PyDataLondon 2022! If you want to talk about data orchestration, know more about @orchestofficial, or just chat, say hi!

Live tweeting of the conference below 👇🏼

Image
3:42 AM ∙ Jun 17, 2022

🔥 Un equipo de investigadores españoles ha publicado un método basado en aprendizaje profundo (deep learning) para predecir la evolución de sistemas dinámicos disipativos utilizando Redes Neuronales de Grafos (Graph Neural Networks). ¡Y el código está en GitHub!

🚀 La semana pasada salió Meltano 2.0, una herramienta escrita en Python para operar tuberías de datos tipo Extracción-Carga-Transformación o Extracción-Transformación-Carga (ELT y ETL). Ya estamos usando la nueva versión internamente en Orchest aprovechando su soporte mejorado para tuberías multipaso y las transformaciones al vuelo.

Twitter avatar for @meltanodata
Meltano: Your DataOps Platform Infrastructure @meltanodata
After months of hard work, we are finally proud to say: Meet #Meltano 2.0!💜 Its debut represents a major step toward our vision of becoming the foundation of every team’s ideal #datastack. For a full perspective on what’s new, visit: meltano.com/blog/meet-melt… #Meltanov2 #DataOps
Image
6:10 PM ∙ Jun 9, 2022
10Likes2Retweets

Por otro lado, está disponible MyST-NB 0.16.0 con soporte para Python 3.10, Sphinx 5, y myst-parser 0.18. Aquí puedes leer una comparativa entre MyST-NB y nbsphinx para renderizar notebooks dentro de proyectos Sphinx y JupyterBook (resumen: nbsphinx es más lento y pesado, pero a cambio ofrece galerías de ejemplos).

💡 Esta semana he descubierto AutoKeras, un sistema para sintonización automática de modelos predictivos (AutoML) basado en Keras, e Irydium, un editor web de documentos interactivos basados en Markdown y Python.

📚 Este artículo profundiza en el BlockManager, uno de los objetos cruciales del código interno de pandas. Muy recomendable si quieres entender un poco mejor cómo funciona por debajo.

🚧 La migración de JupyterLab a la nueva versión de CodeMirror va por el buen camino: además de agregar soporte para lectores de pantalla (¡por fin!), el efecto sobre el rendimiento es notable: ¡abrir un notebook grande será hasta 10x más rápido!

Twitter avatar for @JohanMabille
Johan Mabille @JohanMabille
Very encouraging benchmark results in the migration of JupyterLab to CodeMirror 6. This will also be a significant milestone in making Jupyter more accessible.

#accessibility @ProjectJupyter @codemirror @QuantStack

Image
9:05 AM ∙ Jun 13, 2022
59Likes13Retweets

¿Buscas un Platform-as-a-Service (PaaS) alternativo a Heroku? Yo he migrado a Railway (enlace afiliado) y me encanta que las aplicaciones no “duermen” así que el tiempo de respuesta es siempre rápido ⚡

#27
June 17, 2022
Read more

Episodio 36 🐍⚙️

🔥 En las pruebas de rendimiento que ha realizado el mítico blog Phoronix, ¡parece que Python 3.11 va a ser un 60 % más rápido que Python 3.10! Después del primer artículo sacaron otro comparándolo con Pyston y PyPy, muy recomendable también.

Este tema se trató junto con muchos otros en la cumbre (Summit) sobre el lenguaje, en la que se junta el equipo de desarrollo para hablar sobre el presente y el futuro de Python. El resumen está ya online y no tiene desperdicio.

🚀 Streamlit 1.10.0 trae aplicaciones multipágina ¡por fin! entre otras mejoras: nueva visualización para tablas/dataframes, nuevos botones horizontales, y más.

#26
June 10, 2022
Read more

Episodio 35 🐍⚙️

🚀 Astropy 5.1, la piedra angular para la astronomía en Python, trae numerosas novedades, entre ellas la posibilidad de cargar cualquier conjunto de efemérides planetarias del JPL, la posibilidad de usar `numpy.linspace()` con objetos `Time`, mejoras en las unidades, y mucho más.

💡 Esta semana he descubierto ConnectorX, una biblioteca para leer bases de datos en Python a gran velocidad (aquí un artículo describiéndola) y contextily, que extrae teselas geográficas de varios proveedores de manera sencilla.

#25
June 3, 2022
Read more

Episodio 34 🐍⚙️

🔥 Aunque no está estrictamente relacionada con Python, esta noticia me parece reseñable: ¡GitHub ya soporta ecuaciones matemáticas! Solo han tardado 8 años, ¡más vale tarde que nunca!

🚀 Esta semana ha salido memray 1.1.0, la súper herramienta para analizar consumo de memoria en Python. Trae jugosas mejoras de eficiencia y soporte para Alpine Linux, entre otras novedades.

Twitter avatar for @pyblogsal
Pablo Galindo Salgado @pyblogsal
We have released version 1.1.0 of memray! 🥳
#24
May 20, 2022
Read more

Episodio 33 🐍⚙️

🔥 ¡Tenemos scikit-learn 1.1.0! La mejora más esperada de todas es que el método get_feature_names_out está disponible ya en todos los transformers, lo que significa que si usamos objetos Pipeline, ColumnTransformer, OneHotEncoder, etc. con dataframes de pandas, ¡no se pierden los nombres de las columnas! Para mí este era uno de los puntos más dolorosos de scikit-learn y estoy entusiasmado de que ya lo hayan resuelto. En las notas de versión tienes una relación completa de los cambios.

Twitter avatar for @scikit_learn
scikit-learn @scikit_learn
scikit-learn 1.1 is out! What's new? You can check the release highlights there: bit.ly/3yFnT7Q

pip install -U scikit-learn

or

#23
May 13, 2022
Read more

Episodio 32 🐍⚙️

🔥 La noticia de la semana (y posiblemente del año) fue el lanzamiento oficial de PyScript por parte de la empresa Anaconda: Python en HTML. A lo mejor te parecerá que no es nuevo (ya hubo proyectos como Brython y otros parecidos) pero al estar basado en Pyodide, permite desde ya importar todo el stack científico: pandas, matplotlib, un montón de paquetes más, y cualquier paquete con wheels precompilados. La gente ya está haciendo toda clase de experimentos y, aunque al proyecto le queda mucho por recorrer, ¡tiene una pinta espectacular!

Twitter avatar for @mariatta
Mariatta 🤦 @mariatta
#PyConUS2022 @pwang Keynote We can now `import d3`

The pyscript wrapper for d3 was done by a team member in two days ✌️‼️

Image
4:14 PM ∙ Apr 30, 2022
375Likes51Retweets

Si me permites la autocita, Anaconda está mandando un mensaje muy claro: ¡quieren Python en todas partes!

Twitter avatar for @juanluisback
Juan Luis Cano Rodríguez @juanluisback
.@anacondainc supporting @PyBeeWare by hiring @freakboy3742, @pypyproject by hiring @antocuni, and kickstarting @pyscript_dev sends a very clear message: they want Python everywhere.

Hats off to one of the companies I admire the most 🎩 and to @pwang for his leadership!

6:57 AM ∙ May 2, 2022
78Likes21Retweets

🚀 ¡Ha salido JupyterLab 3.4.0! Hay dos pequeñas mejoras de usabilidad que me encantan: la nueva barra de herramientas de las celdas, que se muestra si no se solapa con el contenido, y el botón de “nueva pestaña” junto a la última pestaña, como hacen los navegadores. También hay mejoras en el editor de configuraciones y en algunos menús contextuales.

Todo indica que la siguiente versión será la 4.0, con cambios bastante profundos, y parece que la lista de tareas pendientes va avanzando a buen ritmo. ¡Deseando!

Por otro lado Apache Airflow 2.3, el orquestador más utilizado en la actualidad, trae definición dinámica de tareas, una nueva vista de rejilla más fácil de interpretar, y ejecución de tareas a horas concretas. (¿Aunque a lo mejor quieres probar Orchest en su lugar? 😉)

Y por último pandera 0.11, una biblioteca para validación de dataframes, trae mejoras en la documentación y soporte para tipos genéricos entre otras novedades.

Twitter avatar for @dev_pandera
pandera-dev @dev_pandera
🎉 #pandera 0.11.0 is out 🎉 Docs get a make-over 💅🏽💄 for all you Dark-mode lovers 🌒 and you can now add custom name and error messages in built-in checks!
1:41 PM ∙ May 4, 2022

💡 Esta semana estoy trabajando mucho con Meltano, una herramienta Python para crear tuberías de extracción y carga de datos de manera declarativa.

Y si estás entusiasmado con DALL·E 2, echa un vistazo a DALLE2-pytorch, una implementación abierta basada en PyTorch.

📚 La gente de Nixtla (a quienes ya mencionamos cuando crearon statsforecast) han hecho un experimento con statsforecast + ray + numba que escala su AutoARIMA a series temporales de millones de elementos. El código fuente está online.

También me ha gustado mucho este artículo sobre cómo visualizar las emisiones de carbono del mundo utilizando solamente pandas y matplotlib.

📬 Mi amigo Adeshola ha publicado Slik-Wrangler, una pequeña biblioteca Python que ayuda en tareas de limpieza de datos y preprocesado. El código fuente está en GitHub.

🤔 ¿Estás como yo preocupado por los últimos problemas de seguridad de Heroku y andas buscando alternativas? Ayer probé Railway (enlace referido) y funcionó a la primera, el proceso fue muy fácil.

#22
May 6, 2022
Read more

Episodio 31 🐍⚙️

🚀 Esta semana han salido varias versiones nuevas de paquetes interesantes:

Ibis 3.0, una biblioteca Python para manipular datos como si estuvieses trabajando con SQL, ha introducido numerosas mejoras y añadido DuckDB como nuevo backend.

Probé el proyecto por primera vez hace mes y medio y tuve algunos problemas siguiendo la documentación, pero algunos ya están resueltos y ¡espero volver a probarla pronto!

Twitter avatar for @IbisData
Ibis Project @IbisData
We've released #ibis 3.0.0! Our project and community continues to grow in new and exciting ways. Learn more about the latest version of ibis:
#21
April 29, 2022
Read more
 
Older archives
GitHub LinkedIn
Powered by Buttondown, the easiest way to start and grow your newsletter.