Speaker

Luis Beltran

Luis Beltran

Microsoft MVP

Zlín, Czechia

I'm a Microsoft MVP in Developer Technologies and AI. I am currently pursuing a PhD in Engineering Informatics at Tomas Bata University in Zlin, Czech Republic.

I've been developing .NET apps for +10 years. I find C# a really powerful language which allow us to create different kinds of software. I focus on mobile apps (Xamarin), cloud computing (Azure) and AI.

I enjoy sharing my knowledge with others.

Awards

Area of Expertise

  • Information & Communications Technology

Topics

  • Azure Mobile Development Enterprise Architecture

Towards Responsible AI

When we talk about AI, we usually mean a machine learning model that is used within a system to automate something. For example, a self-driving car can take images from sensors. A ML model can use these images to make predictions (example: the object in front of us is a tree). The car uses these predictions to make decisions (example: turn left to avoid the tree). We refer to this entire system as Artificial Intelligence.

This is just an example. AI can be used for anything, from insurance underwriting to cancer detection. The defining characteristic is that there is no limited human involvement in the decisions the system makes. This can create many potential problems and companies need to define a clear approach to the use of AI. Responsible AI is a governance framework intended to do exactly that.

Responsible AI can include details about what data can be collected and used, and how the models should be implemented, evaluated and monitored. You can also define who is responsible for the negative results of the AI implementation. You can define specific approaches and others more open to interpretation. They all seek to achieve the same thing: to create AI systems that are interpretable, fair, secure, and respectful of user privacy.

The objective of this session is to talk about the responsible use of Artificial Intelligence in the generation of fair, equitable and explainable machine learning models.

Tips & tricks: Implementación de código específico de plataforma en .NET MAUI

.NET MAUI permite a los desarrolladores integrar código nativo para ampliar la apariencia de las aplicaciones móviles. Por un lado, se puede personalizar un control multiplataforma (o crear nuevas vistas) con una apariencia nativa usando Handlers. Por otro lado, puede escribir su propio código para acceder a las API específicas de la plataforma.

Para obtener lo mejor de estas capacidades, debe aprender algunos conceptos (Handlers, Property Mapper, compilación condicional, Multi-targeting) que pueden ser abrumadores.

El objetivo de esta sesión es brindar sugerencias sobre cómo simplificar la implementación de código específico de la plataforma en .NET MAUI mediante el uso de interfaces y clases parciales, por supuesto, con una excelente demostración.

Building responsible AI models in Azure Machine Learning

The implications of AI and the responsibility of organizations to anticipate and mitigate unintended consequences of AI technology are significant. Organizations are finding the need to create internal policies, practices, and tools to guide their AI efforts.

Principles such as fairness, reliability, and privacy, among others are the cornerstone of a responsible and trustworthy approach to AI, especially as intelligent technology becomes more prevalent in the products and services we use every day. Azure Machine Learning currently supports various tools for these principles, making it seamless for ML developers and data scientists to implement Responsible AI in practice.

Let's learn how to develop a responsible AI strategy using the Responsible AI dashboard components in Azure Machine Learning.

Understanding your documents with Form Recognizer

In this session we will learn about Azure Applied AI services, featuring Form Recognizer, which helps you to process receipts, invoices, documents, and extract their content (text) along with semantics (context, meaning).

For instance, you can send a pdf/image of an invoice to the service and you'll get the amount, subtotal, tax, customer information as a response.

Another capability of Form Recognizer is that you can train your own model, that is, submit your own documents to recognize custom, specific needs (such as information inside a table or text in header/text).

Hacia una Inteligencia Artificial Responsable

Cuando hablamos de IA, generalmente nos referimos a un modelo de machine learning que se usa dentro de un sistema para automatizar algo. Por ejemplo, un automóvil autónomo puede tomar imágenes de sensores. Un modelo de ML puede usar estas imágenes para hacer predicciones (ejemplo: el objeto que tenemos delante es un árbol). El automóvil utiliza estas predicciones para tomar decisiones (ejemplo: girar a la izquierda para evitar el árbol). A todo este sistema nos referimos como Inteligencia Artificial.

Esto es sólo un ejemplo. La IA se puede utilizar para cualquier cosa, desde la suscripción de seguros hasta la detección del cáncer. La característica definitoria es que no hay participación humana limitada en las decisiones que toma el sistema. Esto puede dar lugar a muchos problemas potenciales y las empresas deben definir un enfoque claro para el uso de la IA. La IA Responsable es un framework de gobernanza destinado a hacer exactamente eso.

La IA Responsable puede incluir detalles sobre qué datos se pueden recopilar y usar, cómo se deben evaluar los modelos y cómo implementar y monitorear los modelos de la mejor manera. También puede definir quién es responsable de los resultados negativos de la IA. Puede definir enfoques específicos y otros más abiertos a la interpretación. Todos buscan lograr lo mismo: crear sistemas de IA que sean interpretables, justos, seguros y respetuosos con la privacidad del usuario.

El objetivo de esta sesión es hablar del uso responsable de la Inteligencia Artificial en la generación de modelos de machine learning justos, equitativos y explicables.

IA y Accesibilidad: Mejorando la fluidez de lectura con Pronunciation Assessment

Pronunciation Assessment, una característica de Azure Speech Cognitive Service, proporciona una retroalimentación subjetiva y objetiva a los estudiantes de idiomas en el aprendizaje de idiomas asistido por computadora. Practicar la pronunciación y recibir comentarios oportunos son esenciales para mejorar las habilidades lingüísticas. Por lo general, la evaluación es dirigida por profesores experimentados, lo que normalmente requiere mucho tiempo y grandes esfuerzos, lo que hace que la evaluación de alta calidad sea costosa para los alumnos.

Pronunciation Assessment, una nueva capacidad de habla impulsada por IA, puede hacer que la evaluación del idioma sea más atractiva y accesible para los estudiantes de todos los orígenes, lo que hace posible practicar y mejorar su pronunciación para que puedan hablar y presentar con confianza.

Los educadores también pueden usar esta capacidad para evaluar la pronunciación de varios hablantes en tiempo real. Esto se demostrará durante la sesión mediante la presentación de una aplicación móvil multiplataforma que aprovecha la capacidad de Pronunciation Assessment de Azure Speech Cognitive Service.

AI for Accessibility: Improving reading fluency

Practicing pronunciation and getting timely feedback are essential for improving language skills. The assessment is conventionally driven by experienced teachers, which normally takes a lot of time and big efforts, making high-quality assessment expensive to learners.

Pronunciation Assessment, a feature of Speech in Azure Cognitive Services, and a novel AI driven speech capability, is able to make language assessment more engaging and accessible to learners of all backgrounds, making it possible to practice and improve their pronunciation so that they can speak and present with confidence.

Educators can also use this capability to evaluate pronunciation of multiple speakers in real time. This will be demonstrated during the session by creating a mobile application that implements the pronunciation assessment capabilities.

Adiós .NET MAUI Essentials. Bienvenida Integración de Plataforma en .NET MAUI

.NET MAUI ofrece APIs únicas de plataforma y sistema operativo para acceder a sensores e información sobre el dispositivo en el que se ejecuta una aplicación. Por ejemplo, es posible realizar la comprobación de la conectividad de red, obtener la ubicación geográfica del dispositivo o tomar fotografías.

Estas capacidades se integraban en el espacio de nombres MAUI.Essentials, pero ahora .NET MAUI separa estas API multiplataforma en diferentes áreas de funcionalidad y vamos a explorar en esta sesión algunas de ellas.

.NET MAUI Blazor - Construyendo aplicaciones web, móviles y desktop híbridas

Blazor nos permite desarrollar una UI interactiva usando C# en lugar de JavaScript o Frameworks Front-End. Con Blazor, es posible ejecutar código C# en el navegador del lado del cliente.

.NET MAUI te permite desarrollar aplicaciones móviles multiplataforma con C#. Para diseñar la interfaz, se utiliza XAML.

Si eres un desarrollador web, tal vez no te entusiasme aprender un nuevo lenguaje de marcado solo para desarrollar una aplicación móvil. Afortunadamente, Blazor Hybrid, también conocido como Blazor MAUI, es una forma de escribir aplicaciones móviles usando la misma sintaxis que los otros proyectos de Blazor.

En esta sesión veremos cómo crear una aplicación Blazor Hybrid, qué puede hacer y cómo reutilizar nuestros recursos existentes de Blazor en una nueva aplicación .NET MAUI para habilitar una única base de código de componentes de interfaz de usuario web para aplicaciones móviles, de escritorio y web nativas.

Migrating your Xamarin.Forms app to .NET MAUI

Let's see what it takes to migrate a Xamarin.Forms mobile app to a .NET MAUI Single Project. There are several considerations to take into account (including fonts, images, resources, namespaces and of course, code), so let's explore them through this session.

Drawing X-mas controls in mobile apps with Xamarin and .NET MAUI

Let's see how we can create custom controls to include them in our mobile apps using Shapes. In this themed session, we'll draw figures such as stars, Christmas trees, spheres and more!

Delivering personalized user experiences with Azure Personalizer

Azure Personalizer is a Cognitive Service (no ML expertise needed) that can be used to give users relevant experiences that improve over time, based on their behavior. Personalizer does not simply present recommendations from a large catalog, but the single best outcome for a user, every time they interact with your app.

In this session, I'll talk about the service and will demonstrate how relevant content that boosts usability and user satisfaction with reinforcement learning–based capabilities can be presented in applications using Azure Personalizer.

Clasificación de imágenes con ONNX, Custom Vision y Azure Functions

En este taller vamos a crear una Azure Function capaz de identificar objetos de interés en una imagen entrenando un modelo de clasificación ONNX a partir de algunas imágenes de muestra.

Se usará el SDK de Custom Vision en Python y la Azure Function usando Visual Studio Code. También aprenderemos sobre la CLI de Azure para administrar y crear recursos.

El objetivo es crear una API serverless capaz de clasificar imágenes.

CI/CD for Xamarin developers with GitHub Actions and AppCenter

In this session, I'll explain what it takes to build a Xamarin.Forms project and create the APK and IPA files.

We'll build a workflow to sign the applications for later distribution of the Android/iOS apps using AppCenter.

MVU vs MVVM en .NET MAUI

.NET MAUI permite a los desarrolladores escribir una interfaz de usuario C # fluida e implementar el patrón MVU.

MVU promueve un flujo unidireccional de datos y administración de estados, así como una experiencia de desarrollo basada en el código que actualiza rápidamente la interfaz de usuario aplicando solo los cambios necesarios.

En esta sesión desarrollaremos una aplicación móvil utilizando los patrones MVU y MVVM para conocer sus similitudes y diferencias.

Realidad mixta en apps móviles con Azure Spatial Anchors y Xamarin

Azure Spatial Anchors es un servicio y plataforma administrada de nube que permite ofrecer experiencias de realidad mixta (MR) y realidad aumentada en aplicaciones para HoloLens, dispositivos de iOS con ARKit y Android con ARCore conscientes del espacio físico que nos rodea.

En esta sesión exploraremos el servicio de Azure Spatial Anchors y lo aplicaremos en el desarrollo de una aplicación móvil multiplataforma que se ejecutará en Android y iOS para interactuar con objetos virtuales dentro de un entorno real, principio en el cual se basa la realidad mixta. Hablaremos también de los principios fundamentales de MR y las posibilidades que nos ofrece.

Voice biometry: Recognizing speakers in our apps

The Speaker Recognition service (a feature from Speech Cognitive Service) provides algorithms that verify and identify speakers by their unique voice characteristics.

Speaker Recognition is used to answer the question “who is speaking?”. You provide audio training data for a single speaker, which creates an enrollment profile based on the unique characteristics of the speaker's voice. Then you can cross-check audio voice samples against this profile to verify that the speaker is the same person (speaker verification), or cross-check audio voice samples against a group of enrolled speaker profiles, to see if it matches any profile in the group (speaker identification).

In this talk, I'll guide you through the process of enrollment, verification and identification of users by voice.

Implementación de Notificaciones Push mediante un backend .NET y Azure Notification Hubs

Cuando desarrollamos una aplicación, es deseable que los usuarios hagan uso de la app de forma activa. En ocasiones deseamos compartirles noticias de última hora, actualizaciones de juegos o productos o cualquier otra información relevante con sus usuarios. Para aumentar el compromiso con sus usuarios y hacer que regresen a la aplicación, necesitamos una forma de comunicarnos con ellos en tiempo real.

Las notificaciones automáticas proporcionan una forma rápida y eficiente de comunicarse con los usuarios de una aplicación en el momento adecuado y avisarles sobre algo nuevo, generalmente en un elemento emergente o cuadro de diálogo en un dispositivo móvil, independientemente de lo que estén haciendo.

En esta sesión se desarrollará un backend web API ASP.NET Core para manejar el registro de dispositivos para el cliente y también para enviar notificaciones push hacia los usuarios apoyándose de Azure Notification Hubs para enviar notificaciones a una aplicación móvil creada con Xamarin.Forms (Android/iOS).

Building serverless automation solutions: a use case scenario

Serverless architectures can be used to deliver automation-based solutions in order to save time, increase productivity and contribute to a more efficient use of technologies.

In this session, we will demonstrate how to build a serverless automation solution for post-conference activities, bringing added value with minimal effort.

Several technologies will be involved in this use case scenario:
- Graph API, Microsoft Teams Webinars, Microsoft Forms, Outlook, and Azure Blob Storage for attendees data and feedback
- Logic Apps, Azure Functions, and Power Automate for building an automation workflow
- SQL Server and PowerBI to present stats and reports

Creating PDF files in mobile apps with PdfSharpCore and MigraDocCore

PDFsharpCore and MigraDocCore are Open Source .NET libraries that can be used to easily create and processes PDF documents on the fly in our Xamarin applications.

Handling documents with paragraphs, tables, styles, images, etc. and rendering them into PDF is possible with these libraries for free even in commercial applications, so in this session we'll see what it takes to develop a mobile application that creates PDF documents in several scenarios.

Azure Cognitive Service: Bring AI to your applications in 3 steps!

Cognitive Services brings AI within reach of every developer—without requiring machine-learning expertise. All it takes is an API call to embed the ability to see, hear, speak, search, understand, and accelerate decision-making into your apps. Cognitive Services enable developers of all skill levels to easily add AI capabilities to their apps.

In this session, we'll talk about Cognitive Services in general, then we'll demonstrate how to infuse AI in some applications with 3 simple steps: Create the resource in Azure, get the keys, call the API!

Empoderando a personas de todas las habilidades con Azure Immersive Reader

Azure Immersive Reader es una herramienta de diseño inclusivo que permite a los desarrolladores crear software que mejora la comprensión de lectura para nuevos lectores, estudiantes de idiomas y personas con dificultades de aprendizaje como la dislexia.

También puede usar este servicio cognitivo en sus aplicaciones para resaltar texto, mostrar imágenes relacionadas a palabras, leer texto seleccionado en voz alta, traducir palabras en tiempo real, y más.

Esta sesión se centrará en explicar el servicio y se creará una aplicación web que utiliza la biblioteca cliente de Immersive Reader para demostrar sus ventajas en apoyo a personas con discapacidad.

Serverless: Desarrollo de aplicaciones activadas por eventos

La nube nativa y serverless están permitiendo nuevos patrones para que los equipos y las organizaciones ofrezcan valor con mayor agilidad.

Esta sesión mostrará patrones impulsados ​​por eventos en Azure Functions, contenedores, Kubernetes y mensajería para que pueda comprender mejor dónde encajan los microservicios impulsados ​​por eventos y qué opción funcionará mejor para su equipo.

Image Recognition in WhatsApp chatbot with Azure AI

The concept of recognizing images might seem like a challenge, but with the help of Computer Vision's image recognition API, you can describe the contents of a given image.

In this session, we’ll walk you through how you can develop a functional chatbot that identifies media content using Twilio WhatsApp API, Cognitive Services (Computer Vision and LUIS), and Azure Functions.

Reconocimiento de objetos en videos con Azure Video Indexer y Custom Vision

En este workshop exploraremos cómo combinar el poder de Video Indexer y Azure Custom Vision en una aplicación que nos permita reconocer cubrebocas (mascarillas / barbijos) en videos.

Mientras Video Indexer nos proporciona información detallada de lo que sucede en un video (subtítulos, personas, tópicos), también nos proporciona fotogramas con su descripción general. Sin embargo, tal vez requerimos que dichas imágenes sean asociadas a clases específicas.

Ahí es donde entra Custom Vision. Podemos entrenar un modelo con imágenes que representan las distintas etiquetas que se desea reconocer. A continuación, pasamos los fotogramas al detector de objetos generado con Custom Vision y se pueda reconocer la presencia (o no) del elemento específico. Ésa es la idea que vamos a reflejar en este taller.

Let's play Rock, Paper, Scissors with ML.NET!

Image classification refers to the task of assigning a label to an image. You can use ML.NET's powerful API to learn features from labeled images and then train a model that recognizes if an image contains any of the target classes.

Let's demonstrate how to perform image classification with ML.NET and then have some fun by incorporating the output model in a Rock, Paper, Scissors game where players use hand signals in front of a camera. The application takes the photo, sends it to the model, and returns the tag, which is in turn sent back to the application to determine the result.

Cómo crear un ciclo completo de BD, AKS y Frontend en 60 minutos o le devolvemos su dinero

En esta sesión veremos un ciclo completo de una solución de software, desde la base de datos hasta la implementación en un frontend. Todo en menos de una hora.

Tecnologías involucradas:
- Implementación y administración de Azure PostgreSQL
- Cloud Native con Azure Kubernetes Service
- Azure Video Indexer para procesamiento y análisis de videos

Building database interactions with users through chatbots

The development of Artificial Intelligence is increasingly present in our lives and as time goes by, its presence will grow thanks to the momentum that enterprises are currently providing.

One of the most engaging AI applications is chatbots, which interact with users in real-time to assist them to perform a task -such as booking a hotel, answering a question or looking for specific information on the Internet- while simulating that a real human is behind the scene.

Data is knowledge, and the data that has been stored in your Azure SQL database can be used as an input for a bot which assists a company's customers in order to process the information for them and return expected results.

This session will be focused on explaining the actors involved when building a bot capable of obtaining data from your storage, including Azure SQL Database, Microsoft Bot Framework and LUIS (Language Understanding Intelligent Services). And you can integrate your bot on different channels such as Facebook Messenger, Microsoft Teams or even in your own website/app through Direct Line.

Azure Video Indexer: Advanced metadata extraction from video and audio content

Video Indexer provides the ability to extract deep insights from video and audio (without the need for data analysis or coding skills) using multi-channel (voice, visual) based machine learning models.

The service enables deep search, reduces operational costs, enables new monetization opportunities, and creates new user experiences on large video archives.

We are going to explore the service and create an app that obtains information from multimedia files.

Análisis de transmisiones en vivo con Azure Video Indexer

Azure Media Services Video Indexer es un servicio de nube diseñado para analizar y extraer información detallada (palabras, texto escrito, rostros, personas, emociones, temas, marcas...) de archivos multimedia ya creados de antemano. Sin embargo, para algunos casos de uso, es importante obtener la información de los medios de una transmisión en vivo lo más rápido posible. Por ejemplo, los productores de contenido podrían utilizar los metadatos en una transmisión en vivo para automatizar la producción de televisión.

En esta sesión explicaremos una solución que permite utilizar Video Indexer en el análisis casi en tiempo real de transmisiones en vivo; esta solución integra otros servicios de Azure, como Logic Apps, Azure Functions, Azure Media Player y CosmosDB.

Developing a serverless WhatsApp chatbot

Chatbots are AI software capable of interacting with users in natural language. They are able to detect users' intentions by extracting keywords from their messages and then provide an appropriate response to their requests. They are important nowadays as they can be used for repetitive, time-consuming tasks in effective ways, allowing companies to focus in other activities and optimize resources (especially human resources).

Microsoft provides LUIS and Bot Framework to develop and create bots the easy way. Without being an AI-expert, you can develop and deploy conversational bots. Add Azure Bot Service to the equation and you'll have a bot connected to the cloud which can be inserted in several channels, such as Skype, Microsoft Teams, Facebook Messenger and even to your website through the WebChat channel with very few configuration steps.

However, some channels are not currently available in the Azure Bot Service offer. WhatsApp, the most popular messenger app with 1.6 billion monthly users as of July 2019 is a notable example. And our customers would love to communicate with our apps through this messenger application.

So, how can we tackle this problem? Azure Functions to the rescue! We can simplify things by creating a serverless code that is connected to a WhatsApp number through webhooks. This means that an Azure Function will be triggered every time a user sends a message to this number. And we can infuse intelligence in the reply by connecting it to a LUIS model for natural language processing. In short, we will be using three technologies:

* LUIS (Language Understanding Intelligent Service)
* Azure Functions
* Twilio API (for accessing WhatsApp)

ML.NET: Machine Learning (and deep learning!) for the C# developer

ML.NET is an open-source framework for machine learning that is available for .NET developers (C# / F#) that allows you to train, build and deploy ML models for several scenarios: sentiment analysis, value prediction, even image classification. The models can be saved and consumed from other applications (web, desktop, mobile).

Let's explore what ML.NET has to offer to the C# developer and demonstrate several scenarios (including deep learning) as we understand its powerful capabilities. Even if you are initiating your machine learning experience, you can start creating ML solutions!

Incorpora Inteligencia Artificial en tu negocio con AI Builder

AI Builder es una capacidad de Power Platform que mejora el rendimiento de tu empresa con herramientas para automatizar procesos y predecir resultados. Puedes incorporar rápidamente inteligencia artificial a aplicaciones y flujos que se conectan a datos empresariales almacenados en Microsoft Dataverse o en SharePoint, OneDrive o Azure.

En esta sesión crearemos un modelo de IA utilizando las herramientas de AI Builder de una forma ágil y sencilla, sin necesidad de escribir código.

Transfer Learning en Deep Learning utilizando TensorFlow & ML.NET

Transfer Learning es una técnica de Machine Learning en la que un modelo desarrollado inicialmente para una tarea específica sirve ahora como punto de partida para otro modelo en una segunda tarea más general. Es bastante útil en Deep Learning, ya que los recursos informáticos y de tiempo son limitados, por lo que un modelo previamente entrenado se puede utilizar como entrada para una tarea de procesamiento de lenguaje natural o visión por computadora.

Demostremos cómo funciona Transfer Learning en ML.NET explorando el siguiente escenario:

- En primer lugar, se incorporará un modelo de ML pre-entrenado Inception (TensorFlow) en un flujo de trabajo ML.NET.

- Luego, Transfer Learning se aplica a este modelo utilizando la API de clasificación de imágenes ML.NET para crear un nuevo modelo de Machine Learning personalizado que identifica categorías de imágenes. Todo el conocimiento adquirido al resolver el problema de clasificación inicial es útil para reducir el tiempo de entrenamiento y resolver una segunda clasificación.

- Si el tiempo lo permite, podemos implementar este modelo en una API web para su consumo desde otra aplicación (como una aplicación móvil)

Open XML SDK - Managing Office docs from your .NET apps

OpenXML SDK for Office is an open-source package that allows you to create, edit and manage Word, Excel, and Power Point documents in .NET applications.

In this session, let's discover what OpenXML SDK offers in terms of functionality, and explore sample scenarios, such as creating a document letter, adding charts in an spreadsheet, opening, searching and editing Office documents or even adding slides in presentations.

Dockerize your Machine Learning models

When creating a machine learning model with Python, a common question is how to make the solution available for consumption from client apps or even for testing.

The objective of this session is to explain how a portable and consumable machine learning solution can be integrated within external applications.

This session is 100% practical and we will use the following technologies:

* Python (and various libraries) to create a classification Machine Learning model
* SQLite or SQL Server as data repository
* ASP .NET Core for the API the apps will connect to in order to consume the ML model
* Docker to create a container that includes the entire solution
* (If time allows it) A mobile application in Xamarin to interact with the implemented ML solution

Cosmos DB + Azure Functions: A serverless database processing

With the native integration between Cosmos DB and Azure Functions, you can create database triggers, input bindings, and output bindings directly from your account.

Using Azure Functions and Cosmos DB, you can create and deploy event-driven serverless apps with low-latency access to rich data for a global user base.

In this session, we'll explore what it takes to setup a serverless environment capable of performing CRUD operations on a Cosmos DB account, as well as some recommendations and use cases.

Clasificación de imágenes usando Deep Learning en ML.NET

ML.NET es un framework open-source para desarrollares .NET que desean construir, entrenar e implementar modelos de machine learning para diferentes escenarios: análisis de sentimientos, predicción de valores, clasificación de imágenes y más, con la posiblidad de guardar el modelo y exportarlo para su uso en otro tipo de aplicaciones (web, consola, móvil, etc)

En esta sesión exploraremos ML.NET y demostraremos su uso mediante la creación de un modelo clasificador de imágenes que utiliza deep learning.

Microsoft Graph: Connecting to the data that drives productivity

Microsoft Graph is the gateway to data and intelligence in Microsoft 365. It provides a unified programmability model that you can use to access the tremendous amount of data in Microsoft 365, Security, and other services.

In this session we will explore the Microsoft Graph API to enable our apps (in this case, a Xamarin mobile app) to interact with several Office 365 services including Teams and One Drive in a simple, efficient way.

We will also use the Open Office SDK to create Excel and Word documents from our application that will be uploaded to One Drive using the Microsoft Graph API.

We will also cover the topic of authentication, since this app will be registered to Azure AD so only authorized users can access it.

Developing Enterprise mobile apps with Xamarin and .NET

.NET is the framework to develop everything, mobile applications included. It is a complete platform that allows you to integrate several services and libraries in order to build useful applications.

In this session I'll explain how to build a mobile application:
* with a great design
* which uses Office 365 authentication
* which creates Word and Excel documents using Open XML SDK
* which uses Graph API to share documents and information between members
* which adds AI capabilities using Azure Cognitive Services

All in one hour!

Xamarin.Forms 5: Desarrollo veloz de hermosas apps móviles con menos código

Xamarin.Forms 5 viene equipado con nuevas características para hacer más fácil que nunca desarrollar apps cross-platform rápidamente y con un diseño atractivo. En esta sesión veamos lo nuevo que ofrece Xamarin.Forms 5, así como una revisión al Xamarin Community Toolkit.

Using your database for Machine Learning with ML.NET

ML.NET is an open-source framework for machine learning that is available for .NET developers (C# / F#) that allows you to train, build and deploy ML models for several scenarios: sentiment analysis, value prediction, even image classification. The models can be saved and consumed from other applications (web, desktop, mobile).

To accomplish this ML.NET accepts data that comes from files, in-memory lists and also, databases.

In this session, I'll explain what is ML.NET and how to build a ML model from data that is stored in an Azure SQL database. The connection will be made through Model Builder (integrated in Visual Studio) and also from C# code (thanks to the ML.NET API).

Developing a puzzle mobile app!

During X-mas, it is quite common to spend time with your beloved ones talking about life and playing games. One of the most challenging ones is puzzles, and I can teach you how to create a puzzle mobile application game with Christmas pictures that will amaze your friends.

This session is about having fun developing a Xamarin mobile application, which is a Microsoft technology for Android and iOS apps creation using C#.

Helping Santa with the power of Azure AI

Santa has a lot of work during this season. From reading each letter to preparing & delivering gifts, can we help him somehow to reduce his workload?

Enter Azure Cognitive Services, a set of AI services ready-for-use in our applications. For instance, we can use OCR capabilities to retrieve the text of a letter, then process it with Text Analytics to analyze the sentiment and decide if it should go into Santa's Naughty or Nice List.

In this blog post, I will explain how to create a mobile application which uses the aforementioned services to scan a letter and analyze it to assist Santa in this hard-working task.

Deep Learning in Xamarin apps! Enter ML.NET

ML.NET is an open-source framework for machine learning that is available for .NET developers. We can train, build and deploy ML models for several scenarios: sentiment analysis, value prediction, and image classification with deep learning. The models can then be saved and consumed from other applications (web, desktop & mobile for instance, mainly exposing it as a REST API).

In this session, we will explore ML.NET and the above scenarios. Then, we'll create a deep learning model for image classification that will be saved & included in a REST API to make this ML task available to a Xamarin mobile app that sends images as part of a request to a server.

ML.NET + Azure Functions = Serverless Machine Learning

Azure Functions proporciona una manera sencilla de ejecutar pequeños fragmentos de código a escala en un entorno administrado "sin servidor" en la nube. Su versatilidad llega al punto de que es posible desplegar en la nube modelos de machine learning previamente entrenados con ML.NET para realizar predicciones en escenarios controlados por eventos, tales como solicitudes HTTP, horarios programados o incluso justo después de cargar un nuevo archivo.

En esta sesión explicaremos cómo crear un modelo de predicción de machine learning con ML.NET que se integra en una Azure Functions para ser ejecutada cada vez que un nuevo archivo (blob) es añadido en un contenedor de Azure Storage.

Introducción a MVU con Comet

Durante el pasado Microsoft Build 2020, .NET MAUI fue anunciado como la propuesta de un .NET unificado que permitirá a los desarrolladores enfocarse en una experiencia de un solo proyecto, implementando no solo en múltiples dispositivos sino también en plataformas.

Si bien .NET MAUI admitirá los patrones conocidos MVVM y XAML, su hoja de ruta también incluye una oportunidad para aprender y aprovechar las ventajas de patrones modernos, como es el caso de MVU.

La pregunta es: ¿cómo puedo prepararme para desarrollar aplicaciones de C# fluidas? Conoce Comet, un nuevo prototipo de Framework UI para escribir interfaces de usuario de aplicaciones que sigue el patrón MVU, soporta Hot Reload y permite compilar la app en múltiples plataformas: móvil (Xamarin Forms/nativo), desktop (WPF, Mac OS), web (Blazor) con C#.

Si bien está en fase experimental y se considera una prueba de concepto, sin duda es un enfoque interesante que ayudará a prepararte para lo que viene en la evolución de Xamarin cuando llegue .NET MAUI

En esta sesión discutiremos los conceptos básicos de MVU y hablaremos de Comet con código, demos y conceptos esenciales.

Developing an object detector solution with Azure Custom Vision .NET SDK

Azure Custom Vision is a cognitive service that lets you build, deploy, and improve image classifiers that adapt to your needs without a background in AI advanced techniques.

One of Custom Vision functionalities is Object Detection, which both identifies a target element in a picture and returns its location (coordinates) in the image. This is particularly useful in scenarios where there are several objects but only one of them is relevant.

In this presentation, the Custom Vision service will be described, with focus on how to deliver an object detection model by using the .NET SDK. This model can be accessed by applications either in online (by using the Prediction API) or offline modes (by exporting it to a platform, such as TensorFlow), and some cases will be demonstrated in a mobile application.

Construyendo un bot de música de videojuegos

En esta sesión describiré la solución tecnológica que se desarrolló para una comunidad internacional de fans de la música de videojuegos que consiste en un bot que interactúa con los usuarios de un chat de streaming en YouTube y que por medio de comandos reproduce canciones, añade nueva música a la colección, y más funciones.

Este bot fue construido utilizando tecnología de Google (YouTube API & Google Sheets) y Microsoft (Azure Functions, WPF & web apps, Azure Storage, etc).

¡Mostraré las bases para que puedas construir tu propio bot musical!

Transfer Learning for Deep Learning: From Custom Vision to TensorFlow & ML.NET

Transfer learning is a machine learning technique in which a model that was developed for an initial task serves now as the starting point for a model on a second duty. It is quite useful in Deep Learning since compute and time resources are limited, so you a pre-trained model can be used as an input for a computer vision or natural language processing task.

Let's demonstrate how Transfer Learning works in ML.NET by exploring the following scenario:

- Firstly, an Azure Custom Vision image classification model that uses the Open Images Dataset is trained, published and exported to TensorFlow.

- Then, transfer learning is applied to this model using the ML.NET Image Classification API in order to create a new, custom deep learning model to identify specific image categories. All the knowledge gained when solving the initial classification problem is useful for shortcutting another training process and solve a second classification.

Developing C# bot apps for Microsoft Teams

Microsoft Teams is the hub for team collaboration which integrates people and tools to improve productivity within your organization. From chat-based collaboration to web conferences, it brings effectivity within your business to the next level.

Customizing your Microsoft Teams workspace is possible thanks to the developer platform, which allows you to extend the capabilities of the product and roll your own custom applications into your organization. Furthermore, these solutions can be distributed publicly to other enterprises, either for free or with a price, via AppSource, the Microsoft ecosystem for app publication.

In this session, the following real-case scenario will be explored: A C# bot application which uses LUIS and the Bot Framework SDK understands users’ messages and retrieves information from an Azure SQL Database through an ASP .NET Core Web Api. The app is hosted on Azure. AppStudio, a tool integrated in Microsoft Teams, is used to publish an app package, then register it in Teams and finally publish it for distribution and testing within your Teams workspace members.

Serverless mobile database access with Azure Functions, Xamarin and SQLAzure

In this session, I will talk about Azure Functions, which is Microsoft serverless computing platform which allows developers to direct their attention to event and application scenarios rather than having to worry about the infrastructure.

With a range of more than 50 scenarios/templates available in Azure Functions, we will focus our attention on designing functions that interact with SQL Azure databases according to events, for instance an HTTP request on demand that allows to add information in a table or a data cleansing process that runs every day periodically at a specific time.

In addition, I will demonstrate how to combine several powerful technologies available in Azure Functions. They can be used as a backend which connects to a SQL Azure database and then sends emails to customers by using SendGrid. Everything will be consumed from an Android mobile application developed with Xamarin.

IA enriquecida con Azure Cognitive Search

El enriquecimiento de Inteligencia Artificial es una capacidad de indexación de Azure Cognitive Search que habilita la extracción de información en imágenes, archivos y otras fuentes de datos no estructurados.

Las tareas de extracción y enriquecimiento se implementan a través de habilidades cognitivas, tales como el procesamiento del lenguaje natural y el procesamiento de imágenes con varias posibilidades: reconocimiento de entidades, detección de lenguaje, detección de sentimientos, OCR, detección de rostros, etc.

En esta sesión se describirá el servicio Azure Cognitive Search y se construirá un pipeline de enriquecimiento capaz de extraer información de documentos PDF con el cual se generará un sitio web o una app móvil para realizar búsquedas de información.

Construyendo un clasificador de imágenes offline y móvil con Azure Custom Vision y Xamarin

Azure Custom Vision permite crear poderosos clasificadores de imágenes en cuestión de minutos sin requerir una expertiz compleja en inteligencia artificial. Simplemente alimenta el servicio con imágenes para que éste se adapte a tus propias necesidades, etiquétalas y entrena un modelo que puede ser publicado en línea, disponible para ser utilizado por tus aplicaciones. El servicio cuenta con un SDK que te permite automatizar el proceso.

Mejor aún, este modelo puede ser exportado como paquete (Tensorflow, CoreML, ONNX), ideal para escenarios offline con resultados en tiempo real (sin latencia), típico de aplicaciones móviles (o web).

En esta sesión el servicio Custom Vision será descrito. Posteriormente, un clasificador de imágenes será creado utilizando el SDK disponible para .NET a partir de miles de imágenes. El modelo producido será exportado en formatos Tensorflow y CoreML para integrarlo en aplicaciones móviles de Android e iOS, respectivamente.

Building real-time image classifiers for mobile apps with Azure Custom Vision

Azure Custom Vision allows you to create powerful image classifiers in minutes to without having to be an AI expert. You feed the service with images -so the service adapts to your own needs-, tag them and train a model that can be published to an endpoint URL for further requests. You can also use the Custom Vision SDK to automatize the process.

Furthermore, this model can also be exported for offline, real-time classification experiences. For instance, you can embed the classifier into a mobile application, or a website.

In this session, the Custom Vision service will be described. An image classifier will be created by using the .NET SDK and thousands of images. The output model will be exported to both Tensorflow and CoreML to integrate it into an Android and iOS mobile applications, respectively.

AI enrichment with Azure Cognitive Search

AI enrichment is a capability of Azure Cognitive Search indexing that is used to extract latent information from images, blobs, and other unstructured, non-text data sources - enriching the content to make it more searchable in an index or knowledge store.

Both extraction and enrichment tasks are implemented through cognitive skills such as natural language processing and image processing skills with several possibilities: Entity recognition, language detection, sentiment detection, OCR, face detection...

In this session, the Azure Cognitive Search service will be explored and described. Then, an enrichment pipeline capable of extracting information from PDF documents will be built in order to demonstrate a use case scenario, along with requirements, costs, related Azure services and a website/mobile app that allows users to look for information from the PDF files.

Acceso serverless a tus bases de datos desde apps móviles: Azure Functions, SQL Azure & Xamarin

Azure Functions es la plataforma de cómputo serverless de Microsoft que permite a los desarrolladores enfocar su atención en escenarios de eventos y aplicaciones sin tener que preocuparse por la infraestructura.

Es posible diseñar funciones que interactuan con bases de datos SQL Azure basadas en eventos, por ejemplo una petición HTTP bajo demanda que permite insertar datos o programar un proceso de limpieza de tablas que se ejecuta periódicamente a una hora específica.

En esta sesión demostraré que es posible combinar varias tecnologías para generar una solución poderosa. Azure Functions puede ser utilizado como un backend que se conecta a una base de datos SQL Azure para enviar correos electrónicos (con SendGrid). Una app móvil diseñada con Xamarin será la encargada de orquestar todo el proceso.

Boost your business reliability with Azure Anomaly Detector

Time-series data is more than just numbers. Identifying patterns and trends is important, but monitoring and detecting abnormalities in your data are relevant tasks that helps businesses to adapt and solve problems.

Anomaly Detector is an Azure AI service that helps you foresee problems before they occur. Through an API, this service ingests time-series data and selects the best-fitting detection model for your data to ensure high accuracy.

In this session, the Anomaly Detector service will be described, including terms, algorithms, parameters, costs, and best practices. A mobile app that analyzes time-series data and finds anomalies will be used to demonstrate the service.

Build a mobile chatbot with Xamarin & Bot Framework

The development of Artificial Intelligence is increasingly present in our lives and as time goes by, its presence will grow thanks to the momentum that enterprises are currently providing.

One of the most engaging AI applications are chatbots, which allow users to interact in real-time with a smart entity which assists them to perform a task -such as booking a hotel, answering a question or looking for specific information on the Internet- while simulating that a real human is behind the scene.

This workshop will help attendees to build three things:

* A LUIS application capable of understand and process users' messages to get the intention and important entities within the message.
* A web application which contains all the bot logic. This is built by using Bot Framework and will be published in Azure.
* A cross-platform mobile app built with Xamarin which makes use of the bot application by sending requests (from users) and listening to replies (from the bot).

Exploring the Microsoft Azure AI Engineer Associate Certification

Do you use Cognitive Services or Machine Learning to architect and implement AI solutions involving natural language processing, speech, computer vision, bots, or agents?

Say no more, you can become a Microsoft Azure AI Engineer Associate! And if you don't use them, don't worry, you can learn and create powerful AI models!

In this session, we'll explore the Training Path for the AI-100 Microsoft Certification Exam by explaining the concepts and demos which will give you an insight for the certification. We'll get useful experience on:

* Azure Machine Learning Studio for publishing ML experiments.
* Azure Cognitive Services usage for speech translation, image classification, and texr evaluation tasks.
* Bots implementation with Azure Bot Service

We'll also talk about best-practices, recommendations and advices on Azure AI services in this session.

Deploying local bots with Bot Framework and LUIS Docker containers

Bot Framework allows developers to seamlessly build conversational bots which can later be published to services such as Slack, Skype, Messenger and more! However, there might be particular cases in which bots need to be deployed as local services (e.g. Intranets, data compliance, limited external-networks access) and also use language understanding capabilities.

Enter Docker containers. Certain Azure Cognitive Services can now be deployed as containers to deliver AI-driven solutions which doesn't send the data to an external network but to an internal server. One of these services is LUIS, which provides query predictions and whose packages can be integrated in the server for local consumption.

In this session, the following scenario will be explored: A cross-platform mobile app which establishes a connection to a bot (which was created by using Bot Framework and which uses a LUIS package produced from utterances and examples) that is used by customers who want to obtain products and services information. Data comes from a local SQL Server database.

.NET Conf - Bhubaneswar

January 2022

Cumbre Virtual 2021

December 2021

Build Stuff 2021 Lithuania

November 2021 Vilnius, Lithuania

DevOps Conf 2021

October 2021

Data Saturday Sofia

October 2021 Sofia, Bulgaria

Azure Serverless Conf

September 2021

Jornada 10 años de comunidad - Asp .Net (Español)

September 2021

Azure Summit

September 2021

Azure Back to School 2021

September 2021

Azure AI Summit

August 2021

Data ANZ

June 2021

Global AI On Virtual Tour 2021

June 2021

Global Azure 2021

April 2021

A.I. Day 2021

March 2021

CodeGen 2021

February 2021

Microsoft 365 Friday California 2021

January 2021

Global AI Bootcamp 2020

January 2021

Cloud Lunch and Learn

January 2021

Festive Tech Calendar

December 2020

LightUp

July 2020

Global Azure 2020 - Munich

April 2020 Munich, Germany

Global Azure Virtual

April 2020 Seattle, Washington, United States

Global AI Bootcamp

December 2019 Munich, Germany

Xamarin Developer Summit

July 2019 Houston, Texas, United States

Microsoft Build

May 2019 Seattle, Washington, United States

Global Azure Bootcamp 2019 Munich

April 2019 Munich, Germany

Luis Beltran

Microsoft MVP

Zlín, Czechia