Category: Desarrollo

LangExtract: Una biblioteca de extracción de información estructurada basada en LLM

2025-08-03
LangExtract: Una biblioteca de extracción de información estructurada basada en LLM

LangExtract es una potente biblioteca de Python que utiliza modelos de lenguaje grandes (LLM) para extraer información estructurada de documentos de texto no estructurados. Procesa materiales como notas y reportes clínicos, identificando y organizando detalles clave con precisión, asegurando que los datos extraídos coincidan perfectamente con el texto original. Admite varios LLM, incluyendo Google Gemini, y cuenta con funciones de procesamiento de documentos largos y visualización interactiva. Con pocas líneas de código, simplifica tareas complejas de extracción de información, revolucionando los flujos de trabajo de procesamiento de datos.

Mezzano OS: Un sistema operativo escrito en Common Lisp alcanza hitos importantes

2025-08-03
Mezzano OS: Un sistema operativo escrito en Common Lisp alcanza hitos importantes

Mezzano, un sistema operativo escrito en Common Lisp, ha lanzado su última demostración, mostrando avances significativos. Desde su lanzamiento inicial, Mezzano ha experimentado mejoras dramáticas en estabilidad, rendimiento y características, incluyendo soporte para sistemas de archivos EXT2/3/4, una pila USB, soporte 3D con aceleración por hardware a través de Virgl y soporte multinúcleo. Si bien la ejecución en hardware arbitrario aún requiere intervención del usuario, el proyecto demuestra una innovación impresionante en la comunidad de Common Lisp.

Desarrollo

Nuevas APIs de HTML Canvas para renderizar contenido HTML

2025-08-03
Nuevas APIs de HTML Canvas para renderizar contenido HTML

Una nueva propuesta introduce APIs para renderizar contenido HTML en los contextos HTML Canvas 2D y WebGL. Esto aborda las limitaciones existentes en Canvas para manejar diseños complejos, accesibilidad, internacionalización y rendimiento. Las nuevas APIs, incluyendo `layoutsubtree`, `drawElement`, `texElement2D` y `setHitTestRegions`, permiten a los desarrolladores renderizar elementos HTML y sus subárboles en el canvas y gestionar las pruebas de acierto. La propuesta está actualmente en desarrollo y hay una prueba disponible para desarrolladores.

Formalizando el Último Teorema de Fermat en Lean: Un Proyecto de Código Abierto

2025-08-03
Formalizando el Último Teorema de Fermat en Lean: Un Proyecto de Código Abierto

Un ambicioso proyecto de código abierto tiene como objetivo probar formalmente el Último Teorema de Fermat utilizando el probador de teoremas Lean. Liderado por Kevin Buzzard y financiado por la EPSRC, con sede en el Imperial College London, el proyecto emplea una variante moderna de la prueba original de Wiles/Taylor-Wiles, planificada en colaboración con Richard Taylor. El sitio web del proyecto proporciona detalles sobre el Último Teorema de Fermat, el probador Lean, los objetivos del proyecto y las pautas de contribución.

Desarrollo

PixiEditor 2.0: Un editor 2D universal, gratuito y de código abierto

2025-08-03
PixiEditor 2.0: Un editor 2D universal, gratuito y de código abierto

PixiEditor 2.0 trasciende sus raíces de pixel art, evolucionando hacia un potente editor 2D universal que admite ráster, vector, animación y efectos procedurales. Su núcleo es una canalización de renderizado configurable y un gráfico de nodos, que proporciona un control sin precedentes y permite la creación de espacios de trabajo de texturizado 3D. El software sigue siendo gratuito y de código abierto, mantenido mediante extensiones de pago y paquetes de activos. La versión 2.0 introduce animación fotograma a fotograma, herramientas de edición vectorial y varios espacios de trabajo, como un constructor de cartas y una herramienta de texturizado de cubo 3D, junto con varias paletas. Si bien los requisitos de hardware son ligeramente más altos, los desarrolladores están comprometidos a mejorar el soporte para una gama más amplia de configuraciones.

Desarrollo

Seed7: Un lenguaje de programación general extensible

2025-08-03

Seed7 es un lenguaje de programación de propósito general diseñado por Thomas Mertes, superando a Ada, C/C++ y Java en sus características de alto nivel. Admite declaraciones y operadores definidos por el usuario, trata los tipos como ciudadanos de primera clase y ofrece definiciones elegantes de plantillas y genéricos. Combinando conceptos de Pascal, Ada, C, C++ y Java, Seed7 cuenta con características orientadas a objetos, interfaces, despacho múltiple, verificación de tipos estática, gestión automática de memoria (sin recolección de basura), gestión de excepciones y depuración de código fuente. Ofrece tipos de números enteros grandes y racionales, sobrecarga de funciones/operadores y un rico conjunto de tipos predefinidos (matrices, tablas hash, conjuntos, etc.). Los programas Seed7 son altamente portables, y ofrece una API independiente de la base de datos, compatible con varias bases de datos. Seed7 se ejecuta en Linux, Unix y Windows; su intérprete y ejemplos están bajo licencia GPL, mientras que la biblioteca de tiempo de ejecución utiliza la licencia LGPL.

Desarrollo

Generando diagramas UML en tiempo de compilación con reflexiones C++26

2025-08-03

Este artículo demuestra cómo aprovechar las nuevas características de reflexión en C++26 para generar diagramas de clases PlantUML en tiempo de compilación. El autor combina inteligentemente `std::meta::info`, los operadores `lift` y `splice`, y `std::define_static_string` para extraer automáticamente información de clases del código y generar un diagrama UML. El proceso también analiza el uso de `std::meta::access_context` y cómo manejar diferentes tipos de información de reflexión, produciendo finalmente el código UML generado en tiempo de ejecución. Esto muestra el poder de las reflexiones de C++26, ofreciendo nuevas posibilidades para el análisis y la visualización de código.

Desarrollo Reflexiones

IOCCC 28: ¡23 ganadores alucinantes!

2025-08-03

Después de un paréntesis de cuatro años, el 28º Concurso Internacional de Código Ofuscado C (IOCCC) ha regresado con fuerza. Este año se recibieron un número récord de envíos de alta calidad, resultando en 23 ganadores, un nuevo récord. Las entradas ganadoras mostraron una creatividad increíble, incluyendo un pequeño motor de inferencia LLM, un peculiar editor UTF-8 e incluso un programa que emula el procesador Intel 4004. El concurso resaltó la notable habilidad de los programadores C en el arte de la ofuscación de código.

Desarrollo

Comprimiendo patrones de declinación de nombres islandeses en una trie de 3,27 kB

2025-08-02
Comprimiendo patrones de declinación de nombres islandeses en una trie de 3,27 kB

Mostrar nombres islandeses en interfaces de usuario es sorprendentemente difícil debido a la declinación. Este artículo detalla una biblioteca JavaScript que resuelve este problema utilizando una estructura de datos trie. La trie se construye a partir de datos públicos de nombres islandeses y se comprime de forma inteligente para menos de 4,5 kB comprimidos. El autor explica el proceso, desde la adquisición y preprocesamiento de datos hasta la construcción y técnicas de compresión de trie, como la fusión de subárboles y hojas hermanas. Las pruebas revelan una alta precisión incluso para nombres no vistos. El resultado final es una trie notablemente compacta de 3,27 kB, mostrando una representación de datos eficiente y optimización algorítmica.

Desarrollo islandés

Club de Libros por Correo Electrónico de Internos de Software: El Arte de la Programación Multiprocesador

2025-08-02

El Club de Libros por Correo Electrónico de Internos de Software está comenzando un nuevo libro: "El Arte de la Programación Multiprocesador", 2ª edición (2020). Las discusiones se llevarán a cabo semanalmente a través de un Grupo de Google, con cada miembro turnándose para iniciar un hilo de discusión. Los participantes deben leer un capítulo antes de la fecha de su discusión y compartir ideas y experiencias personales. Sin videollamadas; la comunicación es puramente basada en texto a través del correo electrónico. Regístrate a través del formulario proporcionado.

Desarrollo club de lectura

Microsoft abrirá WinUI gradualmente: hoja de ruta de seis meses

2025-08-02
Microsoft abrirá WinUI gradualmente: hoja de ruta de seis meses

Microsoft anunció un enfoque gradual para la apertura del código fuente de WinUI, el framework de interfaz de usuario de Windows 11. Debido a la complejidad de WinUI y su profunda integración con Windows, la apertura del código fuente no será un simple cambio de interruptor. Microsoft planea un lanzamiento en cuatro fases: La Fase 1 aumenta la frecuencia de reflejo de GitHub; la Fase 2 permite a los desarrolladores externos compilar localmente; la Fase 3 permite contribuciones y pruebas externas; y la Fase 4 establece GitHub como la plataforma de desarrollo principal. Este será un proceso incremental, y Microsoft anima a los desarrolladores a proporcionar comentarios y contribuciones.

Desarrollo

La Ilusión de la 'Fuente de la Verdad' en el Desarrollo de Productos

2025-08-02
La Ilusión de la 'Fuente de la Verdad' en el Desarrollo de Productos

El problema común de la 'única fuente de verdad' en el desarrollo de productos a menudo falla. Asume que todos quieren la verdad, están de acuerdo en qué es esa verdad y están dispuestos a trabajar para lograr la coherencia. Este artículo utiliza el ejemplo de un equipo que equilibra iniciativas, lanzamientos y varios marcos de asignación para ilustrar la complejidad inherente. Forzar la estandarización perjudica la eficiencia, mientras que abrazar la complejidad total lleva a la sobrecarga cognitiva. La clave es encontrar un equilibrio, reconocer los matices y evitar la supresión de la realidad para lograr una mayor eficacia operativa. El autor cuestiona cómo las herramientas y los sistemas organizacionales reflejan las dinámicas de poder y cuyas preferencias dominan.

Desarrollo fuente de la verdad

Actualización de Ladybird en Julio: Soporte para HTTP/3, Alta Tasa de Refresco y Más

2025-08-02
Actualización de Ladybird en Julio: Soporte para HTTP/3, Alta Tasa de Refresco y Más

El motor de navegador de código abierto Ladybird logró avances significativos en julio, fusionando 319 solicitudes de extracción de 47 contribuyentes. Los aspectos más destacados incluyen: soporte para HTTP/3, rendimiento de renderizado mejorado en pantallas con alta frecuencia de actualización, una corrección para la compatibilidad con Google reCAPTCHA y soporte agregado para Trusted Types, manejo mejorado de SVG foreignObject y varias mejoras de CSS, como `content: url(...)`, nuevas pseudo-clases y grupos de propiedades lógicas. Las mejoras internas incluyen el cambio a cadenas UTF-16 nativas para una mayor eficiencia y menos errores relacionados con la codificación.

Desarrollo

TraceRoot: Depuración de producción 10 veces más rápida con IA

2025-08-02
TraceRoot: Depuración de producción 10 veces más rápida con IA

TraceRoot es una plataforma de depuración de código abierto que acelera la resolución de problemas de producción 10 veces. Combina rastreos estructurados, registros y contexto de código fuente con análisis impulsado por IA. Construida sobre una arquitectura de sistema multiagente, permite el rastreo y registro en tiempo real, aprovecha los datos estructurados para mejorar el rendimiento del agente de IA y se integra con herramientas como GitHub y Notion. Una interfaz similar al cursor permite a los desarrolladores seleccionar registros y rastreos para análisis asistido por IA. Implementable a través de la nube (prueba gratuita disponible) o autohospedado.

Construyendo un Servidor de Copias de Seguridad Imbatible: FreeBSD, ZFS y Seguridad Multicapa

2025-08-02
Construyendo un Servidor de Copias de Seguridad Imbatible: FreeBSD, ZFS y Seguridad Multicapa

Este artículo detalla cómo construir un servidor de copias de seguridad seguro y confiable utilizando FreeBSD, ZFS y BastilleBSD. El autor enfatiza la redundancia de datos y el cifrado multicapa, describiendo estrategias de copia de seguridad para servidores FreeBSD ZFS (usando zfs-autobackup), otros sistemas (usando BorgBackup) y servidores Proxmox (usando Proxmox Backup Server y Minio). El artículo también trata sobre VPN, aislamiento de red, instantáneas y endurecimiento de seguridad, con el objetivo de ayudar a los lectores a crear un sistema de copia de seguridad robusto y resiliente a diversas amenazas.

Twentyseven 1.0.0: Una odisea de 12 años en Haskell para resolver el Cubo de Rubik

2025-08-02

Después de doce años de desarrollo, un solucionador de Cubo de Rubik basado en Haskell, Twentyseven, ha alcanzado la versión 1.0.0. Inspirado en el Cube Explorer de Herbert Kociemba, utiliza la búsqueda Iterative Deepening A* (IDA*), proyectando inteligentemente el estado del cubo en subproblemas más simples para estimar los movimientos restantes y encontrar soluciones óptimas. Si bien las soluciones óptimas pueden llevar horas, el autor también analiza el algoritmo de dos fases más rápido de Kociemba para soluciones casi instantáneas. Esta versión se centra principalmente en la compatibilidad del compilador GHC y el mantenimiento del código.

Desarrollo

Adiós a la gestión tediosa de claves de API: Optimización de la autenticación de tu API

2025-08-02

Este artículo critica el engorroso proceso de gestión actual de claves de API y propone una solución más simple y eficiente. El autor demuestra cómo el uso de la biblioteca `jose` para generar fácilmente pares de claves JWK permite a los desarrolladores generar sus propias claves de API sin pasos tediosos como el registro de cuenta y la verificación de correo electrónico. La solución utiliza JWT con afirmaciones y claves públicas para la autorización y proporciona un mecanismo de cobro basado en URL de pago, junto con un método de derivación de claves para escenarios B2B2C. Esto simplifica la autenticación de API, mejora la eficiencia del desarrollo y ofrece una gestión de claves más segura.

Desarrollo claves de API

Codificación con IA: Un Espectro de Colaboración Humano-IA

2025-08-02
Codificación con IA: Un Espectro de Colaboración Humano-IA

Este artículo explora estrategias para la codificación asistida por IA, describiendo el proceso como un espectro de colaboración humano-IA. Desde la mínima dependencia de la IA (similar a discutir problemas con colegas de otra empresa) hasta la máxima dependencia (delegar tareas a un programador junior), el autor detalla los diferentes niveles de interacción y enfatiza la importancia de elegir la estrategia correcta según el contexto, equilibrando la profundidad del aprendizaje y la eficiencia.

Ethersync: Edición de texto multijugador, localmente

2025-08-02
Ethersync: Edición de texto multijugador, localmente

Ethersync permite la edición colaborativa en tiempo real de archivos de texto locales sin necesidad de un servidor, ofreciendo conexiones punto a punto encriptadas. Es compatible con Linux, macOS, Android y WSL, con plugins para Neovim y VS Code. Comparte archivos mediante comandos simples en la línea de comandos, permitiendo que varios usuarios editen simultáneamente, vean los cursores de los demás y las selecciones. ¡Piénsalo como un modo multijugador para tu editor de texto! El proyecto se encuentra en desarrollo activo y agradece contribuciones e informes de errores.

Desarrollo

Estudiante de grado resuelve una conjetura matemática: Abordando el problema de Mizohata-Takeuchi

2025-08-02
Estudiante de grado resuelve una conjetura matemática: Abordando el problema de Mizohata-Takeuchi

Hannah Cairo, una estudiante de grado de la UC Berkeley, inesperadamente hizo un progreso significativo en una versión simplificada de la conjetura de Mizohata-Takeuchi mientras cursaba una asignatura de posgrado en teoría de restricción de Fourier. Inicialmente un problema de tarea, Cairo quedó cautivada por él, extendiendo el trabajo a formulaciones más complejas. Su asesor, el Profesor Ruixiang Zhang, quedó impresionado por su pasión y enfoque. Esta historia destaca el potencial de los jóvenes académicos y la dedicación a la exploración intelectual.

Desarrollo conjetura grado

Propuesta de Modo Reforzado para Clang: Priorizando la Seguridad sobre la Compatibilidad

2025-08-02
Propuesta de Modo Reforzado para Clang: Priorizando la Seguridad sobre la Compatibilidad

El equipo de Clang propone un "modo reforzado" para mejorar la seguridad y estabilidad de los programas C y C++. Este modo unificará los mecanismos de seguridad existentes, incluyendo la activación de varias banderas del compilador, macros predefinidas y advertencias, y el ajuste del comportamiento de diagnóstico para reducir falsos positivos y priorizar la seguridad. La propuesta explora varios enfoques de implementación: un archivo de configuración, un controlador separado y banderas ortogonales, buscando la opinión de la comunidad sobre la solución óptima. Este modo puede romper código existente, pero el equipo cree que es una compensación necesaria para una mejor seguridad, apuntando a una baja tasa de falsos positivos.

Desarrollo

Cerebras lanza planes de codificación de IA ultrarrápidos: Pro y Max

2025-08-02
Cerebras lanza planes de codificación de IA ultrarrápidos: Pro y Max

Cerebras presenta dos nuevos planes de codificación de IA: Code Pro (50 $/mes) y Code Max (200 $/mes), ambos impulsados por Qwen3-Coder de Alibaba, un modelo de codificación de peso abierto líder. Con velocidades de hasta 2.000 tokens por segundo, una ventana de contexto de 131.000 tokens y sin bloqueo de IDE propietario o límites semanales, ofrece generación de código instantánea. Los usuarios pueden integrarse con sus IDE de IA preferidos para un flujo de trabajo fluido. Code Pro es ideal para desarrolladores independientes y proyectos pequeños, mientras que Code Max satisface las necesidades de los desarrolladores a tiempo completo con alto volumen.

Desarrollo

No pude enviar un PR, así que conseguí un trabajo y lo arreglé yo mismo

2025-08-01
No pude enviar un PR, así que conseguí un trabajo y lo arreglé yo mismo

Durante más de un año, una condición de carrera en la búsqueda de Mintlify causó resultados extraños. Como fundador de Trieve, la empresa que impulsaba su búsqueda, intenté enviar un PR para solucionarlo, pero fallé. Finalmente, al unirme a Mintlify, agregué un AbortController a la función de búsqueda con rebote, resolviendo el problema y haciendo que los resultados de la búsqueda fueran consistentemente relevantes. Esta experiencia resaltó el poder del código abierto y la satisfacción de solucionar directamente un problema persistente.

Desarrollo

SQLite: Construyendo una base de datos para 2050

2025-08-01

Los desarrolladores de SQLite ambiciosamente planean soportar SQLite hasta 2050. Para lograr esto, han implementado código multiplataforma, un formato de archivo de base de datos estable, pruebas de grado aeronáutico, documentación extensa, código fuente con muchos comentarios y planificación de recuperación de desastres. Rechazando las tendencias pasajeras de programación, buscan un código atemporal, fácilmente comprensible y mantenible por programadores futuros. Incluso la Biblioteca del Congreso de EE. UU. reconoce a SQLite como un formato recomendado para la preservación digital. La visión a largo plazo y el diseño robusto de SQLite lo convierten en una opción confiable de base de datos.

Cancelado: El relato de cuatro años de un desarrollador Scala

2025-08-01

En 2021, un destacado desarrollador Scala fue objetivo de la 'justicia popular' en línea, acusado de conducta sexual inapropiada. A pesar de las falsas acusaciones, perdió su trabajo, ingresos, hogar y amigos de la noche a la mañana, enfrentando la ruina financiera y problemas de salud. Aunque finalmente obtuvo la razón en los tribunales, el daño a su reputación persiste, dejándolo con trauma psicológico y dificultades financieras prolongadas, incluida la falta de vivienda. Este relato detalla su calvario de cuatro años, instando a la cautela en las condenas públicas y destacando el impacto devastador de los ataques en línea sobre las personas.

Entrevistas de codificación en vivo: ¿una prueba de estrés, no de habilidad?

2025-08-01

Este artículo cuestiona la efectividad de las entrevistas de codificación en vivo como medida de la habilidad de ingeniería. El autor relata experiencias personales y cita investigaciones científicas que muestran que las situaciones de alta presión perjudican la función cognitiva, específicamente la memoria de trabajo, crucial para la codificación. Un estudio reveló que los participantes tuvieron un rendimiento la mitad de bueno bajo observación, con las mujeres fallando completamente en la condición observada. El autor sugiere mitigar el estrés mediante entrevistas simuladas y explora suplementos como L-tirosina y L-teanina para mejorar el rendimiento bajo presión.

Aplicaciones de privacidad abandonan la Google Play Store

2025-08-01

Un proyecto que ofrece aplicaciones Android con enfoque en la privacidad desde 2016 dejará de actualizar sus más de 30 aplicaciones en la Google Play Store. Debido a los altos costos de mantenimiento, el equipo está trasladando sus aplicaciones a la tienda F-Droid para continuar con el soporte. Las instalaciones existentes no se verán afectadas, pero se recomienda a los usuarios migrar a F-Droid para futuras actualizaciones y asegurar la funcionalidad continua.

rewindtty: Grabador y Reproductor de Sesiones de Terminal en C

2025-08-01
rewindtty: Grabador y Reproductor de Sesiones de Terminal en C

rewindtty es un proyecto de código abierto escrito en C que graba y reproduce con precisión sesiones de terminal, incluyendo información de tiempo. Ofrece análisis de sesión, generando estadísticas detalladas y sugerencias de optimización. Los datos de la sesión se almacenan en formato JSON para facilitar el análisis. Además, incluye un reproductor basado en navegador con funciones avanzadas, como una línea de tiempo interactiva y controles, mejorando significativamente la experiencia del usuario. El proyecto es ligero, tiene dependencias mínimas y es fácil de usar.

¿Este manual de seguridad para servidores Linux lo protegerá de los hackers?

2025-08-01
¿Este manual de seguridad para servidores Linux lo protegerá de los hackers?

Esta guía completa detalla cómo proteger su servidor Linux contra ataques maliciosos. Cubre todo, desde la elección de una distribución Linux segura hasta la configuración de firewalls y sistemas de detección/prevención de intrusiones (como Fail2Ban y CrowdSec), y proporciona playbooks de Ansible para automatizar muchos pasos de seguridad. La guía también trata temas avanzados como el uso de claves SSH, la autenticación de dos factores y el endurecimiento del kernel sysctl, al tiempo que advierte a los lectores sobre los riesgos que conllevan estos pasos. Es un documento dinámico que pretende ser un recurso integral para la seguridad de servidores Linux.

Adiós, tmux: Una alternativa basada en shpool y administradores de ventanas

2025-08-01
Adiós, tmux: Una alternativa basada en shpool y administradores de ventanas

El autor, un usuario de tmux durante mucho tiempo, buscó una alternativa debido a su complejidad y problemas molestos como la renderización de colores, el desplazamiento del búfer y la selección con el ratón. El artículo explora las deficiencias de los multiplexores de terminal y presenta cómo herramientas como shpool, combinadas con administradores de ventanas (como ghostty o sway), logran la persistencia de sesión y la administración de ventanas, reemplazando finalmente a tmux. Si bien shpool no es perfecto y tiene problemas menores, el autor considera su desplazamiento nativo, las notificaciones de terminal y los títulos como ventajas significativas. Se proporcionan instrucciones detalladas de configuración.

1 2 31 32 33 35 37 38 39 214 215