Category: Desarrollo

KVSplit: Cuantificación de caché KV diferenciada para Apple Silicon

2025-05-16
KVSplit: Cuantificación de caché KV diferenciada para Apple Silicon

KVSplit optimiza los LLMs en Apple Silicon aplicando una precisión de cuantificación diferente a las claves en comparación con los valores en la caché KV del mecanismo de atención. Esto permite una reducción significativa de la memoria (hasta un 72%) con una pérdida mínima de calidad. La configuración K8V4 (claves de 8 bits, valores de 4 bits) ofrece el mejor equilibrio, logrando una reducción de memoria del 59% con solo un aumento de perplexidad del 0,86% e inferencia más rápida. KVSplit incluye un instalador sencillo y un conjunto completo de pruebas de referencia para evaluar diferentes configuraciones, permitiendo ventanas de contexto más largas y modelos más grandes en dispositivos Apple.

Desarrollo

Optimización de inserciones en PostgreSQL: De 2k a 92k inserciones por segundo

2025-05-16

El equipo de Hatchet logró una mejora de 31 veces en la velocidad de inserciones en PostgreSQL, pasando de 2.000 a 92.000 inserciones por segundo. Las optimizaciones clave incluyeron el agrupamiento de conexiones, las inserciones por lotes y el comando COPY. Descubrieron que más conexiones no siempre son mejores, necesitando encontrar un equilibrio óptimo. Las inserciones por lotes aumentaron drásticamente el rendimiento, pero también añadieron latencia, requiriendo ajustar el tamaño del lote y los intervalos de vaciado. El comando COPY resultó significativamente más eficiente cuando no se necesitaba el retorno de datos. El artículo menciona técnicas de optimización avanzadas, como inserciones transaccionales en varias tablas y el uso de UNNEST, prometiendo un análisis más profundo en una publicación futura.

Workflow Use: Automatización sin código para flujos de trabajo deterministas

2025-05-16
Workflow Use: Automatización sin código para flujos de trabajo deterministas

Workflow Use es un proyecto revolucionario que busca crear flujos de trabajo deterministas y autoreparables grabando interacciones del navegador. Los usuarios simplemente muestran el flujo de trabajo al grabador, y el sistema genera automáticamente scripts de automatización reutilizables. Actualmente en desarrollo inicial, el proyecto tiene como objetivo permitir que las computadoras aprendan tareas una vez y las ejecuten indefinidamente sin intervención humana. Los planes futuros incluyen mejorar la recuperación del LLM, implementar la autoreparación e integrarse con otras herramientas.

Desarrollo

Deja de construir envoltorios GPT. Construye un modelo del mundo en su lugar.

2025-05-16
Deja de construir envoltorios GPT. Construye un modelo del mundo en su lugar.

Foundry está construyendo la infraestructura central para agentes de navegador, no envoltorios GPT. Argumentan que todas las aplicaciones SaaS y herramientas empresariales sin una API pronto serán automatizadas por agentes de navegador, pero la tecnología actual de agentes de navegador está en su infancia. Foundry tiene como objetivo construir simulaciones web deterministas e hiperrealistas, un marco de anotación integral, puntos de referencia confiables y entornos de entrenamiento RL robustos para mejorar la confiabilidad y la eficiencia de los agentes de navegador. Están buscando un ingeniero de software senior para construir sistemas de ML centrales e infraestructura de RL desde cero.

Desarrollo modelo del mundo

arXivLabs: Colaboraciones Comunitarias en Funciones de arXiv

2025-05-16
arXivLabs: Colaboraciones Comunitarias en Funciones de arXiv

arXivLabs es un marco que permite a los colaboradores desarrollar y compartir nuevas funciones de arXiv directamente en el sitio web. Las personas y organizaciones involucradas comparten los valores de arXiv de apertura, comunidad, excelencia y privacidad de datos del usuario. arXiv está comprometido con estos valores y solo trabaja con socios que los respetan. ¿Tienes una idea para un proyecto que beneficiará a la comunidad de arXiv? Obtén más información sobre arXivLabs.

Desarrollo

LPython: Un compilador de Python a código de máquina

2025-05-16

LPython es un compilador de Python que compila código Python con anotaciones de tipo a código de máquina optimizado, con soporte para backends como LLVM, C, C++, WASM, Julia y x86. Los benchmarks demuestran su velocidad tanto en la compilación como en el tiempo de ejecución. Ofrece compilación Just-In-Time (JIT) e interoperabilidad perfecta con CPython. Una versión alfa está disponible, con informes de errores alentados.

Desarrollo compilación JIT

rv: Una forma reproducible, rápida y declarativa de gestionar paquetes R

2025-05-16
rv: Una forma reproducible, rápida y declarativa de gestionar paquetes R

rv es un gestor de paquetes R revolucionario que permite gestionar e instalar paquetes R de forma reproducible, rápida y declarativa. Al especificar la versión de R, los repositorios y las dependencias en un archivo de configuración (rproject.toml), el comando `rv sync` sincroniza la biblioteca, el archivo de configuración y el archivo de bloqueo, mientras que el comando `rv plan` proporciona una vista previa. Admite configuraciones personalizadas de paquetes y repositorios, permitiendo la instalación de paquetes específicos y sus paquetes sugeridos. rv está escrito en Rust y viene con documentación detallada de instalación y uso.

Mensajes de error del compilador Rust: Una década de evolución

2025-05-16

Este artículo explora la evolución de los mensajes de error del compilador Rust en la última década. Analizando las salidas de error de varias versiones estables de Rust, desde la 1.0 en adelante, el autor muestra mejoras significativas en la claridad, legibilidad y experiencia del usuario. Hitos clave incluyen la introducción de códigos de error numéricos en la versión 1.2.0 y mensajes de error coloridos con la sugerencia `rustc --explain` en la versión 1.26.0. El autor destaca el esfuerzo continuo de cientos de contribuidores, demostrando la dedicación al detalle y la mejora iterativa dentro de la comunidad Rust. También se observan pequeñas inconsistencias divertidas entre las versiones, subrayando el elemento humano en esta extensa empresa.

Desarrollo Mensajes de error

Estrategias de Caché para Sitios Web de Alto Rendimiento y Bajo Costo

2025-05-16
Estrategias de Caché para Sitios Web de Alto Rendimiento y Bajo Costo

Este artículo detalla las técnicas de caché utilizadas en los sitios web del autor, jasonthorsness.com y hn.unlurker.com. Se presentan diferentes enfoques para varios tipos de sitios web: los sitios principalmente estáticos utilizan hash de contenido, CDN y caché del lado del cliente; los sitios dinámicos basados en datos combinan encabezados de control de caché a corto plazo, caché de memoria de back-end, instancias únicas y caché en disco; y para los sitios autenticados, el autor sugiere priorizar los componentes no específicos del usuario y aprovechar el caché colaborativo entre el navegador y el servidor. Mediante estrategias de caché inteligentes, el autor logra un alto rendimiento con un costo mínimo, manteniendo la estabilidad incluso bajo un tráfico intenso.

Desarrollo

Erlang-RED: Reimplementación del backend de Node-RED en Erlang

2025-05-16
Erlang-RED: Reimplementación del backend de Node-RED en Erlang

Este proyecto experimenta con la sustitución del backend Node.js existente de Node-RED por un equivalente en Erlang. El objetivo es aprovechar las ventajas de la concurrencia inherente de Erlang para aumentar el rendimiento de Node-RED. Una parte significativa de los nodos de Node-RED ya se ha implementado, con un sistema de prueba basado en flujo que garantiza la funcionalidad. El desarrollo se basa en flujos, separando los flujos de prueba y el código para un mejor mantenimiento e integración.

Desarrollo

¡Feliz 30 aniversario, Java! Una conversación con James Gosling

2025-05-16
¡Feliz 30 aniversario, Java! Una conversación con James Gosling

¡Java cumple 30 años! Este artículo celebra el legado del lenguaje y profundiza en la fascinante vida de su creador, James Gosling. Desde un ingenioso adolescente canadiense construyendo computadoras con piezas recuperadas hasta un programador pionero en Sun Microsystems, el viaje de Gosling está lleno de anécdotas. Recuerda las legendarias bromas del Día de los Inocentes en Sun, mientras reflexiona sobre la evolución de Java y su actual escepticismo hacia la sobrevalorada revolución de la IA. Gosling enfatiza la continua importancia de las habilidades de programación y la perdurable relevancia de Java en un panorama tecnológico en rápida evolución.

Desarrollo

Construyendo MVPs: Velocidad, Enfoque y Cómo Evitar Errores Comunes

2025-05-16
Construyendo MVPs: Velocidad, Enfoque y Cómo Evitar Errores Comunes

Este artículo explica cómo construir eficientemente un Producto Mínimo Viable (MVP). Un MVP no se trata de trabajo de mala calidad; es una versión simplificada de tu producto principal, diseñada para la validación rápida de hipótesis y necesidades del usuario. El artículo destaca errores comunes que se deben evitar, como el exceso de funciones, la elección de la tecnología incorrecta y la negligencia de la calidad del código. Al centrarse en los problemas principales, elegir la pila de tecnología adecuada y priorizar la calidad y seguridad del código, puedes mitigar riesgos, acelerar la iteración y, finalmente, lograr el éxito del producto.

Desarrollo

SQL-tString: Construcción segura de consultas SQL en Python

2025-05-16
SQL-tString: Construcción segura de consultas SQL en Python

SQL-tString es una robusta biblioteca de Python que permite la construcción de consultas SQL usando t-strings (similar a las f-strings) previniendo vulnerabilidades de inyección SQL. Soporta consultas parametrizadas, maneja parámetros opcionales y condiciones de valores NULL, y se adapta flexiblemente a diferentes dialectos de bases de datos (soporta los estilos de parámetros qmark y $). También es compatible con versiones anteriores de Python 3.12 y 3.13.

Jetrelay: Servidor Pub/Sub altamente eficiente que aprovecha las características del kernel de Linux

2025-05-16

Jetrelay, un servidor Pub/Sub compatible con el jetstream de Bluesky, alcanza una eficiencia impresionante con solo 500 líneas de código. Al utilizar inteligentemente las características del kernel de Linux como `sendfile()`, `io_uring` y `fallocate()`, Jetrelay transmite datos y gestiona el almacenamiento persistente con una mínima sobrecarga en el espacio de usuario. Esto le permite saturar una conexión de red de 10 Gbps con solo 8 núcleos de CPU. El diseño evita copias de datos innecesarias y utiliza E/S asincrónica para gestionar miles de conexiones de clientes simultáneas de forma eficaz.

Desarrollo

Diez años de abuso de prueba: una saga hilarante de código abierto

2025-05-16
Diez años de abuso de prueba: una saga hilarante de código abierto

Una empresa semigubernamental con US$ 130 millones en ingresos anuales depende en gran medida de una plataforma de código abierto, Xen Orchestra, para su infraestructura de TI. Sorprendentemente, durante una década, han abusado del período de prueba de 30 días de la plataforma, registrando al menos 60 cuentas, desde correos electrónicos corporativos hasta correos electrónicos personales, incluso numerándolos incrementalmente ([email protected], [email protected]...). A pesar de la disponibilidad de una versión gratuita de código abierto, persisten en usar la versión de prueba, rechazando el soporte pago. Esto genera preocupaciones en la comunidad de código abierto sobre los mecanismos de prueba y la sostenibilidad de los proyectos de código abierto.

Extracción de MRR de datos de Stripe: Problemas y implementación en SQL

2025-05-16
Extracción de MRR de datos de Stripe: Problemas y  implementación en SQL

Este artículo detalla cómo extraer datos de la API de Stripe y calcular los Ingresos Recurrentes Mensuales (MRR). El autor destaca la poca fiabilidad de usar directamente el objeto `subscriptions` de Stripe, ya que solo contiene el estado más reciente de la suscripción. El enfoque correcto utiliza los `elementos de la factura`, gestionando descuentos, ciclos de facturación variables (mensual, trimestral, anual), etc. El artículo proporciona código SQL detallado, que abarca la limpieza de datos, la normalización de ciclos y los cálculos finales de las métricas de MRR, incluyendo nuevo MRR, MRR de baja, MRR de expansión y MRR de reactivación. El artículo enfatiza la adaptabilidad y la capacidad de personalización del método, y recomienda una aplicación para simplificar los cálculos de MRR.

Desarrollo API de Stripe

Problema de Cumplimiento de la Licencia MIT de Ollama

2025-05-16
Problema de Cumplimiento de la Licencia MIT de Ollama

Ollama, un cliente de modelo de lenguaje grande de código abierto basado en llama.cpp, se enfrenta a un problema de cumplimiento de licencia. El usuario informa que el aviso de derechos de autor para llama.cpp, requerido por la licencia MIT, falta en las distribuciones binarias de Ollama. Esto requiere la adición de la información de derechos de autor apropiada a los binarios para asegurar el cumplimiento de la licencia MIT.

Desarrollo licencia MIT

Codificación con IA: ¿Una espada de doble filo?

2025-05-16

El autor intentó reconstruir el backend de su SaaS utilizando IA (Claude, Cursor), inicialmente con un progreso fluido. Sin embargo, pronto encontró problemas. El código generado por la IA carecía de consistencia y mantenibilidad, forzando una reescritura manual. El autor reflexiona sobre las desventajas de la dependencia excesiva de la IA, incluyendo la disminución de las habilidades de codificación y resolución de problemas. Aboga por la precaución, sugiriendo que la IA debe ser una herramienta complementaria, no un reemplazo completo.

Desarrollo

Compilación sin GIL de CPython 3.14: Desbloqueo del poder multinúcleo

2025-05-16
Compilación sin GIL de CPython 3.14: Desbloqueo del poder multinúcleo

El lanzamiento de CPython 3.14.0b1 representa un paso significativo hacia un Python con subprocesos libres, eliminando el Bloqueo Global del Intérprete (GIL). Quansight jugó un papel crucial, permitiendo el uso experimental de la compilación sin GIL en flujos de trabajo de producción reales con dependencias complejas. La eliminación del GIL desbloquea toda la potencia de cálculo de las CPU y GPU multinúcleo, resolviendo las limitaciones históricas de Python en la computación paralela. Esto requiere extensas auditorías de seguridad de subprocesos en paquetes existentes para corregir las carreras de datos. Quansight, en colaboración con Meta, adaptó numerosas bibliotecas principales (NumPy, Pandas, etc.) y mejoró el propio CPython para la seguridad de subprocesos. Aún existen desafíos, pero la compilación sin GIL representa el futuro de Python, prometiendo mejoras drásticas en el rendimiento.

Desarrollo

Logitloom: Visualización de la generación de LLM con árboles de trayectoria de tokens

2025-05-16
Logitloom: Visualización de la generación de LLM con árboles de trayectoria de tokens

Logitloom es una herramienta para visualizar el proceso de generación de modelos de lenguaje grandes (LLM) creando 'árboles de trayectoria de tokens' (looming). Admite modelos como Deepseek-v3 y el 405-base de Hyperbolic, requiriendo que los usuarios proporcionen claves de API. Logitloom ayuda a los desarrolladores a comprender mejor los mecanismos internos de LLM y actualmente no tiene licencia.

Desarrollo Análisis de Modelo

Conceptos erróneos sobre DDD en el front-end: No se trata de hacer DDD *en* Angular

2025-05-16
Conceptos erróneos sobre DDD en el front-end: No se trata de hacer DDD *en* Angular

Este artículo desmiente los conceptos erróneos comunes sobre el Diseño Orientado a Dominio (DDD) entre los desarrolladores de front-end. Muchos confunden DDD con la modularidad o las herramientas de Angular, pasando por alto el núcleo de DDD: comprender el negocio y diseñar el sistema a partir de las necesidades del negocio. El autor argumenta que DDD es una disciplina para todo el producto, no solo específica del front-end; el front-end es solo una parte de él. El artículo diferencia entre DDD estratégico y táctico, enfatiza la importancia del DDD estratégico, explica conceptos clave como contextos delimitados y eventos de dominio, y concluye que el valor de DDD reside en escenarios de negocios complejos, mientras que aplicarlo ciegamente puede ser perjudicial.

Wasmer está contratando: Ingeniero de Compiladores para dar forma al futuro de la computación en la nube con WebAssembly

2025-05-16
Wasmer está contratando: Ingeniero de Compiladores para dar forma al futuro de la computación en la nube con WebAssembly

Wasmer busca un ingeniero de compiladores cualificado para unirse a su equipo que está construyendo la próxima generación de plataformas de computación en la nube impulsadas por WebAssembly. El candidato ideal tendrá sólidas habilidades en Rust o C/C++, un profundo conocimiento del desarrollo de compiladores y excelentes habilidades de comunicación y trabajo en equipo. Wasmer está comprometida con el código abierto y ofrece salarios competitivos, opciones sobre acciones y acuerdos de trabajo flexibles. Esta es una oportunidad única para tener un impacto significativo en el futuro de la computación en la nube dentro de una startup dinámica y centrada en el código abierto.

Desarrollo

Expansión del ecosistema OpenHarmony: Aumento de propuestas de adaptación de bibliotecas

2025-05-16
Expansión del ecosistema OpenHarmony: Aumento de propuestas de adaptación de bibliotecas

La comunidad del sistema operativo de código abierto OpenHarmony ha visto recientemente un aumento en las propuestas de adaptación de varias bibliotecas de terceros, incluyendo pako, snappyjs, brotli, hi-base32, is-png y EventBus. Estas propuestas tienen como objetivo integrar estas bibliotecas en OpenHarmony, mejorando su funcionalidad y rendimiento. Incluyen demostraciones de HarmonyOS y el cumplimiento de las especificaciones OHPM. Esto demuestra el continuo crecimiento y expansión del ecosistema OpenHarmony, atrayendo a más y más desarrolladores.

In Memoriam: Michael Ryabushkin, Campeón de la Comunidad SoCal Python

2025-05-16
In Memoriam: Michael Ryabushkin, Campeón de la Comunidad SoCal Python

Michael Ryabushkin, una piedra angular de la comunidad SoCal Python, falleció en mayo de 2025. Se recibieron numerosos homenajes, recordando sus inmensas contribuciones a la comunidad y su calidez y generosidad como mentor, amigo y colega. Organizó innumerables eventos de Python, ayudó a muchos desarrolladores a encontrar trabajo y carreras profesionales, e incluso ofreció apoyo desinteresado en los momentos más difíciles de los demás. Su pasión, humor y dedicación altruista serán profundamente extrañados.

Desarrollo

Navegador Dia: Un ambicioso navegador nativo de IA se enfrenta a desafíos

2025-05-16
Navegador Dia: Un ambicioso navegador nativo de IA se enfrenta a desafíos

Después del modo de mantenimiento de su navegador Arc, The Browser Company (BCNY) lanzó Dia, un navegador nativo de IA. Dia cuenta con una interfaz de chat en la barra lateral impulsada por GPT 4.1 y distingue inteligentemente los tipos de búsqueda. Sin embargo, su barra lateral ocupa demasiado espacio, lo que afecta la experiencia del usuario; además, algunas funciones aún están subdesarrolladas. Si bien Dia destaca en el bloqueo de anuncios, BCNY enfrenta desafíos para destacarse en el competitivo mercado de navegadores.

Desarrollo

Estructuras de Datos Libres de Bloqueo: Un Equilibrio entre Rendimiento y Riesgo

2025-05-16

Este artículo profundiza en la implementación de un array libre de bloqueos, `LockFreeArray`, en Rust. Utiliza operaciones atómicas y una lista libre para lograr inserción y recuperación de valores sin bloqueos en múltiples hilos, eliminando la sobrecarga de rendimiento de los bloqueos. El artículo explica detalladamente `AtomicPtr`, `AtomicUsize`, `compare_exchange` y el papel crucial del orden de memoria. Las pruebas de rendimiento demuestran una ventaja significativa sobre `Mutex>>` (83,19% más rápido en promedio). Sin embargo, el artículo enfatiza los peligros inherentes a la programación libre de bloqueos, que requiere una comprensión profunda de los modelos de memoria y las operaciones atómicas para evitar conflictos de datos y fugas de memoria.

Desarrollo libre de bloqueos

I Dropped My Phone The Screen Cracked: Una biblioteca Web Audio para programación de audio simplificada

2025-05-16
I Dropped My Phone The Screen Cracked: Una biblioteca Web Audio para programación de audio simplificada

I Dropped My Phone The Screen Cracked es una biblioteca Web Audio innovadora que simplifica la creación, configuración y conexión de nodos de audio en el navegador utilizando encadenamiento de métodos y selectores al estilo CSS. Admite definiciones de macros y creación de plugins, haciendo la programación de audio tan intuitiva como conectar un sintetizador modular, permitiendo un procesamiento de audio complejo de forma concisa y expresiva. Los desarrolladores pueden crear y conectar nodos de audio fácilmente mediante encadenamiento de métodos, manipularlos con selectores y usar macros para encapsular cadenas de nodos en unidades reutilizables, mejorando la legibilidad y el mantenimiento del código.

Manejo de Errores Elegante en Puppeteer con Informes de Buglestack

2025-05-16
Manejo de Errores Elegante en Puppeteer con Informes de Buglestack

Este fragmento de código muestra cómo usar Puppeteer para raspar resultados de búsqueda de Google y manejar elegantemente los posibles errores. Al encontrar un error, el código captura los detalles del error, incluyendo la URL, una captura de pantalla, el contenido HTML, los metadatos y la pila de errores, y envía esta información a Buglestack para informes de errores. Esto permite a los desarrolladores identificar y corregir problemas rápidamente, mejorando la robustez del código.

Desarrollo

Teal: Un dialecto Lua con tipado estático

2025-05-16

Teal es un dialecto de Lua con tipado estático, que extiende Lua con anotaciones de tipo para arrays, mapas, registros, interfaces, tipos de unión y genéricos. Su objetivo es ocupar un nicho similar al de TypeScript en el mundo JavaScript, pero manteniendo el minimalismo, la portabilidad y la capacidad de incrustación de Lua. El compilador Teal, `tl`, compila código fuente `.tl` en archivos `.lua`. La instalación se realiza a través de LuaRocks, con binarios precompilados disponibles para Linux y Windows. Para proyectos más grandes, se recomienda usar la herramienta de compilación Cyan. También hay extensiones disponibles para VS Code y NeoVim. El proyecto es de código abierto bajo la licencia MIT.

Desarrollo

gkrellm: Un potente monitor de sistema Linux

2025-05-16

gkrellm es una potente herramienta de monitorización del sistema para Linux, que muestra el nombre del host, el uso de la CPU, la temperatura, la velocidad del ventilador, el voltaje, el uso del disco, las conexiones de red, el uso de la memoria y mucho más. Ofrece alarmas y avisos personalizables, y cuenta con funciones de plugin para una monitorización ampliada. gkrellm también admite la monitorización remota de sistemas mediante el modo cliente/servidor, proporcionando varios gráficos y modos de visualización para una comprensión intuitiva del estado del sistema.

Desarrollo
1 2 86 87 88 90 92 93 94 214 215