netcore
C#9 Records: Mis impresiones
· ☕ 12 min · ✍️ eiximenis
He estado jugando un poco con la nueva de C#9 llamada records y esas son mis impresiones.

Span<T> y P/Invoke
· ☕ 10 min · ✍️ eiximenis
Span<T> es una ref struct que habilita de forma fácil escenarios nuevos permitiendo usar la pila donde antes solo podíamos usar el heap. Eso redunda en menos reservas del heap y por lo tanto menos presión sobre el GC.

NetCore 3 - NativeLibrary: ¡p/invoke a tope!
· ☕ 7 min · ✍️ eiximenis
NetCore ha soportado P/Invoke desde siempre a través de [DllImport] que funciona tanto en Mac, como en Linux como en Windows. Pero DllImport tiene algunas limitaciones que pueden ser frustrantes. Por suerte con NetCore 3 tenemos NativeLibrary que viene a solventar esos problemas de una vez por todas.

Admission webhooks de Kubernetes con netcore
· ☕ 10 min · ✍️ eiximenis
Los admission webhooks son uno de los mecanismos de personalización más potentes que ofrece Kubernetes. Permite añadir reglas mediante las cuales determinados objetos (pods, deployments, ...) pueden ser aceptados o no en el clúster e incluso ser automáticamente modificados.

WPF y netcore3 con custom host
· ☕ 4 min · ✍️ eiximenis
Una de las ventajas de usar WPF bajo .NET Core 3 es la posibilidad de usar el custom host de .Net Core y así obtener todas sus ventajas (DI, configuración, logging, ...). En este post vemos como

Expediente X en rendimiento
· ☕ 5 min · ✍️ eiximenis
Probando demos de mi charla sobre rendimiento me he encontrado hoy con un "expediente X". Os lo cuento, aunque ya os avanzo que el culpable era... ¡yo! xD

Terminales y millones de colores: una historia complicada
· ☕ 19 min · ✍️ eiximenis

Los que más o menos me seguís por Twitter, quizá os habréis enterado de que estoy escribiendo una librería cross-platform (netstandard2) para desarrollar aplicaciones de consola. Evidentemente no es la única, es simplemente otra más y puedo asegurar que me lo paso genial desarrollándola.

Uno de los objetivos principales cuando empecé era permitir usar true color (es decir 16 millones de colores) en aquellos terminales que lo soportan y la verdad es que la historia del soporte de colores en terminales da para un post… y aquí estamos 😉


Crear imágenes Docker de proyectos netcore en varias versiones del framework
· ☕ 6 min · ✍️ eiximenis

Imagina que estás probando alguna versión release de netcore (pongamos la 2.2-preview3) y quieres generar imágenes Docker de tu proyecto para esa imagen. Pero a la vez quieres también crear las imágenes usando la última versión estable (pongamos la 2.1).

Asumiendo que el código fuente es compatible, ¿como puedes gestionar eso sin morir en el intento?


El metapaquete Microsoft.AspNetCore.All
· ☕ 8 min · ✍️ eiximenis

Todos estamos acostumbrados a usar los paquetes de NuGet en nuestros desarrollos. Pero a raíz de Net Core 2.0, apareció el concepto de metapaquete. Qué es exactamente un metapaquete y por qué existen?

La respuesta rápida es que un metapaquete de NuGet es simplemente un paquete que no incluye ningún ensamblado, solo referencia a otros paquetes. Es, en definitiva, un mecanismo para “agrupar” paquetes de NuGet bajo un mismo número de version.


ASP.NET Core – IStartupFilter
· ☕ 6 min · ✍️ eiximenis

Buenas! Vamos a explorar en este post la interfaz IStartupFilter, por lo general un desconocido de ASP.NET Core, pero bueno… que está por ahí y no está de más conocerlo un poco. ¡Vamos allá!