Artículos

  • Generales 0

    Reflection en Go: reflect.TypeOf, reflect.ValueOf, struct tags y casos reales

    Aprende a usar el paquete reflect de Go para inspeccionar tipos en tiempo de ejecución, recorrer campos de un struct, leer tags personalizadas y modificar valores con Elem(). Incluye cuatro ejemplos reales: validador genérico basado en tags, iterador de structs, unmarshaler propio con reflect.N...

  • Generales 0

    clap en Rust: crear CLIs con argumentos, opciones y subcomandos usando Derive API

    Aprende a crear herramientas de línea de comandos en Rust con clap y la Derive API. Opciones cortas y largas, tipos como PathBuf y Vec, flags booleanos, subcomandos con enum y validación automática de tipos sin escribir lógica de parsing.

  • Generales 0

    Navegación en SwiftUI: NavigationStack, NavigationPath, navigationDestination y deep linking

    Aprende a usar NavigationStack, NavigationPath y navigationDestination en SwiftUI (iOS 16+). Con ejemplos prácticos de navegación programática, deep linking con URLs externas y NavigationSplitView para iPad y macOS.

  • Generales 0

    OpenTelemetry en Go: traces, métricas, exporters y Jaeger para observabilidad

    Aprende a instrumentar aplicaciones Go con OpenTelemetry: configura TracerProvider con Jaeger vía OTLP, crea y anida spans con atributos, propaga contexto entre servicios HTTP con otelhttp, añade métricas con MeterProvider y ajusta el sampling para producción.

  • Generales 0

    Unsafe Rust: raw pointers, bloques unsafe y cuándo (y cuándo no) usarlo

    Unsafe Rust no es una puerta trasera para saltarse el compilador. Te habilita exactamente cinco operaciones que el código seguro no puede hacer: dereferenciar raw pointers, llamar a funciones unsafe o de C, acceder a statics mutables, implementar unsafe traits y acceder a campos de unions.

  • Generales 0

    SwiftUI con @Observable: el nuevo modelo de datos en Swift 5.9 y iOS 17

    Swift 5.9 introduce @Observable, la macro del framework Observation que sustituye a ObservableObject en SwiftUI. Rastrea exactamente qué propiedades usa cada vista y solo la actualiza cuando esas cambian, sin @Published ni la dicotomía @StateObject vs @ObservedObject. Con cuatro ejemplos reales...

  • Generales 0

    GraphQL en Go con gqlgen: schema-first, resolvers, mutations y dataloaders

    Aprende a construir una API GraphQL en Go con gqlgen de forma schema-first: define el schema en schema.graphqls, genera los resolvers, implementa queries y mutations, resuelve el problema N+1 con dataloaders y añade subscriptions en tiempo real.

  • Generales 0

    Módulos y visibilidad en Rust: mod, pub, use, paths y cómo organizar el código

    Aprende a organizar el código en Rust con el sistema de módulos: módulos inline y en ficheros, visibilidad con pub, pub(crate) y pub(super), paths absolutos y relativos con crate:: y super::, re-exportaciones con pub use y la separación entre lib.rs y main.rs con ejemplos reales.

  • Generales 0

    TaskGroup, AsyncSequence y AsyncStream en Swift: concurrencia avanzada y streams async

    Aprende a usar TaskGroup para ejecutar tareas en paralelo con for await, y a construir flujos de datos asíncronos con AsyncSequence y AsyncStream en Swift. Incluye ejemplos de descargas con progreso, conexiones WebSocket, lectura de logs y AsyncThrowingStream para flujos que pueden fallar.

  • Generales 0

    WebSockets en Go: servidor y cliente con gorilla/websocket y nhooyr.io/websocket

    Aprende a montar servidores y clientes WebSocket en Go con gorilla/websocket y nhooyr.io/websocket. Incluye hub para broadcast a múltiples clientes, reconexión con backoff exponencial, keepalive con ping/pong y el antipatrón más frecuente en escrituras concurrentes.