mookie@dev:~$ cat README.md
Escribo sobre .NET, C#, SDD e IA.
Buenas prácticas y patrones que aguantan en producción.
mookie@dev:~/posts$ cat ultimo.md
Último artículo · DesarrolloConventional Commits en .NET sin fiarte de que el dev se acuerde
Por qué un hook local no basta y cómo combinar un hook versionado que se instala con el build con un check obligatorio en el PR
$ ./leer.sh →ls -lt ~/posts tree ~/topics →
-
Hacer cumplir las normas y estándares de .NET con GitHub Actions
Un único workflow comprueba en cada pull request lo que definen Directory.Build.props, Central Package Management y el .editorconfig
-
Estándares de lenguaje y calidad en .NET: que el compilador haga cumplir las normas
Analizadores, .editorconfig, warnings como errores y cómo adoptarlo en una solución que ya existe
-
Central Package Management: una única fuente de verdad para tus paquetes NuGet
Directory.Packages.props, excepciones controladas, transitive pinning y cadena de suministro
-
Directory.Build.props: el contrato de calidad de tu solución .NET
Cómo MSBuild lo encuentra, qué conviene centralizar, qué no y cómo gobernarlo en equipo
-
Spec-driven development con OpenSpec, parte 2: implementar y archivar
El perfil ampliado, la CLI completa y cómo llevar OpenSpec a un equipo
-
Spec-driven development con OpenSpec, parte 1: proponer el change
Instalación, anatomía del proyecto, la CLI y el plan para paginar una API de .NET
-
Laboratorio: securizando microservicios con OAuth 2.1 y Keycloak
Usuarios y aplicaciones contra los servicios de un clúster de Kubernetes local, con un MCP Server como ejemplo
-
Autenticación y autorización en microservicios: OAuth 2.1, OpenID Connect y equivalencias Keycloak ↔ Entra ID
Los conceptos que necesitas antes de proteger tus APIs en .NET
-
Laboratorio: MCP Server en Kubernetes local con Aspire y Rancher Desktop
De la solución de Aspire a un clúster local, paso a paso y con sus tropiezos