Category: Desarrollo

Libro-vídeo interactivo sobre Combinatoria Biyectiva: ABjC

2025-06-21

ABjC es un libro-vídeo de combinatoria biyectiva en cuatro partes, cada parte correspondiente a un curso impartido en el IMSc. Presentado en formato de vídeo con un sitio web interactivo para una navegación fácil, ABjC permite a los usuarios encontrar secciones y marcas de tiempo específicas. Abarca la combinatoria enumerativa, algebraica y biyectiva, presentando nuevos resultados y presentaciones novedosas de la teoría clásica. Adecuado para estudiantes de pregrado, posgrado e investigadores, el libro-vídeo incluye secciones que atienden a diferentes niveles de habilidad.

Desarrollo libro-vídeo

Cosmoe: Una biblioteca de IU de BeOS necesita mejoras de estabilidad y compatibilidad

2025-06-21

Cosmoe, una biblioteca de interfaz de usuario BeOS construida sobre Wayland, necesita mejoras adicionales en estabilidad y compatibilidad a pesar del progreso significativo en la integración de las bibliotecas de clases BeOS con Wayland. Persisten fallos y comportamientos incorrectos, dificultados por las complejidades de Wayland. Cosmoe implementa actualmente alrededor del 95% de la API de BeOS, pero faltan funciones cruciales como BBitmaps "offscreen" para dibujo acelerado y BFilePanel (diálogos Abrir/Guardar). Algunas clases relacionadas con archivos solo están parcialmente implementadas. Además, las restricciones de seguridad de Wayland impiden ciertas acciones de ventana, como el posicionamiento y el centrado. Consulte el archivo TODO del repositorio Cosmoe para obtener más detalles.

Desarrollo

Dominando TestFlight: Una guía para las pruebas de aplicaciones beta

2025-06-21
Dominando TestFlight: Una guía para las pruebas de aplicaciones beta

¿Quieres experimentar las aplicaciones más recientes antes que nadie? TestFlight es tu clave. Esta guía cubre la instalación, las pruebas y las actualizaciones de aplicaciones beta en iOS, iPadOS, macOS, tvOS y visionOS. Únete a través de invitaciones por correo electrónico o enlaces públicos para instalar en hasta 30 dispositivos. Ten en cuenta que las compras integradas durante las pruebas beta no se transfieren a la versión de la App Store y las versiones beta caducan después de 90 días. TestFlight también admite actualizaciones automáticas y pruebas de versiones anteriores para una colaboración optimizada entre desarrolladores y probadores.

Desarrollo Pruebas Beta

Delta Chat: Un Mensajero Descentralizado y Seguro

2025-06-21
Delta Chat: Un Mensajero Descentralizado y Seguro

Delta Chat es una aplicación de mensajería descentralizada y segura que ofrece mensajería instantánea confiable con soporte para múltiples perfiles y dispositivos. Los usuarios pueden conectarse a servidores de chatmail rápidos y seguros o utilizar servidores de correo electrónico clásicos. Las aplicaciones web interactivas dentro de los chats permiten juegos y colaboración. El cifrado de extremo a extremo auditado protege contra ataques de red y de servidor. Construido sobre principios de código abierto y estándares de internet, Delta Chat evita las trampas de las plataformas centralizadas.

Riesgos de seguridad en analizadores Go: explotación de comportamientos inesperados en JSON, XML y YAML

2025-06-21
Riesgos de seguridad en analizadores Go: explotación de comportamientos inesperados en JSON, XML y YAML

Los analizadores JSON, XML y YAML de Go presentan riesgos de seguridad, permitiendo que los atacantes exploten comportamientos inesperados para eludir la autenticación, sortear la autorización y exfiltrar datos sensibles. La publicación detalla tres escenarios de ataque: (1) (Des)serialización de datos inesperados: exponiendo datos que los desarrolladores pretendían mantener privados; (2) Diferenciales de analizadores: discrepancias entre analizadores que permiten eludir los controles de seguridad; y (3) Confusión de formato de datos: explotando el manejo de cargas útiles entre formatos. Las mitigaciones incluyen el uso de `DisallowUnknownFields` y funciones personalizadas para compensar las vulnerabilidades en la biblioteca estándar de Go.

Desarrollo seguridad Go

Descenso de Bloque de Vértice Aumentado: Un Avance en la Simulación de Física en Tiempo Real

2025-06-21

Los investigadores han desarrollado el Descenso de Bloque de Vértice Aumentado (AVBD), un nuevo método de simulación física incondicionalmente estable, altamente paralelizable y con una convergencia y manejo de restricciones complejas significativamente mejoradas. El AVBD maneja eficientemente escenarios complejos como el apilamiento de cuerpos rígidos, la fricción, las restricciones de las juntas y las interacciones rígidas-blandas. Una implementación de GPU alcanza un rendimiento en tiempo real, manteniendo la estabilidad incluso con millones de objetos interactuando a través de colisiones. En comparación con las alternativas de vanguardia, el AVBD demuestra un rendimiento, convergencia y estabilidad superiores, con una demostración online 2D disponible.

Desarrollo simulación física

El sistema de compilación de Chromium migra a Siso

2025-06-21

El equipo de infraestructura de compilación de Chrome anuncia que el sistema de compilación de Chromium cambiará de Ninja a Siso, un reemplazo directo de Ninja que admite de forma nativa la ejecución remota. Los desarrolladores externos simplemente deben continuar usando autoninja; este usará automáticamente Siso después de ejecutar `gn clean` la próxima vez. Si surgen problemas, vuelva a Ninja configurando `use_siso=false` en su `args.gn`. El soporte para Ninja finaliza a finales de septiembre, junto con la eliminación de Reclient.

Desarrollo

Pánico parisino: Un desastre de eliminación en cascada en producción

2025-06-21
Pánico parisino: Un desastre de eliminación en cascada en producción

Un ingeniero de software que trabaja en Joe AI, una startup inmobiliaria de París, eliminó accidentalmente un registro de usuario en la base de datos de producción, lo que provocó una eliminación en cascada que borró tres meses de datos cruciales. Si bien se recuperaron algunos datos al actualizar a un plan de pago de Supabase, el incidente destacó los riesgos de manipular directamente las bases de datos de producción y la necesidad crítica de estrategias de respaldo sólidas. El desastre finalmente impulsó al equipo a mejorar su flujo de trabajo de desarrollo, configurando instancias locales de Supabase, lo que resultó en una mayor eficiencia. La experiencia subraya la importancia de aprender de los errores y adoptar una cultura de toma de riesgos y mejora iterativa.

¡Aprende Campos de Galois para el Gran Bien! (Parte 00)

2025-06-21

Esta serie proporciona una introducción suave al Álgebra Abstracta, centrándose en los Campos de Galois (campos finitos) y sus aplicaciones en la ciencia de la computación. El autor aborda la falta de recursos accesibles para los científicos de la computación, ofreciendo un enfoque paso a paso con ejemplos prácticos de código Rust. Los temas que se tratarán incluirán los códigos Reed-Solomon, el cifrado AES y mucho más. El enfoque está en la comprensión, no en la optimización, por lo que es ideal para quienes son nuevos en el tema.

Desarrollo Álgebra Abstracta

AtomicOS: Un SO Educativo que Prioriza la Seguridad

2025-06-21
AtomicOS: Un SO Educativo que Prioriza la Seguridad

AtomicOS es un sistema operativo educativo construido desde cero, priorizando la seguridad sobre el rendimiento. Utiliza el lenguaje de programación determinista Tempo e implementa protección de memoria real, criptografía (AES-128, SHA-256) y una MMU completa. Si bien actualmente carece de funciones como pila de red, sistema de archivos y controladores, su diseño e implementación centrados en la seguridad son dignos de mención. El proyecto es de código abierto, pero requiere atribución y divulgación de modificaciones.

Desarrollo

arXivLabs: Colaboraciones comunitarias en las funciones de arXiv

2025-06-20
arXivLabs: Colaboraciones comunitarias en las funciones de arXiv

arXivLabs es un nuevo marco de colaboración que permite a los desarrolladores crear y compartir nuevas funciones de arXiv directamente en el sitio web de arXiv. 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 respeten. ¿Tiene alguna idea para mejorar la comunidad de arXiv? ¡Aprenda más sobre arXivLabs!

Desarrollo

Los LLM agravan la subutilización de las bibliotecas

2025-06-20

Las bibliotecas se subutilizan debido a factores como la diversión de codificar en comparación con la lectura de documentación, el efecto Dunning-Kruger que subestima la complejidad de la biblioteca y los proyectos internos que compiten con las bibliotecas. Los LLM empeoran esto. Si bien la 'codificación vibe' con LLM es divertida y eficiente, la salida a menudo es inferior a las bibliotecas probadas en batalla. El código generado por LLM es susceptible a las limitaciones de la ingeniería de prompts, mientras que los creadores de bibliotecas poseen una comprensión más profunda del problema y pueden aprovechar los LLM para generar código de mayor calidad. Irónicamente, la dependencia excesiva de los LLM para la generación de código puede percibirse como innovación, creando incentivos perversos y exacerbando aún más el problema. Para tareas complejas, es crucial priorizar las bibliotecas establecidas en lugar del uso directo de LLM.

Desarrollo

Probando la Corrección de la Memorización en Lean: Un Estudio de Caso

2025-06-20
Probando la Corrección de la Memorización en Lean: Un Estudio de Caso

Esta publicación de blog demuestra cómo resolver un problema de programación dinámica usando memorización en el probador de teoremas Lean y verificar formalmente su corrección. El autor aborda el problema de las Monedas de Oro de Bytelandia, presentando inicialmente una solución memorizada usando un HashMap. Se destaca la dificultad de probar directamente su corrección debido a los desafíos en el razonamiento sobre invariantes de estructuras de datos. La solución utiliza subtipos y pares dependientes para crear un `PropMap`, una tabla de memorización que almacena no solo los valores calculados, sino también las pruebas de su corrección. La corrección del algoritmo se prueba luego de forma incremental dentro de la propia implementación recursiva, culminando en una prueba de nivel superior trivial. Este enfoque entrelaza elegantemente el código y la prueba, mostrando una técnica poderosa para verificar formalmente algoritmos de programación dinámica.

arXivLabs: Proyectos experimentales con colaboradores de la comunidad

2025-06-20
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. Las personas y 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 respetan. ¿Tiene alguna idea para un proyecto que agregue valor a la comunidad de arXiv? Obtenga más información sobre arXivLabs.

Desarrollo

Nueva táctica antibloqueo de anuncios de YouTube: Búfer falso y cómo evitarlo

2025-06-20

YouTube ha lanzado otra ronda de medidas antibloqueo de anuncios, una de las cuales es el "búfer falso". Los vídeos experimentan un búfer artificialmente largo al principio, proporcional a la duración del anuncio. Esto se debe a que la API InnerTube de YouTube, cuando se detecta el bloqueo de anuncios, devuelve flujos de vídeo de GVS (Google Video Services) con retrasos. El autor encontró una solución modificando un filtro uBlock Origin para agregar `isInlinePlaybackNoAd: true` a la solicitud JSON. Sin embargo, YouTube implementó un script de bloqueo, requiriendo una solución alternativa conectando Object.assign.

Desarrollo

HashiCorp retira el servicio HCP Vault Secrets

2025-06-20
HashiCorp retira el servicio HCP Vault Secrets

HashiCorp anunció que dejará de prestar servicio a HCP Vault Secrets a partir del 27 de agosto de 2025 para clientes de pago por uso. La empresa integrará las mejoras de usabilidad de HCP Vault Secrets en HCP Vault Dedicated. Se anima a los usuarios existentes a migrar a HCP Vault Dedicated o Vault Community. Las ventas finalizan el 30 de junio de 2025; los clientes existentes pueden agregar nuevas aplicaciones hasta el final de su vida útil. Los clientes con contrato Flex no se verán afectados.

Desarrollo

Nxtscape: El navegador agente de código abierto: tu compañero de productividad con IA

2025-06-20
Nxtscape: El navegador agente de código abierto: tu compañero de productividad con IA

Nxtscape, un navegador de código abierto basado en Chromium, ofrece una alternativa que prioriza la privacidad a las opciones de código cerrado. Permite a los usuarios ejecutar agentes como Manus localmente, aumentando la productividad con un asistente de IA. A diferencia de Chrome, Nxtscape mantiene las funciones de IA locales, priorizando la privacidad del usuario. Su visión es reinventar la experiencia del navegador, abordando problemas como la sobrecarga de pestañas y el engorroso llenado de formularios. Las funciones futuras incluyen una tienda MCP y un bloqueador de anuncios de IA integrado. El proyecto es de código abierto e impulsado por la comunidad, animando la participación del usuario.

Escapa de la Pesadilla de la Producción en Ciencia de Datos: Una Solución Pythonica con Marimo y Bauplan

2025-06-20
Escapa de la Pesadilla de la Producción en Ciencia de Datos: Una Solución Pythonica con Marimo y Bauplan

Llevar modelos de aprendizaje automático del prototipo a la producción sigue siendo un gran obstáculo para los científicos de datos. Los enfoques tradicionales dependen de notebooks Jupyter frágiles o de transferencias de DevOps costosas y que llevan mucho tiempo. Este artículo presenta Marimo y Bauplan, una combinación de herramientas Pythonicas que proporciona una transición perfecta del prototipo a la producción, manteniendo todo el flujo de trabajo dentro del ecosistema de Python. Marimo es un notebook de código abierto moderno que combina la flexibilidad de Jupyter con la capacidad de mantenimiento de los scripts, mientras que Bauplan es una plataforma de datos en la nube que admite flujos de trabajo Pythonicos con control de versiones de datos integrado y entornos declarativos. Con estas herramientas, los científicos de datos pueden implementar directamente el código de sus notebooks a producción sin refactorización compleja o colaboración entre equipos, simplificando drásticamente el proceso de producción y aumentando la eficiencia.

Desarrollo

Motor de Diferenciación Automática Minimal en Rust

2025-06-20
Motor de Diferenciación Automática Minimal en Rust

Este es un motor de diferenciación automática minimal escrito en Rust. Puede entrenar una pequeña Perceptrón Multicapa para aprender la función XOR y representar un gráfico de computación de una sola Perceptrón en graph.html. El núcleo es la estructura Scalar, que almacena el valor, el gradiente opcional y un Edge que describe la operación que lo produjo. Las sobrecargas de operadores y las funciones auxiliares construyen un gráfico acíclico dirigido, almacenando en caché la derivada local para cada arista. `backward()` propaga recursivamente los gradientes desde el nodo de salida, acumulándolos en los nodos hoja creados con `Scalar::new_grad`. El gráfico se puede visualizar con `plot::dump_graph`.

Klong: Un lenguaje de arrays conciso

2025-06-20

Klong es un lenguaje de arrays conciso, similar a K, pero sin la ambigüedad. Utiliza notación matemática para la programación, lo que puede parecer simplista para quienes están familiarizados con K o APL, mientras que supone un desafío para los principiantes. Hay una documentación completa disponible, que incluye un manual de referencia, una guía introductoria, una referencia rápida y una comparación entre Klong y K. Escrito en ANSI C puro, es fácil de compilar e instalar, y también hay disponible una versión vectorizada llamada KlongPy.

Desarrollo

Phoenix.new: Un agente de codificación online basado en Elixir que revoluciona el desarrollo de aplicaciones en tiempo real

2025-06-20
Phoenix.new: Un agente de codificación online basado en Elixir que revoluciona el desarrollo de aplicaciones en tiempo real

Chris McCord, creador del framework Phoenix, presenta Phoenix.new, un agente de codificación online basado en Elixir. Se ejecuta en una VM aislada con acceso root al shell, lo que permite al agente instalar paquetes, ejecutar programas e interactuar con las aplicaciones. Integrado con un navegador para pruebas e interacción de front-end, Phoenix.new automatiza la implementación, se integra con Github y simplifica drásticamente el flujo de trabajo de desarrollo. Incluso puede generar aplicaciones basadas en esquemas de bases de datos. McCord sugiere que esto representa un cambio masivo en el desarrollo, y que el desarrollo futuro probablemente dependerá más de los agentes que trabajan en entornos CI.

(fly.io)
Desarrollo

cursor: Explorador de bases de datos PostgreSQL con IA

2025-06-20
cursor: Explorador de bases de datos PostgreSQL con IA

cursor es una aplicación de escritorio local que utiliza IA para explorar tu base de datos PostgreSQL en segundos. Genera consultas con conocimiento del esquema al instante, admite cualquier base de datos PostgreSQL y te permite usar tu propia clave OpenAI. Si bien pronto llegarán binarios precompilados, los usuarios actualmente necesitan compilarlo desde la fuente.

ts-ssh: Una potente herramienta de línea de comandos SSH/SCP para Tailscale

2025-06-20
ts-ssh: Una potente herramienta de línea de comandos SSH/SCP para Tailscale

ts-ssh es un cliente SSH y SCP de línea de comandos simplificado que aprovecha la red Tailscale. Ofrece potentes operaciones multi-host, ejecución de comandos por lotes e integración real de tmux, todo sin necesidad del demonio Tailscale completo. Perfecto para equipos de DevOps que necesitan acceso SSH rápido y confiable en su infraestructura Tailscale, ts-ssh admite múltiples métodos de autenticación, sesiones SSH interactivas, verificación segura de claves de host y transferencias SCP directas. Sus capacidades avanzadas multi-host incluyen la ejecución de comandos por lotes, la ejecución de comandos concurrentes y la distribución de archivos multi-host. Compatible con múltiples plataformas y con soporte para varios idiomas, ts-ssh es esencial para la gestión eficiente de redes.

Desarrollo

Las trampas de la generación de código de IA: Ignorar la arquitectura subyacente

2025-06-20
Las trampas de la generación de código de IA: Ignorar la arquitectura subyacente

Este artículo explora los riesgos de usar ciegamente metodologías ágiles y herramientas de generación de código de IA en la ingeniería de software. El autor argumenta que las prácticas ágiles actuales sobrevaloran la velocidad de desarrollo de funciones, descuidando el trabajo subyacente de mantenimiento y arquitectura del sistema. Las herramientas de generación de código de IA sobresalen en la producción rápida de funciones de nivel superficial, pero fallan en abordar problemas de arquitectura subyacentes. Esto es similar a construir una casa concentrándose solo en la decoración, ignorando los cimientos, lo que finalmente lleva al colapso del sistema. El autor exhorta a los líderes empresariales a valorar el trabajo subyacente de la ingeniería, evitar sacrificar la estabilidad a largo plazo por ganancias a corto plazo y sugiere aprender métodos de contabilidad técnica para comprender y gestionar mejor los equipos de ingeniería.

Desarrollo

Mejores prácticas para escribir Makefiles GNU robustos

2025-06-20

Esta guía completa describe las mejores prácticas para crear Makefiles GNU eficientes, fáciles de mantener y portátiles. Cubre la estructura de Makefile, el uso de variables, las definiciones de reglas y objetivos y las estrategias para manejar proyectos grandes y compilaciones paralelas. La guía enfatiza el uso de variables automáticas, la prevención de errores comunes y proporciona técnicas para manejar varios escenarios, como tareas de limpieza, administración de dependencias y procesamiento de varios archivos. El objetivo final es capacitar a los desarrolladores para escribir Makefiles limpios, comprensibles y fáciles de mantener, aumentando así la eficiencia del desarrollo.

Desarrollo

La Revolución Wayland: Accesibilidad en el Futuro del Escritorio Linux

2025-06-20

Con la desaparición inminente de X11, Wayland está a punto de convertirse en el futuro del escritorio Linux. Esto representa un desafío significativo para los usuarios con discapacidades que dependen de tecnologías de asistencia, ya que las implementaciones iniciales de Wayland presentaban graves problemas de accesibilidad. Sin embargo, la situación está mejorando. GNOME está mejorando activamente el soporte de accesibilidad de Wayland, y los lectores de pantalla como Orca se están volviendo más receptivos. Si bien aún existen desafíos, como la insuficiencia de soporte para GUI sin cabeza y problemas de compatibilidad del compositor, los desarrolladores están trabajando para solucionarlos y construir un ecosistema Wayland más accesible. Esta publicación hace un llamamiento a un esfuerzo colaborativo de desarrolladores y la comunidad para garantizar que el futuro de Wayland no deje atrás a los usuarios con discapacidades.

Desarrollo

Compilaciones Rápidas en Rust: Secretos para un CI Inferior a 10 Minutos

2025-06-20

Es una queja común que Rust compile lentamente, pero el autor argumenta que la mayoría de los proyectos Rust compilan mucho más lentamente de lo que deberían. Usando rust-analyzer (200.000 líneas de código más un millón de líneas de dependencias) como ejemplo, lograron un pipeline de CI de 8 minutos en GitHub Actions. El artículo detalla estrategias para optimizar los tiempos de compilación, incluyendo el aprovechamiento del caché de CI, la división de tareas de CI, la desactivación de la compilación incremental y la información de depuración, la reducción de dependencias, la utilización de `cargo build -Z timings` para el análisis de rendimiento y la arquitectura cuidadosa del código para evitar la instanciación excesiva de genéricos en los límites de crate. El autor destaca el impacto del tiempo de compilación en la productividad del desarrollador y recomienda optimizar regularmente los tiempos de compilación para mantener los tiempos de CI para grandes proyectos Rust en un rango razonable, por ejemplo, alrededor de 10 minutos.

JavaScript: El progreso que rompió la web

2025-06-20
JavaScript: El progreso que rompió la web

Este artículo critica el uso excesivo de frameworks JavaScript en el desarrollo web moderno. El autor argumenta que la búsqueda de experiencias similares a las aplicaciones nativas ha llevado a los desarrolladores a emplear frameworks y herramientas excesivamente complejos, lo que resulta en tiempos de carga lentos, mantenimiento difícil y una experiencia de usuario y SEO deteriorados. Muchas funcionalidades de los sitios web, afirma el artículo, podrían lograrse con código más simple, mientras que las arquitecturas excesivamente complejas reducen la eficiencia. El autor hace un llamamiento para volver a la simplicidad, priorizando la experiencia del usuario y el rendimiento sobre el exhibicionismo técnico.

Desarrollo

Conquistando Makefiles: Una Guía Completa

2025-06-20

Esta guía desmitifica los Makefiles, abordando su sintaxis a menudo confusa y reglas ocultas. Comienza con lo básico, progresando a través de la sintaxis, variables, funciones y técnicas avanzadas, todo ilustrado con ejemplos ejecutables. La guía culmina en una plantilla práctica de Makefile para proyectos de tamaño medio, convirtiéndose en un recurso valioso para desarrolladores de todos los niveles.

Desarrollo
1 2 55 56 57 59 61 62 63 214 215