Category: Desarrollo

Ataque de Exfiltración de Tokens PyPI a través de Workflows de GitHub Actions

2025-09-20
Ataque de Exfiltración de Tokens PyPI a través de Workflows de GitHub Actions

Una reciente campaña de ataque se dirigió a los workflows de GitHub Actions para robar tokens de publicación de PyPI. Los atacantes modificaron workflows en varios repositorios, enviando tokens de PyPI almacenados como secretos de GitHub a servidores externos. Si bien algunos tokens fueron exfiltrados, no se utilizaron en PyPI. Todos los tokens afectados se han invalidado y se ha notificado a los mantenedores afectados. Se recomienda usar los Trusted Publishers de GitHub Actions para mitigar ataques futuros.

Desarrollo Brecha de Seguridad

MapSCII: Explora el Mundo en tu Terminal

2025-09-20
MapSCII: Explora el Mundo en tu Terminal

MapSCII es un renderizador de teselas vectoriales basado en Node.js que muestra mapas en caracteres Braille y ASCII en terminales compatibles con xterm. Incluye funciones como arrastrar y ampliar con el ratón, estilo de capa personalizable (compatible con Mapbox Styles), conexión a servidores de teselas vectoriales públicos o privados y uso sin conexión con VectorTile/MBTiles locales. La instalación es sencilla, compatible con varios sistemas operativos y terminales. Algoritmos altamente optimizados garantizan una experiencia fluida. Es de código abierto, gratuito y utiliza datos de OpenStreetMap bajo las licencias ODbL y CC BY-SA.

Desarrollo

Cifrado de Grito: Un Uso Novedoso de Caracteres Unicode

2025-09-20
Cifrado de Grito: Un Uso Novedoso de Caracteres Unicode

Este artículo presenta un divertido algoritmo criptográfico: el "Cifrado de Grito", que aprovecha las numerosas variaciones del carácter Unicode 'A' para cifrar texto. Un simple mapeo de diccionario sustituye las letras estándar por diferentes caracteres 'A' para el cifrado y descifrado. El código Python demuestra la implementación del algoritmo, cifrando y descifrando con éxito el texto de ejemplo "SCREAM CIPHER". Esto muestra la riqueza del conjunto de caracteres Unicode, ofreciendo un método de cifrado único, aunque simple.

Desarrollo

Asistentes de codificación con IA: la revisión de código es clave

2025-09-20

Los modelos de lenguaje grandes son excelentes para generar código, pero carecen del juicio de un ingeniero de software experimentado, lo que a menudo lleva a malas decisiones de diseño. El autor utiliza anécdotas personales para ilustrar cómo los asistentes de codificación con IA (como Codex y Claude Code), aunque potentes, requieren una supervisión cercana para evitar que se desvíen hacia callejones sin salida arquitectónicos. El autor argumenta que dominar la revisión de código, particularmente centrándose en la estructura del código e identificando oportunidades de mejora, es crucial para el uso eficaz de estas herramientas. La dependencia ciega o la microgestión excesiva perjudicarán la productividad. En última instancia, el autor afirma que la codificación con IA actual es más similar a la 'programación centauro' —una colaboración entre humanos y máquinas— que a una sustitución completa de los humanos.

Desarrollo

XMonad Busca Desarrollador para Puerto Wayland

2025-09-20

El equipo de desarrollo de XMonad ha estado recopilando contribuciones durante dos años para financiar a un desarrollador que porte XMonad a Wayland. Ahora tienen fondos suficientes, pero les falta un desarrollador adecuado. El puerto existente está muy deteriorado, usando una versión antigua y con errores de wlroots. Un desafío clave es que los programas Wayland carecen de identificadores únicos para los ganchos de administración de ventanas. El equipo está buscando ayuda en su foro Discourse, recibiendo propuestas de desarrolladores interesados.

RMCP: Revolucionando el análisis estadístico con lenguaje natural

2025-09-20
RMCP: Revolucionando el análisis estadístico con lenguaje natural

RMCP es un potente servidor de Protocolo de Contexto de Modelo (MCP) que ofrece más de 40 herramientas de análisis estadístico que abarcan la regresión, el análisis de series temporales, el aprendizaje automático y más. Los usuarios interactúan a través del lenguaje natural con asistentes de IA para realizar sin problemas tareas complejas de modelado estadístico y ciencia de datos. RMCP admite varios formatos de importación y exportación de datos, incluye recuperación inteligente de errores y simplifica significativamente el flujo de trabajo de análisis. Su constructor de fórmulas de lenguaje natural integrado convierte descripciones en lenguaje natural en fórmulas R, proporcionando visualizaciones. Desde analistas de negocios y economistas hasta científicos de datos, RMCP mejora drásticamente la eficiencia.

Desarrollo

arXivLabs: Creando nuevas funciones de arXiv con la colaboración de la comunidad

2025-09-20
arXivLabs: Creando nuevas funciones de arXiv con la colaboración de la comunidad

arXivLabs es un marco que permite a los desarrolladores colaborar y compartir nuevas funciones de arXiv directamente en el sitio web de arXiv. Los participantes deben adherirse a los valores de arXiv de apertura, comunidad, excelencia y privacidad de los datos del usuario. ¿Tiene una idea para mejorar la comunidad de arXiv? ¡Aprenda más sobre arXivLabs!

Desarrollo

Archy: Un editor de texto programable inspirado en THE

2025-09-20
Archy: Un editor de texto programable inspirado en THE

Archy es un potente editor de texto donde los comandos no están predefinidos, sino que son scripts de Python definidos por el usuario. Esto permite una flexibilidad increíble; los usuarios pueden crear comandos personalizados para realizar acciones como búsquedas en la web (comando GOOGLE) o enviar correos electrónicos (comando EMAIL). A diferencia de THE, los comandos de Archy existen como documentos dentro del espacio de trabajo, editables y modificables sobre la marcha sin necesidad de reiniciar. Archy también cuenta con control de versiones, guardando versiones del espacio de trabajo para facilitar la reversión. El artículo muestra cómo crear y ejecutar comandos personalizados, explorando la filosofía de diseño de Archy y sus posibles aplicaciones en plataformas modernas. El autor lamenta la falta de enfoques similares en los sistemas modernos, cada vez más cerrados.

Desarrollo programable

Cuatro maneras de encontrar el argmin de flotantes en Rust (y su rendimiento)

2025-09-20

Este artículo explora cuatro métodos para encontrar rápidamente el índice del valor mínimo en una gran matriz de números de punto flotante en Rust. El primer método usa `min_by` y `total_cmp`, tardando 511 microsegundos; el segundo usa `reduce`, tardando 489 microsegundos; el tercero usa `partial_cmp`, tardando 470 microsegundos; y el cuarto aprovecha la representación de bits de los flotantes positivos, convirtiéndolos a `u32` para la comparación, tardando solo 370 microsegundos, una aceleración del 30%. El cuarto método resulta más eficiente para matrices que contienen solo números positivos, explotando inteligentemente la representación interna de los flotantes para evitar comparaciones complejas.

Desarrollo

Compilando con Continuaciones: Una retrospectiva y revisión

2025-09-20

Esta reseña revisa el libro de Appel de 1992, "Compiling with Continuations". El autor profundiza en la explicación detallada del libro sobre las técnicas de compilación utilizando continuaciones, cubriendo temas como el lenguaje MiniML, el análisis léxico, el análisis sintáctico, el lenguaje CPS, la conversión de cierres, el desbordamiento de registros y la máquina virtual. A pesar de la falta de ejercicios y de mostrar su edad en algunos aspectos, el libro ofrece información valiosa sobre Standard ML y el estilo de paso de continuación, particularmente para quienes estudian el diseño de compiladores y la programación funcional. Sin embargo, las ambigüedades en los detalles de implementación y la falta de discusión sobre las tecnologías modernas de compiladores hacen que la lectura sea desafiante.

Desarrollo continuaciones

C0: Una caché de lectura de alto rendimiento para almacenamiento de objetos

2025-09-20
C0: Una caché de lectura de alto rendimiento para almacenamiento de objetos

C0 es una API HTTP de alto rendimiento diseñada para almacenar en caché blobs inmutables en el almacenamiento de objetos. Utiliza una caché híbrida de memoria y disco (alimentada por foyer) y funciona con cualquier backend compatible con S3, pero utiliza su propia API /fetch que requiere un encabezado Range preciso. Con un tamaño de página fijo de 16 MiB, C0 mapea los rangos de bytes solicitados a búsquedas alineadas con la página, combina las solicitudes concurrentes para la misma página y utiliza solicitudes protegidas para gestionar la latencia de cola del almacenamiento de objetos. Incluso puede intentar buckets redundantes. C0 ofrece amplias opciones de configuración, que incluyen configuraciones de tiempo de espera, mecanismos de reintento y priorización de buckets, y proporciona supervisión del rendimiento a través de los puntos finales /stats y /metrics. Las imágenes de Docker están disponibles.

Desarrollo

Comprobaciones de dependencias inversas de CRAN: Un enfoque único para el mantenimiento de software

2025-09-20
Comprobaciones de dependencias inversas de CRAN: Un enfoque único para el mantenimiento de software

Un experimentado ingeniero de software, inicialmente desconcertado por el gestor de paquetes R, CRAN, y sus comprobaciones de dependencias inversas, comparte su experiencia. A diferencia de npm o PyPI, CRAN comprueba todos los paquetes que dependen de un paquete enviado antes de su publicación. El autor relata cómo el enfoque de CRAN afecta al mantenimiento de software, destacando su contribución a la estabilidad del ecosistema R. Esta experiencia finalmente cambió la perspectiva del autor sobre el mantenimiento de software, llevando a una comprensión de la 'mentalidad de monorepositorio': los desarrolladores asumen la responsabilidad de todos los proyectos que dependen de su código.

Desarrollo

Seguridad de la cadena de suministro de Obsidian: Un enfoque cauteloso

2025-09-20
Seguridad de la cadena de suministro de Obsidian: Un enfoque cauteloso

Obsidian, una aplicación para tomar notas, emplea una estrategia de seguridad rigurosa para mitigar los ataques a la cadena de suministro. Esto implica minimizar las dependencias de terceros, fijar estrictamente la versión de todas las dependencias con un archivo de bloqueo y un proceso de actualización minucioso (incluidas las revisiones línea por línea del registro de cambios y pruebas exhaustivas), evitar los scripts postinstalación e implementar un retraso significativo entre las actualizaciones de dependencias y los lanzamientos para permitir tiempo para que la comunidad e investigadores detecten versiones maliciosas. Estas medidas reducen significativamente la vulnerabilidad de Obsidian a los ataques a la cadena de suministro, garantizando la seguridad y la privacidad de los datos del usuario.

Desarrollo

Zedis: Un almacén de datos en memoria compatible con Redis en Zig

2025-09-19
Zedis: Un almacén de datos en memoria compatible con Redis en Zig

Zedis es un almacén de datos en memoria compatible con Redis escrito en Zig, diseñado para el aprendizaje y la experimentación. Implementa el protocolo Redis principal y las estructuras de datos, centrándose en la simplicidad, el rendimiento y la seguridad de subprocesos. Admite comandos Redis esenciales (GET, SET, INCR, etc.), varios tipos de datos y persistencia en disco (RDB), con pub/sub agregado recientemente. Zedis es fácil de construir y usar, con una base de código que sigue las convenciones de Zig, que presenta operaciones seguras para tipos, manejo explícito de errores y registros exhaustivos.

HDR y Tone Mapping en Shaders de GameMaker

2025-09-19
HDR y Tone Mapping en Shaders de GameMaker

Este artículo profundiza en el manejo de colores de alto rango dinámico (HDR) en shaders de GameMaker. El formato de color predeterminado de GameMaker, 8-bit unorm, puede provocar recorte de colores e imprecisiones al trabajar con escenarios de alta luminosidad, como shaders de sol. El autor demuestra los problemas comparando colores de 6 bits y de punto flotante y muestra varias funciones comunes de tone mapping (ACES, Uncharted2, Unreal y tanh) para mitigar artefactos de recorte de color. Usando el proyecto MandelBots como ejemplo, el artículo destaca la necesidad de usar superficies HDR (surface_rgba16float) en sistemas de iluminación complejos para una mejor precisión y mezcla de colores.

Desarrollo

El Enigma del Tiempo Dedicado al Manejo de Errores en el Desarrollo de Software

2025-09-19

Un ingeniero de software lucha por encontrar investigaciones que cuantifiquen el tiempo que los desarrolladores dedican al código de detección y manejo de errores. Si bien se cree ampliamente que esto constituye una parte significativa, quizás superando los dos tercios del código de producción, faltan datos confiables. Esto contrasta con la cuantificación precisa de varias métricas en la investigación actual de IA, destacando una brecha en la comprensión de aspectos fundamentales de la ingeniería de software.

RFC: El kernel de Linux gana soporte para arquitectura multikernel

2025-09-19

Cong Wang envió una serie de parches RFC que introducen soporte para arquitectura multikernel en el kernel de Linux. Esto permite que múltiples instancias independientes del kernel coexistan y se comuniquen en una sola máquina física, cada una ejecutándose en núcleos de CPU dedicados mientras comparten recursos de hardware. Esto mejora el aislamiento de fallos, aumenta la seguridad, ofrece una mejor utilización de recursos que las máquinas virtuales tradicionales y potencialmente permite actualizaciones del kernel con tiempo de inactividad cero. La implementación aprovecha la infraestructura kexec y un marco IPI dedicado para la comunicación entre núcleos. Este es un RFC básico, que busca principalmente comentarios sobre el diseño de alto nivel.

Desarrollo

Los Muchos Feeds Rotos: Una Saga de Más de 700 Suscripciones

2025-09-19

Manteniendo más de 700 feeds RSS/Atom, el autor detalla las diversas maneras en que estas corrientes de información cruciales pueden romperse. Desde certificados SSL caducados y tiempos de espera del servidor hasta firewalls mal configurados, interrupciones del servidor, URLs de feed cambiadas, errores de análisis, eliminación de feed y eliminación de sitios web, la publicación proporciona una lista completa de problemas comunes. Las soluciones incluyen la renovación automática de SSL, la optimización del rendimiento del servidor, los ajustes de las reglas del firewall, la supervisión del sitio web, la redirección adecuada de URL y la validación regular del feed. Se hace un llamamiento apasionado para mantener vivo el RSS.

Desarrollo

¿La muerte del desarrollador curioso?

2025-09-19
¿La muerte del desarrollador curioso?

Este artículo lamenta un cambio en la cultura del desarrollo. Anteriormente impulsada por la curiosidad y la pasión por aprender, dando lugar a innovaciones como Linux y Git, los desarrolladores ahora priorizan cada vez más las métricas, los ingresos y la escala. Esto a menudo los obliga a utilizar tecnologías que no les gustan y a construir productos que no les importan. El autor argumenta que este cambio sofoca la innovación y la creatividad, instando a los desarrolladores a redescubrir su curiosidad y pasión por la creación, incluso si solo es para resolver sus propios problemas. El artículo enfatiza la importancia de construir por el placer de hacerlo, incluso si el proyecto no es comercialmente viable.

La Ley de Datos de la UE Acaba con los Ingresos Recurrentes Anuales (ARR) en SaaS

2025-09-19
La Ley de Datos de la UE Acaba con los Ingresos Recurrentes Anuales (ARR) en SaaS

La Ley de Datos de la UE, efectiva a partir de septiembre de 2025, altera drásticamente el panorama del SaaS en Europa. Establece que todos los contratos de SaaS con clientes de la UE se convertirán en suscripciones "cancelables en cualquier momento", con solo dos meses de preaviso. Esto termina con la dependencia de los Ingresos Recurrentes Anuales (ARR) como métrica predecible. Las empresas de SaaS deben adaptarse, centrándose en modelos de precios, estrategias de retención de clientes y mitigando la rotación involuntaria debido a descuidos del cliente. El éxito dependerá de una gestión sólida de la relación con el cliente y de la resiliencia operativa, no de los términos contractuales.

Google refuerza la verificación de desarrolladores de Android: la carga lateral sin conexión podría estar restringida

2025-09-19
Google refuerza la verificación de desarrolladores de Android: la carga lateral sin conexión podría estar restringida

Google está reforzando su sistema de verificación de desarrolladores de Android, exigiendo que los desarrolladores registren sus identidades e impidiendo la instalación de aplicaciones no verificadas. Si bien existen soluciones alternativas, como ADB, un código reciente del SDK de Android sugiere que incluso las aplicaciones verificadas podrían no ser instalables sin conexión. Esto significa que incluso las aplicaciones seguras podrían bloquearse de la instalación sin una conexión de red, lo que podría causar inconvenientes a algunos usuarios. La política se implementará en un año, dejando tiempo para refinar los detalles y encontrar soluciones.

Desarrollo Carga Lateral

99 Impresionantes Demostraciones de Física: Un Recurso de Enseñanza de Código Abierto

2025-09-19

Este libro de código abierto recopila 99 de las mejores y más bellas demostraciones de física de la serie holandesa "ShowdeFysica", incorporando varias estrategias de enseñanza para hacer las demostraciones mágicas y educativas. Incluye videos y simulaciones Python fáciles de ejecutar sin necesidad de ninguna instalación de software. Los lectores pueden buscar demostraciones por tema y contribuir con sugerencias a través de la plataforma en línea.

Dynamo AI Contrata Ingeniero Senior de Kubernetes para Implementaciones de IA Empresarial

2025-09-19
Dynamo AI Contrata Ingeniero Senior de Kubernetes para Implementaciones de IA Empresarial

Dynamo AI busca un Ingeniero Senior de Kubernetes para liderar a los clientes empresariales en todo el proceso, desde el primer contacto hasta la implementación exitosa en producción. Este puesto práctico y orientado al cliente implica la implementación de sistemas de IA seguros y escalables utilizando Kubernetes, Helm y herramientas nativas de la nube. El candidato ideal tendrá una amplia experiencia en Kubernetes y plataformas en la nube, excelentes habilidades de comunicación y autorización de seguridad del gobierno de EE. UU. o ciudadanía estadounidense. Se requiere una presencia en la oficina en San Francisco o Nueva York de 2 a 3 días por semana.

Desarrollo

Compilación JIT para una Máquina de Pila con SLJIT: Una Historia de Optimización

2025-09-19

Esta publicación detalla el viaje del autor al implementar un compilador JIT para su máquina virtual uxn basada en pila utilizando SLJIT. Los intentos iniciales produjeron ganancias de rendimiento mínimas debido a los frecuentes saltos dinámicos de uxn. Sin embargo, a través de una serie de optimizaciones, incluidas convenciones de llamada refinadas, almacenamiento en caché de pila y estrategias de asignación de registros, se logró una aceleración del 30-46%. El artículo documenta meticulosamente el proceso de optimización, los desafíos encontrados y las técnicas de depuración, proporcionando información valiosa para aquellos interesados en la compilación JIT y la optimización de máquinas virtuales basadas en pila.

Desarrollo Máquina de Pila

Deno lucha contra la marca registrada JavaScript de Oracle: Fase de descubrimiento crucial

2025-09-19
Deno lucha contra la marca registrada JavaScript de Oracle: Fase de descubrimiento crucial

Deno, un entorno de ejecución de JavaScript, está luchando contra Oracle por la marca registrada "JavaScript". Después de presentar una solicitud de cancelación tras una carta abierta ampliamente firmada, han llegado a la fase crucial de descubrimiento. Ante un litigio costoso, Deno lanzó una campaña GoFundMe para financiar encuestas profesionales, testigos expertos y presentaciones legales para demostrar que "JavaScript" es un término genérico, no una marca de Oracle. El resultado determinará si las marcas registradas pueden usarse para reclamar la propiedad de términos genéricos e impactar el futuro del desarrollo de código abierto.

Desarrollo

Navegador integrado de iTerm2: Terminal se une a la web

2025-09-19

iTerm2 ahora cuenta con un navegador web integrado, que integra perfectamente la navegación web en su arquitectura existente de ventanas, pestañas y paneles divididos. Los usuarios pueden trabajar en la terminal y navegar por la web simultáneamente en la misma interfaz. Admite varios atajos de teclado, como Cmd + clic para abrir enlaces en nuevas pestañas y Cmd + Shift + clic para nuevos paneles divididos verticales. La integración de chat con IA permite resumir, analizar o hacer preguntas sobre la página actual. Las funciones de privacidad incluyen modo incógnito, bloqueo de ventanas emergentes y bloqueo de anuncios. Si bien no pretende reemplazar a un navegador principal, es una herramienta poderosa para flujos de trabajo integrados de terminal y web.

Desarrollo navegador integrado

Desacoplar la asignación de tiempo de la asignación de capacidad: La clave para mejorar la eficiencia del equipo

2025-09-19
Desacoplar la asignación de tiempo de la asignación de capacidad: La clave para mejorar la eficiencia del equipo

Este artículo explora los conceptos erróneos en torno a la asignación de capacidad del equipo. Muchas empresas equiparan la asignación de tiempo con la asignación de capacidad, pasando por alto factores sistémicos que afectan las capacidades del equipo. El autor señala que la capacidad no es simplemente la suma de las horas trabajadas, sino que abarca las habilidades del equipo, las herramientas, los procesos y mucho más. Centrarse únicamente en la asignación de tiempo mientras se ignora la optimización del sistema conduce a la ineficiencia. El autor recomienda distinguir entre 'asignación de tiempo' (dónde el equipo dedica sus horas) y 'asignación de capacidad' (la verdadera capacidad del equipo para entregar resultados), considerando varios factores disruptivos, para mejorar la eficiencia del equipo.

LLaMA-Factory: Un marco unificado para el ajuste fino eficiente de más de 100 LLM

2025-09-19
LLaMA-Factory: Un marco unificado para el ajuste fino eficiente de más de 100 LLM

LLaMA-Factory es un framework de código abierto que permite el ajuste fino eficiente de más de 100 modelos de lenguaje grandes (LLM), incluyendo LLaMA, LLaVA y Mistral. Integra varios métodos de ajuste fino (como LoRA, QLoRA y OFT), ofrece recursos escalables y algoritmos avanzados, y cubre una amplia gama de tareas como el diálogo de varias vueltas y la comprensión de imágenes. LLaMA-Factory también admite varias técnicas de aceleración de inferencia y proporciona una interfaz y API fáciles de usar. Constantemente actualizado con soporte para los modelos y técnicas más recientes, LLaMA-Factory tiene como objetivo proporcionar a los desarrolladores una herramienta conveniente y eficiente para el ajuste fino de LLM.

Rust para Linux: Nuevo tipo 'Untrusted' refuerza la seguridad del kernel

2025-09-19

El kernel de Linux se enfrenta a amenazas de seguridad de diversas fuentes de datos no confiables, incluyendo el espacio de usuario, redes y almacenamiento extraíble. Para mejorar la seguridad, Benno Lossin propone una nueva API de Rust que introduce el tipo `Untrusted` para marcar datos provenientes de fuentes no confiables. Aprovechando el sistema de tipos de Rust, esto evita decisiones accidentales basadas en datos no validados del espacio de usuario, mitigando posibles ataques. La API, ahora en su cuarta revisión, incluye funciones de utilidad y soporte para estructuras de datos comunes, como slices y vectores. Su uso futuro en funciones `ioctl()` de controladores promete una mayor seguridad del kernel, con debates adicionales esperados en la próxima conferencia Kangrejos sobre el proyecto Rust para Linux.

Desbloqueo remoto de FileVault en macOS mediante SSH

2025-09-19

Con FileVault activado en macOS, el volumen de datos está bloqueado e inaccesible durante y después del arranque hasta la autenticación con contraseña. Como los archivos de configuración de OpenSSH residen en el volumen de datos, la autenticación SSH estándar no está disponible. Sin embargo, con el inicio de sesión remoto activado, la autenticación mediante contraseña SSH puede desbloquear el volumen de datos de forma remota. Después del desbloqueo, macOS desconecta brevemente SSH para montar el volumen e iniciar los servicios dependientes, tras lo cual SSH se restaura completamente. Esta capacidad apareció en macOS 26 Tahoe.

Desarrollo
1 2 3 5 7 8 9 214 215