Category: Desarrollo

GNOME aumenta la dependencia de systemd: desafíos para entornos sin systemd

2025-06-11

El entorno de escritorio GNOME está aumentando su dependencia de systemd, lo que plantea desafíos para entornos sin systemd, como los sistemas BSD. GNOME 49 eliminará el administrador de servicios integrado de gnome-session y dependerá del userdb de systemd para la administración de usuarios. Esto requiere que las distribuciones sin systemd implementen alternativas a systemd, como elogind y eudev, y proporcionen el soporte necesario para la API userdb; de lo contrario, GNOME no funcionará correctamente. El artículo detalla los componentes de systemd que deben reemplazarse y las estrategias de mitigación correspondientes, recomendando el uso de systemd o la reversión a la versión GNOME 48.

Desarrollo

Depuradores: Una inmersión profunda en la arquitectura de una herramienta de depuración de software

2025-06-11
Depuradores: Una inmersión profunda en la arquitectura de una herramienta de depuración de software

Esta es la primera de una serie de publicaciones sobre la arquitectura de depuradores. El autor, basándose en años de experiencia en el desarrollo de depuradores, explora los principios básicos y la importancia de esta herramienta a menudo pasada por alto. Más que una simple herramienta para corregir errores, un depurador proporciona información detallada sobre la ejecución de programas y permite verificar la corrección del código. La publicación detalla cómo funcionan los depuradores, incluida la interacción con el kernel, las funciones de depuración de la CPU, la implementación de puntos de interrupción y la ejecución paso a paso del código. Las publicaciones futuras explorarán temas más avanzados y la dirección del desarrollo de depuradores.

Desarrollo

Lanzamiento de FreeBSD 14.3: Mejoras en ZFS, controladores WiFi y más

2025-06-11

FreeBSD 14.3, una versión estable que sirve como puente hacia FreeBSD 15, ya está disponible. Esta versión incorpora numerosas mejoras de FreeBSD 15, incluyendo: ZFS actualizado a OpenZFS 2.2.7; controladores WiFi Realtek RTW88 y RTW89 fusionados basados en el kernel de Linux 6.14; mejoras en LinuxKPI para descarga de cifrado y soporte para 802.11n/ac; soporte para el controlador Intel IX Ethernet para módulos x550 1000BAS-BX SFP; y actualizaciones para XZ, OpenSSH, OpenSSL y muchos otros paquetes. El controlador de consola heredado Syscons está en desuso.

Desarrollo

Proyecto Sophie Germain Prime: Una base de datos para números primos especiales

2025-06-11

El Proyecto Sophie Germain Prime es una base de datos dedicada a recopilar, analizar y distribuir números primos de Sophie Germain. Estos primos especiales p cumplen la condición de que 2p + 1 también es primo (un primo seguro). El proyecto también categoriza primos seguros ((p-1)/2 también es primo) y primos de Blum (p ≡ 3 (mod 4)). Los primos de Sophie Germain se usan ampliamente en criptografía de clave pública y pruebas de primalidad. Mantenido por Kamila Szewczyk, admite investigaciones en algoritmos como el generador de números aleatorios Blum-Blum-Shub. Una API permite a los usuarios enviar y consultar primos, pero existen límites de velocidad.

Desarrollo

Mai: Controla la IA con tus gafas Meta a través de Messenger

2025-06-10
Mai: Controla la IA con tus gafas Meta a través de Messenger

Mai es una extensión de navegador que te permite controlar varios bots de IA (ChatGPT, Claude, etc.) usando comandos de voz a través de tus gafas inteligentes Meta Rayban o la aplicación Messenger. Ingeniosamente, elude las limitaciones para enviar mensajes a modelos de IA personalizados. Los usuarios pueden configurar múltiples claves de API, enviar mensajes e imágenes a diferentes servicios de IA e incluso convertir las respuestas en voz. Aunque todavía está en una etapa temprana, Mai muestra el potencial de la futura integración de la IA con dispositivos portátiles.

Desarrollo

arXivLabs: Proyectos experimentales con colaboradores de la comunidad

2025-06-10
arXivLabs: Proyectos experimentales con colaboradores de la comunidad

arXivLabs es un marco que permite a los colaboradores desarrollar y compartir nuevas funciones del arXiv directamente en nuestro sitio web. Tanto las personas como las organizaciones que trabajan con arXivLabs han adoptado y aceptado nuestros valores de apertura, comunidad, excelencia y privacidad de los datos de los usuarios. arXiv está comprometido con estos valores y solo trabaja con socios que los respeten. ¿Tiene una idea para un proyecto que agregue valor a la comunidad de arXiv? Obtenga más información sobre arXivLabs.

Desarrollo

XenevaOS: Un sistema operativo de código abierto construido desde cero

2025-06-10
XenevaOS: Un sistema operativo de código abierto construido desde cero

XenevaOS es un nuevo sistema operativo construido desde cero, compatible con arquitecturas x86_64 y ARM64. Su kernel, 'Aurora', tiene un diseño híbrido. Este proyecto de código abierto recibe contribuciones de desarrolladores. Las características actuales incluyen: soporte ACPI, kernels x64 y arm64, memoria completa de mitad superior, carga de controladores DLL, USB3, audio de alta definición, soporte multiprocesador (el planificador de multiprocesadores aún no está listo), biblioteca gráfica Chitralekha, gestor de ventanas Deodhai, entorno de escritorio Namdapha, varios soportes de almacenamiento, soporte de red (IPv4, UDP/IP, TCP/IP, ICMP) y aplicaciones básicas (reproductor de música, explorador de archivos, etc.). El proyecto se está construyendo actualmente en un entorno Windows.

Desarrollo núcleo

Recordando a Mikeal Rogers: Un faro de la comunidad de código abierto

2025-06-10
Recordando a Mikeal Rogers: Un faro de la comunidad de código abierto

Este sentido homenaje recuerda a Mikeal Rogers, un contribuyente clave de Node.js, fallecido a causa de un cáncer agresivo. El autor relata su viaje compartido y el profundo impacto de Mikeal en la comunidad de código abierto. La brillantez técnica de Mikeal, su pensamiento claro y su genuina humanidad brillaron, enfatizando la conexión humana en el corazón del código. Defendió el código abierto como una promesa, no solo una licencia, mentorizando a otros y fomentando el crecimiento. El autor se compromete a continuar el legado de Mikeal de construir comunidades inclusivas y abiertas.

Desarrollo Homenaje

Ubuntu 25.10 abandona el soporte Xorg para GNOME, adopta Wayland exclusivamente

2025-06-10
Ubuntu 25.10 abandona el soporte Xorg para GNOME, adopta Wayland exclusivamente

Ubuntu 25.10, con nombre en clave "Questing Quokka", está realizando un cambio significativo: el escritorio GNOME predeterminado utilizará exclusivamente Wayland, abandonando el soporte para Xorg. Esta no es una decisión repentina; GNOME está eliminando gradualmente el soporte para Xorg, y Canonical se está adaptando proactivamente. Esto permite a los usuarios y desarrolladores un ciclo de lanzamiento completo para adaptarse antes de que llegue la próxima versión LTS, Ubuntu 26.04, el próximo año. El cambio se debe a la madurez de Wayland, la mejora del soporte para controladores Nvidia, un mejor manejo de pantallas táctiles y pantallas de alta DPI, y una simplificación del desarrollo al evitar el mantenimiento de dos servidores de visualización. Si bien algunos usuarios dependen de Xorg, no desaparecerá por completo; todavía se puede instalar y usar con otros entornos de escritorio. La mayoría de las aplicaciones X11 seguirán funcionando a través de XWayland.

Desarrollo

Tendencias de Concurrencia en Rust: Un cuello de botella de contador atómico

2025-06-10
Tendencias de Concurrencia en Rust: Un cuello de botella de contador atómico

La plataforma de análisis de streaming de Conviva experimentó un cuello de botella de rendimiento debido a un contador atómico aparentemente inofensivo en un registro de tipo compartido globalmente usando un mapa hash concurrente (Flashmap). Bajo alta concurrencia, las actualizaciones del contador atómico causaron rebote de líneas de caché y un cambio de contexto excesivo, lo que provocó un pico en la latencia P99. Reemplazar Flashmap con Dashmap no resolvió el problema. El problema se resolvió finalmente usando ArcSwap, que emplea un mecanismo de actualización de copia de lectura (RCU) para evitar la contención de caché. Este caso destaca la importancia de elegir la estructura de datos correcta para escenarios de alta concurrencia, particularmente en situaciones con muchas lecturas, donde la eficiencia de ArcSwap destaca.

Desarrollo

Software Maleable: El Futuro de la Computación es Impulsado por el Usuario

2025-06-10
Software Maleable: El Futuro de la Computación es Impulsado por el Usuario

Este ensayo explora el concepto de "software maleable", un ecosistema de software donde los usuarios pueden adaptar fácilmente las herramientas a sus necesidades. Los autores argumentan que la rigidez del software actual perjudica la autonomía y la creatividad del usuario, ilustrando el impacto negativo con ejemplos de la profesión médica. Contrastan la maleabilidad de los entornos físicos con la inflexibilidad de los digitales, proponiendo tres patrones de diseño para lograr software maleable: una pendiente suave de personalización, herramientas componibles y creación comunitaria. Los autores detallan varios prototipos de sistemas que su equipo ha construido, mostrando el potencial del software maleable, al tiempo que reconocen los desafíos futuros, como la privacidad, la seguridad y los modelos de negocio. En última instancia, el ensayo aboga por un ecosistema informático más centrado en el usuario.

Desarrollo

arXivLabs: Proyectos experimentales con colaboradores de la comunidad

2025-06-10
arXivLabs: Proyectos experimentales con colaboradores de la comunidad

arXivLabs es un marco que permite a los colaboradores desarrollar y compartir nuevas funciones de arXiv directamente en nuestro sitio web. Tanto las personas como las organizaciones que trabajan con arXivLabs han adoptado y aceptado nuestros valores de apertura, comunidad, excelencia y privacidad de los datos de los usuarios. arXiv está comprometido con estos valores y solo trabaja con socios que se adhieren a ellos. ¿Tiene una idea para un proyecto que agregará valor a la comunidad de arXiv? Obtenga más información sobre arXivLabs.

Desarrollo

arXivLabs: Experimentando con la colaboración comunitaria

2025-06-10
arXivLabs: Experimentando con la colaboración comunitaria

arXivLabs es un marco para colaborar e implementar nuevas funciones de arXiv directamente en el sitio web. Los participantes deben aceptar los valores de arXiv de apertura, comunidad, excelencia y privacidad de datos de usuario. ¿Tienes una idea para mejorar la comunidad de arXiv? ¡Explora arXivLabs!

Desarrollo

Stanford Integra IA para Potenciar el Aprendizaje en Política de Seguridad Nacional

2025-06-10
Stanford Integra IA para Potenciar el Aprendizaje en Política de Seguridad Nacional

La clase de política internacional de Stanford, "Tecnología, Innovación y Competencia entre Grandes Potencias", integró herramientas de IA para mejorar significativamente el aprendizaje de los estudiantes. Los estudiantes utilizaron ChatGPT, Claude, Perplexity y otras herramientas de IA para resumir documentos, identificar temas clave, analizar contenido crítico y aplicar estos conocimientos a desafíos de seguridad nacional del mundo real. Los proyectos en equipo revelaron usos innovadores de la IA, incluyendo la generación de preguntas para entrevistas, la simulación de entrevistas y la creación de presentaciones. La clase demuestra el potencial de la IA como una herramienta de aprendizaje poderosa, acelerando el aprendizaje y profundizando la comprensión.

Vulnerabilidades de inyección de shell ocultas en utilidades Unix

2025-06-10
Vulnerabilidades de inyección de shell ocultas en utilidades Unix

Muchas utilidades Unix usan la función `system(3)` para ejecutar comandos externos, lo que lleva a posibles vulnerabilidades de inyección de shell. Este artículo profundiza en este problema, analizando el comportamiento de `system(3)`, `sh -c` y varias herramientas como `watch`, `ssh` e `i3`, demostrando cómo se pueden usar metacaracteres de shell para eludir las medidas de seguridad. El autor aboga por evitar `system(3)` y proporciona técnicas de mitigación, como el uso de `exec --` y la cita y el escape adecuados. En última instancia, el artículo hace un llamamiento a los desarrolladores para que aborden estas fallas de seguridad en sus herramientas.

Pydoll: Automatización de navegador sin Webdrivers

2025-06-10
Pydoll: Automatización de navegador sin Webdrivers

¡Adiós a las pesadillas de compatibilidad de webdriver! Pydoll es una biblioteca Python revolucionaria que se conecta directamente al protocolo Chrome DevTools, eliminando la necesidad de controladores externos para la automatización del navegador. Cuenta con omisión nativa de captcha (Cloudflare Turnstile y reCAPTCHA v3), rendimiento asíncrono, interacciones similares a las humanas y un potente sistema de eventos. Su simplicidad, potencia y capacidad para gestionar las protecciones modernas de los sitios web la convierten en la herramienta ideal para pruebas automatizadas, web scraping y automatización de tareas repetitivas.

Desarrollo omisión de captcha

Vulnerabilidad crítica en OpenPGP.js permite la suplantación de firmas

2025-06-10
Vulnerabilidad crítica en OpenPGP.js permite la suplantación de firmas

Codean Labs descubrió una vulnerabilidad crítica (CVE-2025-47934) en la biblioteca OpenPGP.js que permite a los atacantes suplantar firmas arbitrarias. Al aprovechar una firma válida y adjuntar un paquete de datos malicioso, los atacantes pueden engañar a los verificadores de OpenPGP.js para que acepten los datos maliciosos como firmados, falsificando firmas de manera efectiva. Esta vulnerabilidad afecta a varios clientes de correo electrónico basados ​​en la web, lo que representa un riesgo crítico. Las versiones 5.11.3 y 6.1.1 corrigen esta vulnerabilidad; se recomiendan actualizaciones inmediatas.

Herencia de Plantillas C++ y Construcción de Copias: Un static_assert Intrigante

2025-06-10
Herencia de Plantillas C++ y Construcción de Copias: Un static_assert Intrigante

Este artículo explora un problema intrigante sobre constructores de copia en la herencia de plantillas C++. La clase `Derived` hereda de la clase `Base`, donde el constructor de copia de `Base` está eliminado. Sin embargo, `Derived` define su propio constructor de copia. Aunque este constructor intenta copiar el objeto `Base` no copiable, `std::is_copy_constructible` todavía devuelve verdadero. Esto se debe a que el compilador solo verifica la presencia de un constructor de copia no eliminado, no su capacidad de instanciación. El autor también discute las diferencias entre los constructores de copia explícitamente definidos e implícitamente definidos, y las implicaciones de mover la definición del constructor de copia fuera de línea.

patolette: Una biblioteca de cuantificación de color y difuminado basada en PCA

2025-06-10
patolette: Una biblioteca de cuantificación de color y difuminado basada en PCA

patolette es una biblioteca C/Python para la cuantificación de color y el difuminado, que implementa una variante ponderada del cuantificador basado en PCA de Xiaolin Wu. Las características clave incluyen el soporte para los espacios de color CIEL*u*v* e ICtCp, la ponderación opcional del mapa de prominencia para las áreas visualmente prominentes y el refinamiento opcional de KMeans. Si bien todavía está en desarrollo y carece de un paquete PyPI, ya es utilizable. Se requiere una instalación manual, con soporte para el conjunto de instrucciones AVX para aumentar el rendimiento. La biblioteca no se encarga de la decodificación/codificación de imágenes; los usuarios deben hacerlo por sí mismos.

Algoritmo de Cálculo de Trayectoria Esférica 3D

2025-06-10
Algoritmo de Cálculo de Trayectoria Esférica 3D

Este código implementa un algoritmo para calcular la trayectoria entre dos puntos en una esfera 3D. Primero convierte los vectores de inicio y fin a un sistema de coordenadas local, luego usa interpolación de cuaterniones para calcular varios puntos en la trayectoria y, finalmente, genera una curva que conecta los dos puntos. El algoritmo utiliza inteligentemente las propiedades de los vectores 3D y los cuaterniones para calcular eficientemente una trayectoria esférica suave, adecuada para la planificación de trayectorias y la animación en escenas 3D.

Paws-on-MCP: Implementación de Servidor MCP Unificado Listo para Producción

2025-06-10
Paws-on-MCP: Implementación de Servidor MCP Unificado Listo para Producción

Paws-on-MCP es un servidor completo del Protocolo de Contexto de Modelo (MCP) que implementa la última especificación MCP 2025-03-26. Demuestra las capacidades de MCP, incluyendo herramientas, recursos, indicaciones, raíces y muestreo mejorado con preferencias de modelo. El proyecto cuenta con integraciones de API de HackerNews y GitHub con análisis impulsado por IA a través del muestreo avanzado de MCP. La funcionalidad principal de MCP está lista para producción, aunque algunas pruebas fallaron debido a limitaciones de concurrencia del framework.

Desarrollo

Más Allá de las Promises: Explorando el Poder de los Thenables en Operaciones Asíncronas de JavaScript

2025-06-10

Este artículo profundiza en el poder de los Thenables en JavaScript, objetos con un método `.then()` que se pueden esperar usando la palabra clave `await`, incluso si no son objetos Promise. El artículo demuestra la creación de un Thenable que simula operaciones asíncronas y lo compara con la ejecución diferida de Prisma. Si bien destaca la naturaleza ligera de los Thenables para las operaciones asíncronas, el autor advierte que los Thenables complejos pueden ser más difíciles de depurar, por lo que recomienda usar Promises nativas cuando sea apropiado.

Desarrollo

Elastic Cloud Serverless: Rendimiento inestable y pérdida de paquetes en Azure AKS

2025-06-10
Elastic Cloud Serverless: Rendimiento inestable y pérdida de paquetes en Azure AKS

El equipo de Ingeniería de Fiabilidad del Sitio (SRE) de Elastic observó un rendimiento inestable y pérdida de paquetes en Elastic Cloud Serverless que se ejecuta en Azure Kubernetes Service (AKS). La investigación reveló que los principales factores que contribuyen a esto son los desbordamientos del búfer de anillo RX y la saturación de la cola de entrada del kernel en las interfaces SR-IOV. Para solucionar este problema, aumentamos los tamaños de los búferes RX y ajustamos el backlog de netdev, lo que mejoró significativamente la estabilidad de la red. Incluso con hardware de alto rendimiento, el ajuste de los parámetros de red a nivel del sistema operativo es crucial para un rendimiento óptimo.

Desarrollo

Desentrañando el Misterio de DOES> en Forth

2025-06-10

Este artículo profundiza en la intrincada implementación de la palabra `DOES>` en el lenguaje de programación Forth. `DOES>` permite la creación de 'estructuras de datos inteligentes' capaces de ejecutar acciones personalizadas. El autor explica meticulosamente los tres aspectos temporales de `DOES>`: tiempo de compilación, tiempo de definición y tiempo de ejecución. Usando los ejemplos de `SHAPE` y `MAN`, el artículo ilustra cómo `DOES>` modifica la dirección de ejecución de palabras recién creadas para lograr su funcionalidad, ejecutando en última instancia el código que sigue a `DOES>` en tiempo de ejecución. También se discuten la complejidad de la implementación de `DOES>` y los posibles conflictos con la gestión de memoria de los sistemas operativos modernos.

¿Por qué los agentes de IA son malos programadores en pareja?

2025-06-10
¿Por qué los agentes de IA son malos programadores en pareja?

El autor comparte su experiencia con la programación en pareja usando IA, descubriendo que la velocidad de la IA supera la comprensión humana, llevando a ineficiencias. La solución propuesta es dividir las tareas en componentes más pequeños e independientes, usar flujos de trabajo asíncronos y reducir la autonomía de la IA. Esto incluye usar modos de edición por turnos, aumentar la comunicación y las etapas de confirmación y buscar un mejor equilibrio entre velocidad y calidad. El objetivo final es hacer que el asistente de IA se parezca más a un colaborador humano que a un generador de código de alta velocidad.

container: Herramienta de contenedores ligera para Macs con Apple Silicon

2025-06-09
container: Herramienta de contenedores ligera para Macs con Apple Silicon

container es una herramienta basada en Swift para crear y ejecutar contenedores Linux en macOS como máquinas virtuales ligeras. Es compatible con OCI, lo que te permite extraer y ejecutar imágenes de cualquier registro de contenedores estándar y enviar imágenes creadas. Utiliza nuevas funciones de macOS 26 Beta 1 y tiene limitaciones de red en macOS 15; se recomienda la actualización. Descarga el instalador desde la página de lanzamientos de GitHub y utiliza el script uninstall-container.sh para la eliminación. Los datos del usuario se pueden conservar durante la desinstalación.

Desarrollo

Creación de prototipos de un lenguaje CodeCAD: La búsqueda de la 'hygge' del software

2025-06-09

El autor pasó un mes creando un prototipo de un lenguaje CodeCAD, buscando no demostraciones llamativas, sino una sensación de "hygge" de software: carga instantánea, estabilidad y facilidad de uso. El artículo se centra en los desafíos de creación de prototipos de una función de "edición bidireccional", sincronizando una interfaz gráfica con un editor de código textual en tiempo real. Se discuten numerosos obstáculos técnicos, incluida la reescritura de código, la sincronización del editor y la IU y el formateo de código. El autor comparte recursos de aprendizaje y reflexiones sobre la creación de una implementación de lenguaje integrada y herramientas de edición, así como debates sobre proyectos existentes relacionados.

Apple presenta framework de modelos fundamentales para IA sin conexión en WWDC2025

2025-06-09
Apple presenta framework de modelos fundamentales para IA sin conexión en WWDC2025

Apple anunció su nuevo framework "Foundation Models" en la WWDC2025, permitiendo a los desarrolladores utilizar modelos de IA en el dispositivo, sin conexión. Esto elimina los costos de las API en la nube y mejora la privacidad del usuario. Usando Swift, los desarrolladores pueden acceder a los modelos de Apple Intelligence con un código mínimo, creando experiencias personalizadas. Por ejemplo, Kahoot puede generar cuestionarios personalizados a partir de las notas del usuario. El framework se encuentra actualmente en pruebas para desarrolladores, con una versión beta pública que se lanzará a principios del próximo mes.

Desarrollo IA sin conexión

Ejecutando contenedores Linux en Apple Silicon: Presentación de Containerization

2025-06-09
Ejecutando contenedores Linux en Apple Silicon: Presentación de Containerization

Containerization es un proyecto basado en Swift que permite el uso de contenedores Linux en Apple Silicon. Aprovechando la virtualización, ofrece APIs completas para la gestión de imágenes OCI, la interacción con registros remotos, la creación de sistemas de archivos, la configuración de red, la gestión de VMs ligeras y la ejecución de procesos en contenedores. Un minissistema init, vminitd, gestiona los procesos dentro de la VM. La compilación requiere un Mac con Apple Silicon, macOS 15+ y Xcode 26 Beta+. Una configuración optimizada del kernel de Linux garantiza tiempos de arranque rápidos. Se ha lanzado la versión 0.1.0, y se agradecen las contribuciones de la comunidad.

Desarrollo

Somo: Una alternativa amigable a netstat para monitorización de sockets y puertos en Linux

2025-06-09
Somo: Una alternativa amigable a netstat para monitorización de sockets y puertos en Linux

¿Cansado de la complejidad de netstat? Somo es una herramienta de monitorización de sockets y puertos más amigable para Linux. Muestra la información en una vista de tabla limpia, admite varias opciones de filtro (protocolo, puerto, dirección IP, nombre del programa, etc.) y ofrece la posibilidad de matar procesos de forma interactiva. La instalación es sencilla, con soporte para paquetes .deb para Debian e instalación mediante Cargo. El uso de sudo permite ver todos los procesos y puertos. En resumen: Somo hace que la monitorización de puertos en Linux sea más sencilla, eficiente y amigable.

Desarrollo
1 2 63 64 65 67 69 70 71 214 215