Artículos
-
Erlang
Tipos y pattern matching en Gleam: el sistema de tipos que evita errores en tiempo de compilación
Gleam usa inferencia de tipos completa, sin null ni excepciones. Option y Result reemplazan los valores nulos y los try/catch. El pattern matching con case cubre todos los casos y el compilador lo verifica antes de ejecutar.
-
Generales
golang.org/x/sync en Go: errgroup, semaphore y singleflight para concurrencia avanzada
golang.org/x/sync amplía la librería estándar con tres utilidades concretas: errgroup para goroutines con propagación de errores y cancelación automática, semaphore.Weighted para limitar la concurrencia y singleflight para evitar consultas duplicadas bajo carga. Con ejemplos reales y antipa...
-
Javascript
Tagged template literals en JavaScript: etiquetas, String.raw y casos de uso reales
Los template literals etiquetados permiten que una función procese las partes literales e interpoladas de un template antes de devolver el resultado. Aprende a sanitizar HTML, construir queries SQL seguras, usar String.raw y entender cómo los usan styled-components y Apollo GraphQL.
-
Generales
Axum avanzado: middleware, manejo de errores tipado y capas con Tower
Aprende a estructurar aplicaciones Axum robustas con middleware Tower: logging con TraceLayer, CORS configurable, autenticación transparente con FromRequestParts, errores tipados con thiserror e IntoResponse, y routers anidados con estado diferente.
-
Generales
Macros en Swift 5.9: @Expression, @Member, @Peer, @Extension y cómo crear las tuyas
Las macros de Swift 5.9 son plugins del compilador que generan código antes de compilar. Aprende la diferencia entre freestanding y attached, crea una macro propia con SwiftSyntax que valida URLs en compilación y entiende cuándo usar property wrappers en su lugar. Cuatro ejemplos progresivos.
-
Python
Descriptores en Python: __get__, __set__, __delete__ y el protocolo que hay detrás de property
Los descriptores en Python son el mecanismo detrás de property, classmethod y staticmethod. Aprende a implementar property desde cero, crear campos con validación automática y entender la diferencia entre data descriptors y non-data descriptors con ejemplos reales.
-
Python
Descriptores en Python: __get__, __set__, __delete__ y el protocolo que hay detrás de property
Los descriptores en Python son el mecanismo detrás de property, classmethod y staticmethod. Aprende a implementar property desde cero, crear campos con validación automática y entender la diferencia entre data descriptors y non-data descriptors con ejemplos reales.
-
PHP
password_hash() y password_verify() en PHP: almacenar contraseñas de forma segura
Aprende a almacenar contraseñas en PHP de forma segura con password_hash() y password_verify(). Diferencias entre PASSWORD_BCRYPT y PASSWORD_ARGON2ID, cómo migrar hashes obsoletos con password_needs_rehash() y generar tokens seguros con random_bytes(). Con ejemplos de registro, login y recupera...
-
Javascript
tsup para TypeScript: compilar librerías con ESM+CJS+d.ts en una sola herramienta
tsup es un empaquetador basado en esbuild para compilar librerías TypeScript. Con un solo comando genera ESM, CommonJS y ficheros .d.ts. Aprende a configurar entry points múltiples, sourcemaps, minificación, el campo exports de package.json y cuándo elegir tsup frente a tsc, esbuild o Rollup.
-
Generales
Templates en Go: text/template, html/template, FuncMap, pipelines y templates anidados
Aprende el sistema de templates de Go: text/template para texto genérico y html/template para HTML con escaping anti-XSS automático. Sintaxis básica, pipelines, FuncMap para añadir funciones propias y templates anidados con define y ParseGlob.









