Artículos
-
Generales
Const generics en Rust: parámetros de tipo que son valores constantes
Los const generics, estables desde Rust 1.51, permiten usar valores constantes como parámetros genéricos. Aprende a crear structs con tamaño fijo, implementar traits para arrays de cualquier longitud y cuáles son los tipos válidos como const params.
-
Generales
URLSession con async/await en Swift: descargas, uploads, WebSocket y streaming
Aprende a usar URLSession con async/await en Swift: peticiones con data(from:), streaming con AsyncBytes, descargas a fichero, subidas, WebSocket con webSocketTask y sesiones ephemeral. Con el antipatrón más habitual y cómo cancelar tareas correctamente.
-
Python
subprocess en Python: run, Popen, communicate, pipes y ejecución de comandos del sistema
Aprende a usar el módulo subprocess de Python para ejecutar comandos del sistema: subprocess.run() con capture_output, check y timeout; subprocess.Popen con communicate() y poll(); shlex.split() y los peligros de shell=True con datos del usuario.
-
Javascript
Leer errores de TypeScript: entender mensajes complejos, pretty-ts-errors y técnicas de depuración
Cómo leer y entender los errores complejos de TypeScript: estrategia de lectura de abajo a arriba, @ts-expect-error para aislar, reveal_type, AssertEqual, la extensión pretty-ts-errors, el tipo Simplify para expandir tipos opacos y cómo resolver errores de tipos circulares.
-
Generales
cgo en Go: llamar a código C desde Go, importar librerías C y cuándo evitarlo
cgo permite llamar funciones C desde Go usando import C con un preámbulo de comentario. Aprende a convertir strings con C.CString, pasar structs, enlazar librerías con LDFLAGS y exportar funciones Go a C. Incluye el overhead real de cgo y cuándo evitarlo.
-
Javascript
Patrones de diseño en JavaScript: Factory, Strategy, Observer y Command con ES6+
Aprende a usar Factory, Strategy, Observer y Command con JavaScript moderno: centraliza la creación de objetos, pasa algoritmos como argumentos, construye sistemas de eventos con suscriptores y encapsula operaciones con soporte para deshacer. Ejemplos reales con ES6+.
-
Generales
Type-State Pattern en Rust: codificar estados válidos en el sistema de tipos
El type-state pattern en Rust usa parámetros de tipo genéricos y zero-sized types para que el compilador impida llamar a métodos en un estado incorrecto. Los errores son en compilación, no en runtime. Cuatro ejemplos con conexiones, builders, ficheros y peticiones HTTP.
-
Otros lenguajes
FoxPro sigue vivo décadas después: el software empresarial que Microsoft dejó atrás
Visual FoxPro lleva más de una década sin soporte oficial de Microsoft, pero miles de empresas siguen usando aplicaciones de facturación, inventario y gestión construidas sobre esta plataforma. Repasamos su historia, desde la rivalidad con dBASE hasta la compra por Microsoft en 1992 y el moti...
-
Otros lenguajes
Go nació porque Google tardaba horas en compilar: la apuesta de Ken Thompson por simplificar
En 2007, algunos proyectos de C++ en Google tardaban horas en compilar. Ken Thompson, Rob Pike y Robert Griesemer diseñaron Go para atacar ese problema con un lenguaje deliberadamente simple, hoy la base de Docker, Kubernetes, Prometheus y Terraform.
-
Generales
Codable avanzado en Swift: CodingKeys propias, estrategias de fecha, polimorfismo y anidamiento
Aprende a usar Codable en Swift más allá del básico: CodingKeys propias para renombrar campos JSON, decodificación anidada con nestedContainer(), DateDecodingStrategy para fechas, tipos polimórficos con campo type y property wrappers para valores por defecto.









