Category: Desarrollo

La FSF interviene en la disputa sobre la licencia AGPLv3 de Neo4j

2025-03-09

La Free Software Foundation (FSF) presentó un escrito de amicus curiae en la disputa legal entre Neo4j, Inc. y PureThink, LLC. El asunto central gira en torno a la adición por parte de Neo4j de una cláusula comercial restrictiva, la Commons Clause, a su software, incompatible con la licencia GNU AGPLv3. La FSF argumenta que las licencias GNU permiten a los usuarios eliminar restricciones que contradicen las cuatro libertades del software. Tras una carta de cese y desistimiento en noviembre de 2023, destacando la violación de Neo4j al espíritu de la AGPLv3, Neo4j eliminó los archivos infractores y dejó de ofrecer su software bajo la licencia GNU AGPLv3, reconociendo implícitamente la postura de la FSF. El escrito de la FSF aclara su intención al redactar las licencias GNU y subraya su compromiso con la salvaguarda de la libertad del software.

Desarrollo

Pi-Hole 6 ligero: bloquea anuncios en tu red doméstica sin esfuerzo

2025-03-08
Pi-Hole 6 ligero: bloquea anuncios en tu red doméstica sin esfuerzo

El recién lanzado Pi-hole 6 es más ligero y no requiere PHP ni servidor web externo, reduciendo las necesidades de recursos del sistema. El artículo detalla el proceso de instalación y configuración, incluyendo la elección de hardware adecuado (como una Raspberry Pi), la configuración de una dirección IP estática y la modificación de la configuración DHCP del router. El autor lo probó con éxito en una antigua Raspberry Pi 3B, bloqueando anuncios de forma eficaz, aumentando la velocidad y reduciendo el consumo de datos. En comparación con otros métodos de bloqueo de anuncios, Pi-hole se caracteriza por su simplicidad, facilidad de uso y bajo consumo de recursos del sistema, pero requiere cierto conocimiento de configuración de red.

Desarrollo bloqueo de anuncios

presenterm: Presentaciones Markdown en la Terminal

2025-03-08
presenterm: Presentaciones Markdown en la Terminal

presenterm te permite crear presentaciones en formato Markdown y ejecutarlas desde tu terminal, con soporte para imágenes y GIFs animados, temas altamente personalizables, resaltado de código, exportación de presentaciones a formato PDF y muchas otras funciones. Consulta los ejemplos y la documentación para empezar.

Desarrollo Presentaciones

Más Allá del Autocompletado: Presentamos TypeLeap UI/UX

2025-03-08

TypeLeap UI/UX representa un cambio de paradigma en el diseño de interfaces. Utilizando modelos de lenguaje grandes (LLMs), adapta dinámicamente la interfaz en tiempo real según la intención del usuario al escribir, yendo mucho más allá del simple autocompletado. En lugar de solo predecir palabras, TypeLeap entiende el objetivo del usuario. Escribir "clima en Madrid..." podría mostrar instantáneamente un widget del tiempo. El artículo detalla los desafíos y soluciones técnicas, incluyendo el procesamiento local vs. servidor, la optimización del rendimiento y los mecanismos de retroalimentación del usuario. Si bien los ejemplos prácticos son escasos, el potencial de TypeLeap es enorme, prometiendo una experiencia de usuario más intuitiva y eficiente en la búsqueda, la gestión del conocimiento, los asistentes de IA y más.

Desarrollo diseño UX

¡Deja de usar negritas y cursivas falsas en las redes sociales!

2025-03-08
¡Deja de usar negritas y cursivas falsas en las redes sociales!

Esta publicación describe una prueba que muestra el comportamiento inconsistente de los lectores de pantalla al encontrar texto en negrita y cursiva falsos creados con caracteres Unicode. Algunos lectores de pantalla ignoran por completo el formato, mientras que otros anuncian cada carácter individualmente, lo que genera una mala experiencia para los usuarios con discapacidad visual. El autor hace hincapié en la importancia de usar marcado estándar como HTML para el estilo de texto a fin de garantizar la accesibilidad y evitar confusiones para los usuarios de lectores de pantalla.

MCP: Una interfaz unificada para agentes de IA

2025-03-08
MCP: Una interfaz unificada para agentes de IA

Imagina una interfaz universal que conecta modelos de IA con varias herramientas y fuentes de datos; ese es el MCP (Protocolo de Contexto de Modelo). Como un puerto USB-C para IA, simplifica la interacción de la IA con el mundo exterior. A diferencia de las API tradicionales que requieren integraciones individuales, el MCP ofrece estandarización, descubrimiento dinámico y comunicación bidireccional en tiempo real, haciendo las aplicaciones de IA más flexibles y eficientes. Es ideal para escenarios complejos que requieren conciencia de contexto, como asistentes de programación inteligentes e IDEs avanzados.

Desarrollo

Asistentes de codificación con IA: exageraciones vs. realidad

2025-03-08
Asistentes de codificación con IA: exageraciones vs. realidad

Muchos desarrolladores afirman que los asistentes de codificación con IA aumentan la productividad entre 5 y 10 veces, pero un estudio con casi 800 ingenieros revela una historia diferente. La investigación no encontró mejoras significativas en las métricas de eficiencia; de hecho, el uso de asistentes de IA provocó un aumento del 41% en los errores. Si bien son útiles para la documentación, la búsqueda de funciones y la comprensión de las API, estas herramientas tienen dificultades con bases de código de tamaño medio o complejo. El autor sugiere que son más como motores de búsqueda mejorados, proporcionando un aumento de la productividad de aproximadamente el 10%, mucho menos de lo que se suele anunciar. Los editores modales pueden incluso ofrecer mejoras mayores en la velocidad de codificación que la finalización de código con IA en línea.

Desarrollo

Elecciones de la junta directiva de OSI afectadas por el debate sobre la definición de IA de código abierto

2025-03-08
Elecciones de la junta directiva de OSI afectadas por el debate sobre la definición de IA de código abierto

La elección de la junta directiva de 2025 de la Iniciativa de Código Abierto (OSI) está envuelta en controversia, provocada por su definición de IA de código abierto (OSAID) lanzada el pasado octubre. El rechazo del candidato Luke Faraone por supuestamente perder un plazo ha generado un debate sobre la transparencia de la comunicación y los procesos de la OSI. Más allá de las cuestiones procesales, la propia OSAID se enfrenta a una fuerte oposición de actores importantes de la comunidad de código abierto, con figuras prominentes como Richard Fontana y Bradley Kuhn abogando por un retraso de 5 a 10 años en la formalización de una definición de IA de código abierto. La elección continúa, dejando el futuro de la OSAID incierto.

Aplicando la Jerarquía de Controles a la Ingeniería de Software

2025-03-08

Un ingeniero mecánico le presentó al autor la Jerarquía de Controles (HoC), un concepto crucial en la seguridad del lugar de trabajo. El autor aplica HoC a la ingeniería de software, analizando un incidente de base de datos de producción causado por una consulta incorrecta hace diez años. El artículo explora la aplicación de la eliminación, la sustitución, los controles de ingeniería, los controles administrativos y el equipo de protección personal (EPP) para mitigar riesgos en el desarrollo de software. Se discuten las ventajas, desventajas y limitaciones de cada nivel; por ejemplo, las políticas de acceso demasiado estrictas pueden ralentizar la resolución de problemas. El autor enfatiza la necesidad de considerar de forma holística el impacto de los controles en la seguridad del sistema, evitando la introducción de nuevos riesgos.

Desarrollo

Airo: Despliegues Sencillos en Servidores Autohospedados

2025-03-08
Airo: Despliegues Sencillos en Servidores Autohospedados

¿Cansado de las complejas canalizaciones de CI/CD? Airo es una herramienta de línea de comandos que simplifica el despliegue de proyectos desde tu equipo local a tu servidor autohospedado. Sin necesidad de configurar canalizaciones o servicios complejos; simplemente define tus archivos `compose.yml` y `env.yml`, incluyendo un Dockerfile y Caddyfile, e implementa con un solo comando `airo deploy`. Admite la configuración automática de HTTPS y proxy inverso. Airo te permite concentrarte en la creación de tu producto, no en la gestión de la infraestructura, lo que lo hace ideal para proyectos más pequeños.

Desarrollo despliegue

El navegador Orion, centrado en la privacidad, llega a Linux

2025-03-08
El navegador Orion, centrado en la privacidad, llega a Linux

Kagi, la empresa detrás del motor de búsqueda de pago y centrado en la privacidad, anunció que su navegador Orion, basado en WebKit, llegará a Linux. Orion, conocido por su velocidad, bajo consumo de memoria y funciones de privacidad, está actualmente disponible para macOS e iOS y admite extensiones de Chrome y Firefox. Si bien actualmente es de código cerrado, Kagi está abriendo gradualmente el código de sus componentes y apunta a la paridad de funciones con la versión macOS en Linux para el próximo año. Esta es una buena noticia para los usuarios de Linux, ofreciéndoles otra opción de navegador potente.

Desarrollo

arXivLabs: Proyectos Experimentales con Colaboración de la Comunidad

2025-03-08
arXivLabs: Proyectos Experimentales con Colaboración 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 los respeten. ¿Tiene una idea para un proyecto que agregará valor a la comunidad de arXiv? Obtenga más información sobre arXivLabs.

Redis: ¿Realmente lo necesitas?

2025-03-08

Durante más de una década y en tres empresas, el autor observó un patrón recurrente: Redis se usaba con frecuencia en exceso. Incluso en Tantan, un sistema de base de datos de alto rendimiento, Redis, inicialmente destinado a almacenar en caché una pequeña cantidad de datos de conteo de interacción del usuario, resultó innecesario. Podía almacenarse eficientemente directamente en PostgreSQL sin complejidad adicional. Se encontraron implementaciones innecesarias similares de Redis en otras dos empresas, agregando complejidad a sistemas de baja carga sin ganancias significativas de rendimiento. El autor aboga por una evaluación cuidadosa de las nuevas tecnologías, evitando la 'tecnología por la tecnología', y optando por alternativas más simples y confiables.

Startup de San Francisco busca Ingeniero Experimentado

2025-03-08
Startup de San Francisco busca Ingeniero Experimentado

Una startup con sede en San Francisco está contratando a un ingeniero experimentado para unirse a su pequeño y ágil equipo de ingeniería. El trabajo implica diversos proyectos y pipelines de datos a gran escala (más de 100 millones de puntos de datos mensuales). Se requiere dominio de Python, SQL y Docker, con puntos extra por experiencia en rastreo web, Kubernetes y pipelines de LLM. Excelentes beneficios incluyen almuerzo, vacaciones ilimitadas, 401k, seguro médico platinum, un salario de US$ 150.000 a US$ 200.000 y un 0,5% a 2% de participación accionaria.

Desarrollo Pipeline de Datos

¡Encontré errores en el TAOCP de Knuth y fui recompensado!

2025-03-08
¡Encontré errores en el TAOCP de Knuth y fui recompensado!

El autor descubrió varios errores en la obra de Donald Knuth, "El arte de la programación de computadoras" (TAOCP), y los reportó al propio Knuth. Knuth no solo respondió rápidamente y corrigió los errores, sino que también recompensó al autor con "dólares hexadecimales" de su ficticio "Banco de San Serriffe". El artículo detalla los errores encontrados, las respuestas de Knuth y las recompensas correspondientes, compartiendo los métodos de corrección únicos de Knuth y una anécdota divertida. Destaca la dedicación de Knuth a la precisión y la atención al detalle, y el respeto del autor por la obra clásica.

Contabilidad en Clojure: Evolución de Script a Aplicación Web Interactiva

2025-03-08

El autor inicialmente usó un script de Clojure para contabilidad, pero a medida que aumentaba el número de transacciones, el mantenimiento y el intercambio se volvieron difíciles. Un script simple es fácil de escribir, pero ofrece una mala experiencia de usuario, mientras que una aplicación web compleja ofrece una buena experiencia, pero es costosa de desarrollar. El autor combinó inteligentemente las características de Clojure con un marco de aplicación web simple para crear un sistema de contabilidad interactivo similar a un cuaderno. Este sistema permite a los usuarios escribir código Clojure, ver los resultados en tiempo real y modificar las reglas y datos de contabilidad mediante elementos de IU simples. También admite la persistencia de datos, el control de versiones y la edición colaborativa, lo que resuelve eficazmente las deficiencias del script original y mejora la experiencia del usuario y la eficiencia.

Desarrollo

arXivLabs: Experimentando con funciones impulsadas por la comunidad

2025-03-08
arXivLabs: Experimentando con funciones impulsadas por la comunidad

arXivLabs es una plataforma experimental que permite a los colaboradores desarrollar y compartir nuevas funciones de arXiv directamente en el sitio web. Los participantes, tanto individuos como organizaciones, abrazan los valores de arXiv de apertura, comunidad, excelencia y privacidad de datos del usuario. arXiv está comprometido con estos valores y solo se asocia con quienes los comparten. ¿Tiene alguna idea para mejorar la comunidad de arXiv? Obtenga más información sobre arXivLabs.

Desarrollo

Olvídate del Manual: 6 Formas No Convencionales de Construir un Equipo Tecnológico de Alto Rendimiento

2025-03-08
Olvídate del Manual: 6 Formas No Convencionales de Construir un Equipo Tecnológico de Alto Rendimiento

Este artículo cuestiona seis prácticas comunes pero contraproducentes en la gestión de equipos tecnológicos. El autor argumenta que los equipos pequeños, los hackatones, el tiempo asignado a la "deuda técnica", la sobreprotección del tiempo de los ingenieros, la rotación cero y la hiperespecialización contribuyen a equipos mediocres y sin inspiración. En cambio, el autor aboga por la construcción de equipos autoorganizados de tamaño adecuado; reemplazar los hackatones por "pausas" estructuradas; incorporar la deuda técnica en la hoja de ruta del producto; fomentar la participación de los ingenieros en el soporte al cliente; aceptar la rotación saludable; y promover el desarrollo de habilidades multifuncionales para construir equipos resilientes, innovadores e impactantes.

Svelte5: ¿No tan bueno como se anunciaba?

2025-03-08
Svelte5: ¿No tan bueno como se anunciaba?

El lanzamiento de Svelte5 promocionó su sistema de estado reactivo, "runes", como una gran mejora. Sin embargo, este autor encontró varias limitaciones en proyectos reales. Runes están restringidos a componentes Svelte o archivos .svelte.ts, requiriendo que el estado se envuelva en funciones para la reactividad y ofreciendo soporte incompleto para clases. Las características de plantilla de Svelte carecen de equivalentes en JavaScript, haciendo que las pruebas de propiedades enlazables sean engorrosas. Los componentes de formulario son incontrolados por defecto, lo que lleva a problemas potenciales. Si bien Svelte5 intenta imitar React/Vue, se queda corto en usabilidad y completitud de funciones, lo que lleva al autor a considerar SolidJS como una alternativa superior.

Desarrollo Estado Reactivo

Descubrimiento accidental de un error de seguridad: Una aventura de clic derecho

2025-03-08
Descubrimiento accidental de un error de seguridad: Una aventura de clic derecho

Al configurar un portal de autoservicio, el autor, impulsado por la curiosidad, modificó un campo de correo electrónico supuestamente no editable y descubrió una vulnerabilidad de SSO. Esto permitió cambiar el correo electrónico del trabajo por uno personal, eludiendo la autenticación. La vulnerabilidad se informó y el proveedor la solucionó rápidamente. Esto destaca cómo incluso las pruebas simples pueden descubrir fallas de seguridad críticas y enfatiza la importancia de la curiosidad y un enfoque centrado en el usuario en las pruebas de software.

Desarrollo error de seguridad

Python vs. Go: Una Comparación de Servidores Web y Diferencias Astronómicas de Recursos

2025-03-08
Python vs. Go: Una Comparación de Servidores Web y Diferencias Astronómicas de Recursos

Este artículo compara un servidor web simple FastAPI (Python) y Go, destacando el consumo excesivo de recursos de Python en producción. La imagen Docker de Python es significativamente mayor que el equivalente en Go, requiriendo órdenes de magnitud más RAM. Esto lleva a costos de servidor más altos y complejidades operacionales. Además, el mantenimiento y las actualizaciones de código Python presentan desafíos, como las limitaciones de GIL, el manejo de excepciones y las actualizaciones de dependencias de paquetes. El autor utiliza su experiencia personal y ejemplos de la industria para ilustrar el impacto de la elección del lenguaje en los costos del proyecto y la eficiencia de la ingeniería, sugiriendo Go o lenguajes ligeros similares para aplicaciones con recursos limitados o críticas para el rendimiento.

Modelos de error para lenguajes de programación de sistemas: Un tratado épico

2025-03-08

Esta publicación de blog de más de 15.000 palabras profundiza en los modelos de error para lenguajes de programación de sistemas. El autor aborda la representación, propagación y manejo de errores desde múltiples perspectivas: producto, sistema de tipos y diseño de lenguaje. Se propone un lenguaje hipotético, 'Everr', y su modelo de error, buscando un equilibrio entre la degradación gradual, la optimización del rendimiento y la interoperabilidad entre bibliotecas. La publicación compara modelos de error en varios lenguajes de programación y explora la comprensión y el manejo de errores por parte de los programadores.

Implementación segura en IIS local: Azure Pipelines en acción (Parte III)

2025-03-08
Implementación segura en IIS local: Azure Pipelines en acción (Parte III)

Esta publicación detalla un flujo de implementación seguro desde Azure DevOps a un servidor IIS local sin necesidad de privilegios de administrador. El autor aborda desafíos como la minimización de permisos y la manipulación del grupo de aplicaciones, logrando implementaciones automatizadas. El enfoque está en la administración remota segura utilizando PowerShell y Just Enough Administration (JEA), con una plantilla de pipeline YAML completa y scripts de PowerShell proporcionados para una configuración rápida y segura.

Debian GNU/kFreeBSD: Un sistema operativo híbrido que combina Debian y FreeBSD

2025-03-08

Debian GNU/kFreeBSD es un sistema operativo único que combina el entorno de usuario de Debian con el núcleo de FreeBSD. Este artículo explora su arquitectura, proceso de instalación, beneficios (como el soporte de ZFS y las optimizaciones de rendimiento) y limitaciones (compatibilidad de software y soporte de la comunidad). Si bien ofrece una combinación convincente del vasto repositorio de software de Debian y el núcleo robusto de FreeBSD, es importante considerar los desafíos antes de sumergirse. Sigue siendo un experimento interesante en la hibridación de SO.

Desarrollo

Problemas de traducción: El desafío de traducir una aplicación para reducir el uso del teléfono al alemán

2025-03-08
Problemas de traducción: El desafío de traducir una aplicación para reducir el uso del teléfono al alemán

Un desarrollador se encontró con grandes desafíos al traducir el término "topes de velocidad" para su aplicación diseñada para reducir el uso del teléfono. El idioma alemán tiene 18 palabras diferentes para los topes de velocidad, lo que lleva a inconsistencias y errores en varias herramientas y recursos de traducción. El artículo destaca las trampas de depender de la traducción de IA y enfatiza la importancia de los servicios de traducción profesional, observando que incluso un término aparentemente simple puede plantear obstáculos culturales inesperados. La experiencia del desarrollador sirve como una advertencia sobre los matices de la localización y la necesidad de enfoques culturalmente sensibles para el desarrollo de aplicaciones.

Desarrollo localización

Crónicas de Red: Documentación de Red Gamificada

2025-03-08
Crónicas de Red: Documentación de Red Gamificada

Crónicas de Red transforma la tediosa documentación de red en una aventura de misterio inmersiva. Los usuarios se convierten en un nuevo administrador de sistema encargado de mantener una red después de la misteriosa desaparición de su predecesor, "El Arquitecto". A través de la exploración, la resolución de rompecabezas y la documentación, los jugadores descubren los secretos de la red y la verdad detrás de la desaparición del Arquitecto. El sistema gamificado incluye puntos de experiencia, niveles, logros y desafíos, integrándose perfectamente con su terminal. Es compatible con Linux y macOS y ofrece instalaciones estándar e instalaciones de espacio de usuario.

Letta: Framework de código abierto para aplicaciones LLM con estado

2025-03-08
Letta: Framework de código abierto para aplicaciones LLM con estado

Letta (anteriormente MemGPT) es un framework de código abierto para construir aplicaciones LLM con estado. Permite a los desarrolladores crear agentes con capacidades avanzadas de razonamiento y memoria a largo plazo transparente. El framework Letta es agnóstico de modelos y admite varios backends LLM (OpenAI, Anthropic, etc.). La instalación está disponible a través de Docker y pip. Un entorno de desarrollo de agente (ADE) gráfico simplifica la creación, implementación, interacción y observación de agentes.

Desarrollador de Software Senior Condenado por Sabotear los Sistemas de su Empresa

2025-03-08
Desarrollador de Software Senior Condenado por Sabotear los Sistemas de su Empresa

Davis Lu, un desarrollador de software senior de 55 años, fue declarado culpable de sabotear los sistemas de su antigua empresa, Eaton Corporation, y enfrenta hasta 10 años de prisión. Antes de su salida, Lu desarrolló un software malicioso que bloqueó a miles de empleados de la red, causando importantes daños financieros. Los investigadores descubrieron que Lu creó malware llamado "Hakai" (japonés para destrucción) y "HunShui" (chino para sueño), junto con un "interruptor de apagado" que bloqueaba todas las cuentas tras la revocación de su acceso. También intentó eliminar datos de la empresa y directorios del sistema operativo. A pesar de haber admitido las acciones, el jurado declaró a Lu culpable de dañar intencionalmente un ordenador protegido.

Desarrollo

¿Por qué C para la Implementación de Códecs?

2025-03-08
¿Por qué C para la Implementación de Códecs?

Esta entrada de blog explora la elección del autor de C sobre Rust para implementar códecs. Si bien Rust ofrece un potente sistema de tipos y características de seguridad de memoria, estos beneficios tienen un coste de rendimiento en código de bajo nivel y crítico para el rendimiento, como los códecs. El autor argumenta que la simplicidad de C y el control directo sobre el hardware lo hacen más adecuado para el desarrollo de códecs de alto rendimiento. Ejemplos de implementaciones de PAQ8, bzip3 y LZ4 destacan los desafíos de gestión de memoria y optimización de rendimiento. El autor considera que la optimización de bajo nivel es más fácil en C. Si bien la seguridad de Rust es ventajosa, la sobrecarga es inaceptable en escenarios exigentes de rendimiento.

Desarrollo Códecs

Polars Cloud: Una plataforma escalable y sin servidor para el procesamiento de DataFrames

2025-03-07
Polars Cloud: Una plataforma escalable y sin servidor para el procesamiento de DataFrames

El equipo de Polars está construyendo Polars Cloud, una plataforma de API de DataFrame flexible respaldada por computación de alto rendimiento. Su objetivo es cerrar la brecha entre Pandas y PySpark, ofreciendo facilidad de uso y escalabilidad. Polars Cloud admite computación distribuida, computación sin servidor, hardware configurable (GPU y CPU), escalamiento diagonal (horizontal y vertical), soporte multi-nube (AWS, Azure, GCP), licencias locales, tolerancia a fallos, linaje de datos y observabilidad. Los usuarios pueden ejecutar consultas de forma remota con sencillas llamadas a la API, admitiendo modos por lotes e interactivos. Polars Cloud también admite varias estrategias de escalamiento, incluidas consultas distribuidas, particionadas y paralelas, para gestionar diversas necesidades de procesamiento de datos.

Desarrollo
1 2 143 144 145 147 149 150 151 214 215