Artículos

  • Erlang 0

    Testing en Gleam: gleeunit y cómo escribir tests en un lenguaje tipado sin excepciones

    gleeunit es el framework de testing oficial de Gleam. Con gleam test se ejecutan todos los tests del directorio test/. Las aserciones usan el pipe operator con should.equal, should.be_ok, should.be_error. Sin configuración extra, listo para CI.

  • Javascript 0

    El patrón Observable en JavaScript: reactividad, streams de eventos y mini-RxJS desde cero

    Aprende qué es el patrón Observable en JavaScript, cómo implementarlo desde cero y qué operadores usar. Incluye ejemplos reales con RxJS: buscador con debounce, BehaviorSubject para estado compartido y cómo evitar fugas de memoria al desuscribirse.

  • Generales 0

    Proc macros en Rust: implementar derive macros personalizadas con syn y quote

    Las macros procedurales de Rust permiten generar código en tiempo de compilación. Aprende a crear un crate proc-macro, a parsear el TokenStream de entrada con syn y a generar código nuevo con quote. Cuatro ejemplos progresivos: derive macro básica, derive con Debug personalizado, attribute ma...

  • Generales 0

    Swift Charts: Chart, BarMark, LineMark, PointMark y personalización en SwiftUI

    Swift Charts es el framework nativo de Apple para gráficas en SwiftUI desde iOS 16. Aprende a usar Chart, BarMark, LineMark, PointMark, AreaMark y RuleMark con ejemplos reales, foregroundStyle para series múltiples, escalas personalizadas e interactividad con chartOverlay.

  • Python 0

    ctypes y cffi en Python: llamar a librerías C desde Python sin escribir extensiones

    Aprende a llamar a funciones C desde Python sin escribir extensiones: ctypes para cargar librerías del sistema con CDLL, definir tipos con restype y argtypes, trabajar con structs y arrays; cffi para pegar la declaración C directamente del header. Cuándo usar cada opción.

  • Javascript 0

    Protocolo iterador avanzado en JavaScript: return(), throw(), iteradores lazy e infinitos

    Aprende a usar return() y throw() del protocolo iterador de JavaScript para limpiar recursos y gestionar errores. Descubre cómo crear iteradores lazy e infinitos como Fibonacci o números primos, y encadénalos sin arrays intermedios con los Iterator helpers de ES2025.

  • Generales 0

    GATs en Rust: Generic Associated Types para abstracciones más potentes

    Los Generic Associated Types (GATs), estables desde Rust 1.65, permiten que los tipos asociados en un trait lleven lifetimes propios. La clave para expresar iteradores de streaming, colecciones que prestan sus elementos y parsers sin copias.

  • Generales 0

    Core Data en Swift: NSManagedObject, NSFetchRequest, NSPersistentContainer y migraciones

    Aprende a usar Core Data en Swift con NSPersistentContainer, NSManagedObject y NSFetchRequest. Ejemplos CRUD completos, trabajo en segundo plano con performBackgroundTask, migraciones ligeras y @FetchRequest para SwiftUI.

  • Python 0

    importlib en Python: importar módulos dinámicamente, sistemas de plugins y reload

    Aprende a usar importlib en Python para importar módulos por nombre de cadena, cargar ficheros .py desde rutas arbitrarias, recargar módulos en caliente con reload y construir sistemas de plugins que escanean directorios o usan entry points de paquetes instalados.

  • Otros lenguajes 0

    R y Python juntos: reticulate para usar librerías Python desde R

    reticulate incrusta un intérprete Python dentro de R y permite importar cualquier módulo Python, pasar data frames entre lenguajes, usar scikit-learn o pandas desde código R y mezclar bloques R y Python en el mismo documento Quarto o R Markdown.