Posts publicados en mi blog

Novedades en Python 3.13

Python

Novedades en Python 3.13

  • Novedades en Python 3.13 : Python 3.13 ha entrado en beta, lo que significa que la ya no se van a añadir nuevas funcionalidades. Esta versión incluye cambios en el REPL, nuevas características de tipado y soporte experimental para deshabilitar el GIL.

Sets, diccionarios sin valores

  • Sets, diccionarios sin valores : Rodrigo Girão Serrão explora la relación entre conjuntos y diccionarios al implementar una clase de conjunto. Los conjuntos son un tipo de datos integrado que ofrece una búsqueda e inserción rápida, similar a las claves de un diccionario.

Cómo leer y escribir archivos Parquet con Python

Python Sequences: A Comprehensive Guide

Creando una calculadora con wxPython

Cómo ejecutar múltiples bucles de eventos concurrentes con Asyncio

Cómo instalar Python en Mac

  • Cómo instalar Python en Mac : Daniel Kehoe explica cómo instalar Python en Mac utilizando la herramienta Rye, escrita en Rust. Rye simplifica la gestión de versiones de Python y bibliotecas de software, ideal para principiantes. Se detalla la instalación de Rye, la configuración del PATH, la gestión de versiones y paquetes, y el flujo de trabajo con Python. Una guía completa para programadores en Mac.

Scrapy Vs. Crawlee: Comparación de librerías de web scraping

Automatización del hogar utilizando cualquier cámara (visión por ordenador)

Parseando PNG images in Mojo

  • Parseando PNG images in Mojo : Ferdinand Schenck explora cómo analizar imágenes PNG en Mojo, detallando el proceso de lectura de datos, verificación de encabezados, análisis de chunks, descompresión de datos de imagen, y creación de un tensor. A través de ejemplos y código, Ferdinand muestra cómo trabajar con imágenes PNG en Mojo para propósitos de Machine Learning.

¿Como se puede desarrollar una pequeña lista de cadenas en C para Python?

Java

Todo lo que necesitas saber sobre Java 22

  • Todo lo que necesitas saber sobre Java 22 : Java 22, lanzado el 19 de marzo de 2024, trae 12 Propuestas de Mejora de JDK, divididas en estándar, vista previa e incubadora. Destacan JEP 456 sobre variables sin nombre, JEP 459 sobre plantillas de cadena y JEP 447 sobre declaraciones antes de ‘super()’. También se introducen JEP 458 para ejecutar programas de varios archivos y JEP 463 sobre clases implícitas y métodos principales de instancia. Además, se presenta JEP 423 sobre fijación regional para G1 y JEP 454 para API de Funciones y Memoria Extranjeras.

¿Qué es RocksDB (y su papel en el streaming)?

  • ¿Qué es RocksDB (y su papel en el streaming)? : RocksDB, una base de datos de alto rendimiento, es una joya oculta en la industria tecnológica, a menudo pasada por alto por los desarrolladores. Mark Andreev explora las aplicaciones y detalles de esta poderosa herramienta, destacando su equilibrio entre personalización y autoadaptabilidad. RocksDB es ampliamente utilizado en frameworks de procesamiento de streaming como Apache Flink, así como en aplicaciones web y sistemas de bases de datos como TiKV y CockroachDB.

Code Smell 251 - Colecciones Vacías

  • Code Smell 251 - Colecciones Vacías : El artículo ‘Code Smell 251 - Collections Empty’ de Maxi Contieri destaca la importancia de usar nombres declarativos como ‘isEmpty()’ en lugar de ‘count() == 0’ para verificar si una colección está vacía. Se mencionan problemas de legibilidad, invalidación de caché, penalidades de rendimiento y seguridad de tipos. Se proporciona un contexto, código de muestra incorrecto y correcto, detección automática y etiquetas de nivel principiante.

Explicando que es la JVM

  • Explicando que es la JVM : La JVM (Java Virtual Machine) es una máquina virtual que ejecuta el bytecode generado por el compilador Java. Alex Reis explica que la JVM es responsable de ejecutar el código Java en cualquier plataforma que tenga la JVM instalada. Además, se detalla los componentes de la JVM como Class Loader, Run Time Data Area, Execution Engine, Native Interfaces y Native Libraries.

Oracle lanzará Code Assist: asistente de codificación AI optimizado para Java, SQL y su nube

Cómo aumentar la cobertura de pruebas con Tracing

  • Cómo aumentar la cobertura de pruebas con Tracing : Artículo que explora la importancia de la cobertura de pruebas en sistemas distribuidos. Se detalla cómo el Tracing puede mejorar la comprensión del comportamiento del sistema y las interacciones entre componentes.

Java 22: registros y matching de patrones

  • Java 22: registros y matching de patrones : Oskar Dudycz explora las mejoras de Java 22 en registros y matching de patrones, aplicándolas a un ejemplo de carrito de compras. Dudycz destaca la importancia de aprender nuevas tecnologías a través de ‘Katas’ y muestra cómo estas nuevas características de Java permiten una modelación más clara y concisa.

Explicit vs Diagnostic GC

  • Explicit vs Diagnostic GC : En el artículo ‘Explicit vs Diagnostic GC’ de Dr. Heinz M. Kabutz se explora la diferencia entre el GC explícito y el diagnóstico en Java. Se destaca que llamar a System.gc() puede ser perjudicial y se muestra cómo forzar un GC incluso si los GC explícitos están deshabilitados. Se analiza cómo funcionan ambos tipos de GC y se presentan ejemplos de código para demostrar su comportamiento.

Reemplazando la palabra clave synchronized

  • Reemplazando la palabra clave synchronized : Anthony Goubard muestra diferentes formas de reemplazar la palabra clave synchronized para hacer nuestro código más amigable con los hilos virtuales. Propone usar ReentrantLock, BlockLock, SyncUtils y AspectJ, así como reemplazos para métodos JDK que utilizan synchronized.

JetBrains IntelliJ IDEA 2024.1 ofrece soporte para Java 22

  • JetBrains IntelliJ IDEA 2024.1 ofrece soporte para Java 22 : Johan Janssen, destaca el lanzamiento de IntelliJ IDEA 2024.1 con soporte para las características de Java 22, OpenRewrite, servidor WireMock, Maven Shade Plugin y completado de código de línea completa para Java y Kotlin. La nueva versión mejora la salida de registro, el indexado de proyectos y presenta un nuevo terminal, entre otras mejoras.

Desarrollando un Orquestador de Datos en Java

  • Desarrollando un Orquestador de Datos en Java : Loic Mathieu presenta Kestra, un orquestador de datos escrito en Java. Kestra es único por estar escrito en Java, a diferencia de la mayoría de orquestadores que están en Python. Explica la arquitectura distribuida de Kestra, su extensibilidad a través de plugins y cómo aprovecha el ecosistema Java para ofrecer un orquestador robusto y escalable.

El plugin Devoxx Genie para IntelliJ proporciona acceso a modelos LLM locales o basados en la nube

A Simple Plain-Text Knowledge System

  • A Simple Plain-Text Knowledge System : En este video, se presenta un sistema de conocimiento simple basado en archivos de texto plano, sin necesidad de herramientas sofisticadas. Sebastian Daschner destaca la importancia de tener un sistema de toma de notas al aprender nuevos temas. Puedes encontrar más información en su blog, incluyendo consejos sobre productividad y el uso de Vim.

Spring Tips: Bases de datos vectoriales con Spring AI

Hibernate 7.0.0.Alpha2

  • Hibernate 7.0.0.Alpha2 : Hibernate ORM 7.0.0.Alpha2 ahora pasa el TCK de Jakarta Persistence 3.2, requiere Java 17, introduce un nuevo XSD para mapeo y migra a Hibernate Models para procesamiento de modelos de dominio. Se enfoca en validaciones del modelo de dominio, como combinaciones ilegales de anotaciones.

El encabezado HTTP Vary

  • El encabezado HTTP Vary : En este artículo se explora el encabezado Vary en HTTP. Se discute la importancia de tener una clave de caché multidimensional configurable para evitar problemas al solicitar recursos con diferentes tipos de contenido.

Knowledge Graphs - What Are They?

  • Knowledge Graphs - What Are They? : Richard Strange explora los conceptos de grafos de conocimiento y bases de datos de grafos. Explica que los grafos de conocimiento son representaciones gráficas de entidades y sus relaciones, mientras que las bases de datos de grafos almacenan estos grafos.

Go

Optimizando el uso de CPU de forma gratuita con PGO

  • Optimizando el uso de CPU de forma gratuita con PGO : Colin Douch explora cómo Cloudflare ha estado experimentando y beneficiándose de la optimización guiada por perfiles de Go 1.20+. A gran escala, ejecutando servicios basados en Go en miles de núcleos, los resultados son sorprendentes.

La polémica del uso de ‘ok’ en Go

  • La polémica del uso de ‘ok’ en Go : Zach Musgrave cuestiona si realmente es necesario seguir la convención de nombrar las variables de existencia de mapas como ‘ok’ en Go. Aunque es una práctica común, el autor sugiere que podríamos mejorar en este aspecto y buscar alternativas más descriptivas. Zach invita a reflexionar sobre este tema en la comunidad de programadores de Go.

¿Realmente los Gophers construyen todo desde cero?

  • ¿Realmente los Gophers construyen todo desde cero? : En Reddit, un desarrollador nuevo en Go se cuestionó por qué hay pocos frameworks a gran escala en Go y si realmente la tendencia es construir todo desde cero. La respuesta principal resume bien el enfoque típico de Go: contamos con muchas bibliotecas excelentes y Go facilita su composición.

Desarrollando una aplicación web con Go y React

  • Desarrollando una aplicación web con Go y React : Artículo que muestra el desarrollo de una aplicación web con Go y React. Ryan Peden (JetBrains) destaca la utilidad de ver cómo se unen las partes, a pesar de que la serie se centra en mostrar el IDE GoLand de JetBrains y no tanto en el diseño de la aplicación en sí.

Create a DNS Resolver with Go

Cómo hice que mi perfil de GitHub README fuera dinámico

  • Cómo hice que mi perfil de GitHub README fuera dinámico : Duy Ng muestra cómo personalizó su perfil de GitHub para destacar información adicional. Aunque no se utiliza Go en este caso, el artículo ofrece una demostración de cómo agregar publicaciones de blog u otra información para darle un toque especial al perfil.

IA y Ciencia de datos

MemGPT: Creación agentes LLM con memoria a largo plazo y herramientas personalizadas

Agente autónomo GPT para investigadores

Análisis de 40 millones de publicaciones de Hacker News

  • Análisis de 40 millones de publicaciones de Hacker News : Wilson Lin presenta muestra los resultados de analizar 40 millones de publicaciones de Hacker News utilizando incrustaciones de texto y clustering. El artículo incluye discusiones prácticas sobre la colección de datos, incrustaciones, reducción de dimensionalidad, visualizaciones y más.

Implementación de los 4 Algoritmos RAG más Avanzados

Hallucinations, Errors, and Dreams

  • Hallucinations, Errors, and Dreams : Colin Fraser explora en su artículo la relación entre alucinaciones, errores y sueños, analizando cómo nuestro cerebro procesa la información de manera incorrecta en ciertas circunstancias. Fraser destaca la importancia de comprender estos fenómenos para entender mejor el funcionamiento de la mente humana.

Cómo convertir cualquier texto en un gráfico de conceptos

Aplicaciones de los LLM en el Mercado Financiero

  • Aplicaciones de los LLM en el Mercado Financiero : Richard Dewey explora en su artículo las posibles aplicaciones de los Modelos de Lenguaje de Aprendizaje (LLMs) en los mercados financieros, destacando su uso en la predicción de secuencias de precios, el aprendizaje multimodal, la creación de datos sintéticos y el análisis fundamental.

Lista de Modelos de IA Gratuitos

  • Lista de Modelos de IA Gratuitos :Santhosh Balasa ha recopilado una lista de modelos de IA gratuitos que se pueden utilizar para programación, incluyendo Chat GPT, Mistral AI, Claude AI, Cohere, Copilot, Perplexity AI, Inflection pi AI, BlackBox AI, Gemini, Phind, You y Julius AI.

Jan: una alternativa de código abierto a ChatGPT

SEO

Uso de Embeddings Vectoriales en SEO con Screaming Frog

  • Uso de Embeddings Vectoriales en SEO con Screaming Frog : Mike King explica cómo generar embeddings para el contenido de un sitio con Screaming Frog utilizando la API de OpenAI, Vertex de Google o un modelo open-source. Además, detalla las diversas tareas de SEO y contenidos que se pueden realizar con estos datos.

Acciones de Google contra medios de habla inglesa

  • Acciones de Google contra medios de habla inglesa : Google, bajo la nueva política de abuso de reputación de sitios, ha tomado medidas contra subdominios y subdirectorios alquilados de medios como CNN y LA Times. Barry Schwartz menciona que estas acciones, aunque no son algorítmicas, afectan sus rankings. Se espera que Google implemente acciones algorítmicas en el futuro.

Google muestra el número de resultados de una búsqueda en herramientas

Extensión de Chrome: GSC Guardian 2.0

  • Extensión de Chrome: GSC Guardian 2.0 : La extensión gratuita GSC Guardian 2.0 muestra la duración exacta de los updates de Google en la Search Console. Permite añadir anotaciones y visualizar el impacto de los updates en Discover.

Ahrefs: Ahorro de cientos de millones al no usar la nube

General

Herramientas útiles para desarrolladores

  • Herramientas útiles para desarrolladores : Web en la que se puede encontrar más de 80 herramientas que podrían ser útiles en tu trabajo diario de desarrollo. Incluye generadores (UUIDs, frases de pase, códigos QR), convertidores (JSON a CSV, YAML a TOML, TOML a JSON), herramientas web (analizador de URL, slugify de cadenas, selector de emojis) y mucho más.

Cómo no cambiar el tipo de columna en PostgreSQL

  • Cómo no cambiar el tipo de columna en PostgreSQL : Radim Marek nos muestra la discrepancia entre la teoría y la práctica al cambiar el tipo de columna en PostgreSQL. Es sencillo en desarrollo, pero desafiante en producción. Cambiar aleatoriamente el tipo de datos en una base de datos de producción puede ser un desafío.

Consejos para mejorar el rendimiento de inserción en PostgreSQL

Understanding Container Image Layers

  • Understanding Container Image Layers : Ken Muse explora la importancia de entender las capas de imágenes en contenedores de Docker. Destaca cómo las capas permiten la reutilización de imágenes y cómo afectan al rendimiento y tamaño de los contenedores.

Código y proyectos

Cómo desarrollar un escáner de documentos con Raspberry Pi

Ejemplos de los mejores charts desarrollados en Python

  • Ejemplos de los mejores charts desarrollados en Python : El Python Graph Gallery ofrece cientos de ejemplos de gráficos fundamentales para inspirar a desarrolladores, destacando la versatilidad de matplotlib. Autores como Joseph Barbier y Cédric Scherer presentan visualizaciones de alta calidad, demostrando el poder de Python en la comunidad.

Chapar: Una herramienta para testear APIs

  • Chapar: Una herramienta para testear APIs : Chapar: Una herramienta de testeo de APIs, desarrollada en Go utilizando la biblioteca de interfaz de usuario Gio. Diseñada para probar APIs HTTP y gRPC de manera similar a Postman.

Análisis de Tamaño de Dependencias en Binarios Compilados de Go

Actualización UUID 5.2

  • Actualización UUID 5.2 : La versión 5.2.0 de UUID trae actualizaciones para cumplir con el RFC-9562, añade tipos de errores específicos y mejora las prácticas de seguridad de Github Actions. Incluye contribuciones de @kohenkatz, @step-security-bot, @dependabot y @PatrLind. Para más detalles, revisa el changelog completo.

Nuevas características en Go OpenAI 1.24.0

  • Nuevas características en Go OpenAI 1.24.0 : En la versión 1.24.0 de Go OpenAI se han añadido nuevas funcionalidades como GPT4-o y alias a enums de completado. Los nuevos contribuyentes incluyen kmesiab, nullswan y Kshirodram. Este commit fue creado por sashabaranov el 13 de mayo.

GPTScript 0.6

  • GPTScript 0.6 : GPTScript 0.6 es un nuevo lenguaje de scripting para automatizar la interacción con un modelos (LLM), como OpenAI. Creado para ofrecer una experiencia de programación en lenguaje natural, permite realizar tareas complejas con instrucciones en inglés.

Superfile: Una herramienta para gestionar archivos de forma eficiente

Lista de juegos de código abierto

Posts que te pueden interesar:


LinkedIn

comments powered by Disqus