Artículos
-
Generales
Trait objects en Rust: dyn Trait, object safety, Box
y despacho dinámico Los trait objects de Rust permiten polimorfismo en tiempo de ejecución con despacho dinámico por vtable. Aprende a usar Box con dyn Trait, Arc con Send y Sync para hilos, dyn Error para errores universales y a detectar cuándo un trait no es object-safe.
-
Generales
CloudKit en Swift: CKDatabase, CKRecord, consultas y sincronización con iCloud
Aprende a sincronizar datos con iCloud usando CloudKit sin servidor propio: CKContainer, CKDatabase privada y pública, CKRecord, CKQuery con NSPredicate, paginación con CKQueryOperation, suscripciones push, NSPersistentCloudKitContainer con Core Data y CKAsset para ficheros.
-
Generales
Traits avanzados en Rust: tipos asociados, regla huérfana, newtype y default implementations
Guía práctica sobre traits avanzados en Rust: tipos asociados frente a parámetros genéricos, implementaciones por defecto, la orphan rule y cómo sortearla con el patrón newtype, y supertraits. Cuatro ejemplos de código reales con los errores de compilación típicos.
-
Generales
TipKit en Swift: mostrar tips de onboarding con reglas, frecuencia y TipView en SwiftUI
TipKit, disponible desde iOS 17, permite mostrar tips contextuales de onboarding sin gestionar UserDefaults a mano. Aprende a definir tips con @Parameter, reglas condicionales, eventos acumulados y frecuencia de visualización, con ejemplos reales y el antipatrón de resetDatastore.
-
Python
Protocol Buffers y gRPC en Python: definir servicios, generar código y streaming bidireccional
Aprende a usar gRPC con Python: define mensajes en .proto con string, int32, bool, repeated, map y oneof, genera stubs con protoc e implementa los cuatro tipos de RPC. Cubre interceptores de logging y autenticación, y betterproto como alternativa con dataclasses.
-
Generales
Rust 2024 Edition: let chains, gen blocks, async closures y cambios de la nueva edición
Rust 2024 Edition, estabilizada en Rust 1.85, introduce let chains para combinar if let con &&, gen blocks para crear iteradores con yield, async closures con AsyncFn y unsafe en bloques extern. Migra con cargo fix --edition.
-
Generales
AppIntents en Swift: Shortcuts, integración con Siri, AppShortcut y parámetros
Aprende a integrar tu app iOS con Shortcuts y Siri usando AppIntents desde iOS 16. Crea intents con @Parameter, define AppShortcut predefinidos con AppShortcutsProvider, implementa EntityQuery para seleccionar objetos y usa ControlWidget en iOS 18. Con ejemplos reales y errores frecuentes.
-
Python
Dockerizar aplicaciones Python: Dockerfile optimizado, multi-stage, .dockerignore y Compose
Aprende a dockerizar aplicaciones Python correctamente: FROM python:3.13-slim, capas cacheadas para pip install, multi-stage builds, .dockerignore, usuario no-root y Docker Compose con hot reload. Cinco ejemplos completos listos para producción.
-
Generales
Rust sin std: desarrollo embebido y no_std para microcontroladores
Aprende a escribir firmware en Rust sin biblioteca estándar usando #![no_std]. Configura el panic handler, allocators personalizados y embedded-hal. Ejemplos reales con rp2040-hal para Raspberry Pi Pico, I2C, heap con embedded-alloc y concurrencia con RTIC.
-
Generales
WidgetKit en Swift: Widget, TimelineProvider, TimelineEntry y actualización programada
Aprende a crear widgets para la pantalla de inicio de iOS con WidgetKit: Widget, TimelineProvider, TimelineEntry y TimelineReloadPolicy. Con ejemplos de widget de clima y tareas, App Group para datos compartidos, deep linking con widgetURL y Link, y relevance para Smart Stacks.









