Crear un programa de consola asíncrono con C#

Hace ya bastante tiempo que no publico una píldora de código. Aquí va una: como crear un programa de consola en C# que pueda hacer llamadas asíncronas (async – await).

Puede serte útil en algún momento.

Actualización: Como bien comenta @snavarropino en los comentarios, a partir de la versión 7.1 de C# se incluyen main asíncronos, por lo que no sería necesario usar este «atajo».

¡Nos leemos!

Azure Logic Apps. Como crearlas, gestionarlas y desplegarlas con Visual Studio

El otro día fui a la .Net Conf Barcelona 2018 y pude asistir a la charla que dieron @tonirecio y @barbosound en la que hablaban sobre como habían usado Azure logic apps para automatizar ciertas tareas recurrentes en su organización.

Logic apps es uno de esos temas en los que llevaba tiempo pensando, pero ya sabes, el tiempo es limitado y nunca me ponía a ello, por lo que esta charla me vino de maravillas para conocer de que va el tema e interesarme por ellas.

Azure Logic Apps te permite crear flujos de trabajo y procesos sin tirar una sola linea de código. Es el concepto de no tirar una sola linea de código lo que me tiraba un poco para atrás a la hora de ponerme con ello, pero me he dado cuenta de que bien usado y con cabeza, puede ser una herramienta muy potente que nos puede ahorrar muchas horas de trabajo y algún que otro dolor de cabeza. 

Como ejemplo, he creado una logic app que «escucha» Twitter y si detecta un hastag concreto, captura el Tweet y me lo envía por correo. Lo he hecho en cinco minutos. Por muy rápido que seas picando, seguro que tardas mas.

Sigue leyendo Azure Logic Apps. Como crearlas, gestionarlas y desplegarlas con Visual Studio

Cambiar al nuevo diseño en Azure DevOps

Hace unos meses que el equipo de Azure DevOps cambio el aspecto y la navegación radicalmente.

Puede que en su momento te apareciese un mensaje en el portal  para que cambiases al nuevo aspecto y le dijeras que no, o puede que ni te hayas dado cuenta y aún estés usando el «antiguo» aspecto. La cosa es que ya me ha pasado varias veces, que al compartir la pantalla con compañeros para enseñarles algo que estoy haciendo, me dicen que ellos no lo ven igual (por que no han activado la nueva versión, claro) y por eso me he decidido a colgar esta pequeña píldora para mostrar como cambiarlo. Es muy sencillo.

Haz clic sobre las opciones de usuario, arriba a la derecha y pulsa sobre «Preview features»

Sigue leyendo Cambiar al nuevo diseño en Azure DevOps

DevOps con Azure DevOps(III) – Crear una Build

Desde hace muy poco tiempo Visual Studio Team Services ha cambiado de nombre para pasar a llamarse Azure Devops y esto me ha obligado a cambiar el título de la serie de entradas en las que llevo trabajando un tiempo. A parte de eso y de todos los cambios de UI, la filosofía sigue siendo la misma. Ya hemos visto como crear una cuenta de Azure DevOps  y como crear un proyecto y añadir el repositorio de Git. El siguiente paso es crear y configurar una «Build» que se encargue compilar el código y generar los paquetes necesarios para automatizar el despliegue. Todo ello pensando en un futuro proceso de integración y despliegue continuo.

Sigue leyendo DevOps con Azure DevOps(III) – Crear una Build

Azure – Listar y exportar todos los recursos de un grupo de recursos con Azure PowerShell

Una pequeña píldora (y una chuleta para el futuro) antes de entrar en agosto. Me he encontrado ante la situación de  tener que hacer un pequeño inventario de todos los recursos que existen en los distintos entornos creados, tanto para tenerlos controlados como para comprobar que todos los entornos son iguales. Desde el portal de Azure no existe una opción para exportar el listado de recursos a un .csv, cosa que facilitaría la tarea. Pero podemos hacerlo con Azure PowerShell.

Sigue leyendo Azure – Listar y exportar todos los recursos de un grupo de recursos con Azure PowerShell

Como desactivar los servicios que no usas en la nueva interfaz de VSTS

Hace unos días se libero la nueva interfaz de Visual Studio Team Services (aquí el anuncio). Con la nueva interfaz cambia por completo la navegación dentro de la herramienta, y en mi humilde opinión, los cambios son a mejor. Dentro de estas mejoras, existe una característica (al menos, con la antigua interfaz no tengo constancia de que se pueda hacer) que nos permite eliminar del menú los servicios que no usemos. Vamos a ver como.

Sigue leyendo Como desactivar los servicios que no usas en la nueva interfaz de VSTS

Despliegue continuo en Azure con plantillas ARM

Las plantillas ARM (Azure Resource Manager) nos permiten parametrizar y automatizar la creación y despliegue de toda la infraestructura Azure necesaria en un proyecto (la web, el service plan, las bases de datos, etc…) permitiendo así la creación de nuevos entornos exactamente iguales en cuestión de minutos y sin esfuerzo. Además, como por defecto el despliegue es incremental, si modificamos algún elemento de la ecuación este se actualizará sin afectar al resto.

Vamos a ver como crear una plantilla ARM y como integrarla en el proceso de despliegue.

Sigue leyendo Despliegue continuo en Azure con plantillas ARM

Mi desencanto con Scrum

Hace tiempo que tengo ganas de escribir sobre este tema. Hace ya algunos años, las metodologías ágiles y mas en concreto Scrum entraron en mi vida como un huracán, me replantee el como había trabajado hasta ese momento y todo lo que no fuese gestión ágil, directamente me parecía «basura». Pero el tiempo y la industria me han puesto en mi sitio y en estos momentos tengo una gran sensación de desencanto y frustración con todo lo que tiene que ver con metodologías ágiles. Me explico un poco.

Sigue leyendo Mi desencanto con Scrum