Miguel Bernard

Information & Communications Technology

C# F# Azure ASP.NET .NET .net core Azure Service Fabric csharp fsharp CSLA .NET ASP.NET Core Visual Studio / .NET .NET Standard Visual Studio DDD TDD TDD & BDD eventsourcing Event Storming event-driven architecture Software Development Cloud Architecture messaging

Montréal, Quebec, Canada

Miguel Bernard

Microsoft MVP | Passionate about sharing technical knowledge | Director of Engineering @ Nexus Innovations

Miguel is passionate about teaching, developers' communities and everything related to .Net. Having over 10 years of experience with Microsoft Technologies, he developed many specializations, including C#, F#, Azure, and DevOps practices. He enjoys sharing his knowledge through his blog and by presenting at user groups and conferences. He is very involved in the Montréal MSDEVMTL user group, where he is a co-organizer.

Miguel Bernard

Directeur de l'ingénierie chez Nexus Innovations

Miguel est passionné par le partage de ses connaissances, les communautés de développeurs et tout ce qui touche .Net. Ayant plus de 10 ans d'expérience avec les technologies Microsoft, il a développé plusieurs spécialisations, incluant C#, F#, Azure et les pratiques DevOps. Il aime partager ses connaissances par son blogue et en présentant à des groupes d'usagers .Net et lors de conférences. Il est très impliqué dans le groupe d'usagers MSDEVMTL à Montréal, où il est l'un des coorganisateurs.

Current sessions

Property-Based testing EN FR

Property-based testing is an alternative approach to example-based unit testing techniques.

This approach is designed to test the aspects of a property that should always be true. It allows for a range of inputs to be programmed and tested within a single test, rather than having to write different tests for every value that you want to test.

We'll go over the tools required to get started with property-based testing and understand how they work.

We'll also build a real test suite to demonstrate their power.

Level 300, 60 minutes


Tests par propriété EN FR

L'approche de tests par propriétés est une alternative aux techniques de tests basés sur des exemples.

Cette approche est conçue pour tester les aspects d'une propriété qui doit toujours être vraie. Ceci permet de couvrir un grand éventail de valeurs d'entrées programmatiquement et de tester celles-ci en un seul test. Contrairement aux tests basés sur des exemples où l'on doit faire un test pour chaque exemple.

Nous couvrirons les outils requis pour débuter à utiliser les tests par propriété.

Nous construirons ensemble une suite de tests afin de démontrer la puissance de cette approche dans un cas réel.

Niveau 300, 60 minutes


Domain-Driven Design Architecture EN FR

Discover how to design an application using:
- A ubiquitous language
- Bounded contexts
- Aggregate roots
- Entities
- Value objects

The goal of Domain-Driven Design is to build a model that is more aligned with the business, compared to N-Tier architecture styles where the focus is more on the technology side.

We'll explore the 'onion' architecture, which provides a better decoupling than traditional models.

Takeaways:
- New modelization techniques
- An efficient way to validate business rules
- Application designs that are more aligned with customer realities

Level 300, 60 minutes


Introduction to functional programming with F# EN FR

Cloud applications can greatly benefit from Functional Programming, as this approach fixes many of the Object-Oriented Programming (OOP) weaknesses and complexities.

Functional Programming is often misunderstood, we'll make sure to bust a few myths so you have a clearer picture of what it is and how it works.

Key takeaways:
- A better understanding of what Functional Programming is
- Categories of problems that Functional Programming is great at solving
- Tips and tricks to integrate Functional Programming in your day-to-day work

Level 300, 60 minutes


Architecture orientée par domaine d'affaires EN FR

Découvrez comment concevoir une application en utilisant:
- Un langage universel
- Des contextes
- Des agrégats
- Des entités
- Des objets-valeur

Le but premier de l'architecture orientée par domaine d'affaires est de construire un modèle qui est aligné avec les gens d'affaires. Contrairement aux architectures N-Tier qui sont plus concentrées sur le côté technologique.

Nous explorerons l'architecture 'onion' qui permet un meilleur découplage que les modèles traditionnels.

Points clés:
- Nouvelles méthodes de modélisation
- Une manière efficace de valider des règles d'affaires
- Conceptions d'applications qui sont alignées davantage avec la réalité des clients

Niveau 300, 60 minutes


Introduction à la programmation fonctionnelle avec F# EN FR

Les applications cloud peuvent grandement bénéficier de la programmation fonctionnelle. Cette approche apporte des solutions à plusieurs des problèmes complexes vécus avec la programmation orientée objet (OOP).

La programmation fonctionnelle est souvent mal comprise. Durant cette session, nous nous assurerons de démystifier plusieurs mythes à son égard. Ainsi, vous aurez une meilleure compréhension du fonctionnement de cette approche de programmation.

Points clés:
- Meilleure compréhension de la programmation fonctionnelle
- Catégories de problèmes pour lesquelles la programmation fonctionnelle est très bien adaptée
- Trucs et astuces pour intégrer la programmation fonctionnelle à votre travail de tous les jours

Niveau 300, 60 minutes


C# 9.0 New features EN FR

Following last November release of C# 9.0, let's take a look at:
- Records
- Primary constructors
- Top-Level programs
- Init-only properties
- Target-typed expressions
- Improved pattern matching
- Partial methods improvements
- And much more!

C# is one of the most popular languages in the industry and keeps growing year after year. Discover these new features and how they work.

We'll cover the new syntax and keywords through many demos.

Takeaway: a new set of tools to put into your toolbox to keep your code clean, maintainable, and efficient.

Level 300, 60min


Nouvelles fonctionnalités C# 9.0 EN FR

Pour faire suite à la sortie de C# 9.0 en novembre dernier, nous regarderons plus en détail les nouveautés suivantes:
- Records
- Primary constructors
- Top-Level programs
- Init-only properties
- Target-typed expressions
- Improved pattern matching
- Partial methods improvements
- Et beaucoup plus!

C# est l'un des langages les plus utilisés dans l'industrie et ne cesse de grandir tous les ans. Découvrez ces nouvelles fonctionnalités et leur utilisation.

Nous couvrirons les nouvelles syntaxes et nouveaux mots-clés par des démonstrations.

Points clés: un nouvel ensemble d'outils à mettre dans votre boite à outils, afin de garder votre code en bonne santé, augmenter la maintenabilité et l'efficience.

Niveau 300, 60min


Past and future events

DevTeach Ottawa 2020

20 May - 22 May 2020
Ottawa, Ontario, Canada

MSDEVMTL meetup - Property-Based testing

11 Mar 2020
Montréal, Quebec, Canada