NDC London 2021
2021-01-25..2021-01-29
London, United Kingdom
[NDC London 2017, NDC London 2018, NDC London 2019, NDC London 2020, NDC London 2021, NDC London 2023, NDC London 2024, NDC London 2025, NDC London 2026]
| title | author | length |
|---|---|---|
| How to develop to be compliant with OAuth 2.1 out of the gate | Nahid Farrokhi | 50m |
OAuth 2.1 narrows OAuth 2.0 to concrete rules: PKCE is required for all authorization-code clients, wildcard redirect URIs are banned so authorization servers… | ||
| Incidents are a new normal | Kasia Szulc | 37m |
Argues incidents are inevitable but preventable from repeating by running blameless post-incident reviews, using a facilitator to stitch chat logs, dashboards… | ||
| The top 10 best new features in C# version 6 to 9 | Chris Klug | 01h 06m |
A concise run‑down of the top 10 C# 6–9 changes with concrete effects: string interpolation replaces messy concatenation; out var and inline deconstruction… | ||
| DRY TDD with AutoFixture | Enrico Campidoglio | 54m |
Shows using AutoFixture to remove test setup duplication by applying anonymous data, equivalent sets and a test data builder. Implements Conway’s Game of Life… | ||
| Breaking the language barrier: how do we quickly add multilanguage support in our AI application? | Jaya Susan Mathew | 43m |
Shows a practical pipeline using Microsoft Cognitive Services plus Google/Amazon API options: Custom Translator is trained with as few as 2,000 sentences, runs… | ||
| The Implementation and Practice of DevSecOps | Jihai Zhou | 44m |
Since 2018 a bank runs a DevSecOps program that integrates SAST, DAST, IAST and FOSS scanning into Jenkins CI/CD to catch vulnerabilities early, specifically… | ||
| NodeJS, ML, K8s and Unethical Face Recognition | Joel Lord | 53m |
Demo links a NodeJS backend to Twitter profile images (followers filtered by ID) and runs face detection with face-api.js, loading ssd_mobilenet_v1 for… | ||
| A Tour of Go for the C# Developer | Jeremy Clark | 01h 00m |
A small Go console app fetches nine IDs from a localhost .NET service (each request simulates a 1s server delay) and demonstrates that sequential requests take… | ||
| Ten Things Every Voice Application Should Do | Jeff Blankenburg | 48m |
Ten concrete patterns for Alexa skills: focus on one thing really well (example: the games back MLB skill that only reports games back), model user intents not… | ||
| DevOps with Azure Kubernetes Service | Jakob Ehn | 01h 01m |
Shows how a real AKS platform is built and operated: provisioning clusters with ARM templates + Azure Pipelines, creating virtual networks, namespaces, ingress… | ||
| ReST API Design: A beginner's guide | Janani Subbiah | 50m |
Builds a concrete HTTP API for tracking login history: resource naming, /users/{userId}/login-history/{id} as the URI pattern, and only GET (list and item)… | ||
| Practical Domain-Driven Design with EF Core | Hossam Barakat | 56m |
Refactors a legacy .NET 5 API using EF Core 5 and MediatR to turn an anemic model into a rich domain: parameterized constructors with private EF ctor enforce… | ||
| Why you should consider Web Assembly in your next frontend project | Håkan Silfvernagel | 43m |
WebAssembly runs near‑native code in the browser by compiling languages like Rust to a compact .wasm binary and shipping a glue layer (wasm-bindgen + wasm-pack… | ||
| Agile Evolution: An Enterprise transformation that shows that you can too | Martin Hinshelwood | 01h 01m |
Azure DevOps goes from multi-year waterfall to three-week sprints, opensourced the Azure DevOps task library and the Git Virtual File System, and scales to… | ||
| Why your company needs an internal API and what you should do about it | Glenn F. Henriksen | 41m |
Companies build a light service platform of small microservices that expose OpenAPI proxies over legacy ERP/CRM, use Azure API Management (or similar) for… | ||
| Asynchronous Distributed Systems | David Ostrovsky | 01h 02m |
A synchronous call tree breaks at scale so the team moves to async messaging to remove temporal coupling, using Kafka and distributed logs as the durable… | ||
| TestCafé: Web Testing Made Easy! | Don Wibier | 49m |
TestCafe is a Node.js web UI test runner that installs with 30-second npm install and runs Chrome, Edge, IE and Firefox without plugins, using modern… | ||
| Offline web applications don't exist anymore! | Francesco Leardini | 52m |
Claim: modern Progressive Web Apps can make sites “never offline” by combining a service worker, a web manifest and client-side storage. Uses: cache strategies… | ||
| The Mario Kart™ guide to building a career | Hannes Lowette | 53m |
Uses Mario Kart to map concrete career moves: coach of 53 .NET consultants at Axxes; prescribes a three-to-five year direction, then SMART milestones and a… | ||
| Web Components as micro apps | Craig West | 48m |
Web Components function as portable micro‑apps: the demos show concrete code for custom elements with observed attributes (props down) and custom events… | ||
| The Untruthful Art - Five Ways of Misrepresenting Data | Alexander Arvidsson | 51m |
Five concrete tricks for misrepresenting data: axis manipulation (National Review and Fox News charts that hide trends by rescaling or removing axes… | ||
| Service Principals and Managed Identities - the Identity tools every Azure developer should know | Christos Matskas | 51m |
Shows a working .NET Core web app that drops all hardcoded secrets and acquires Key Vault secrets via the Azure Identity library, running locally with Azure… | ||
| Orchestrate and build serverless solutions with Azure Logic Apps | Brian Gorman | 54m |
Shows how Azure Logic Apps orchestrates a working pipeline: a Twitter trigger polling every 10 minutes, a call to Key Vault + managed identity to retrieve a… | ||
| Retrospectives Antipatterns | Aino Vonge Corry | 59m |
Lists seven concrete anti patterns and fixes for retrospectives, with actionable steps not theory. Calls out prime directive ignorance — add a short reminder… | ||
| Thirteen ways of looking at a Turtle | Scott Wlaschin | 01h 07m |
Builds a simple turtle API and delivers 13 implementations that each demonstrate a real FP technique: partial application, currying, State/Result/Async… | ||
| When to go from collaborative modelling to coding? | Gien Verschatse, Kenny Baas Schwegler | 54m |
Answer: treat “when to stop modeling and start coding” as a polarity not a problem: map the two poles (collaborative modelling and coding) with… | ||
| Unleash the Power of VS Code | Aaron Powell | 01h 00m |
Demonstrates concrete VS Code workflows: use Ctrl+P command palette to run actions and open files, enable organize imports on save to auto-sort imports, and… | ||
| TDD Revisited | Ian Cooper | 01h 01m |
Argues that TDD is about discovering behavior not writing isolated unit tests, rejects heavy mocking and the “100% coverage” expectation, and recommends… | ||
| Writing Cross Platform Games with MonoGame and .NET | Stephen Haunts | 43m |
Shows how MonoGame and .NET are used to build a small 2D engine (ExoGame2D) with a working duck attack recreation and a Conway's Game of Life tribute, using… | ||
| Web Performance Tuning with browser APIs | Yaser Adel Mehraban | 01h 02m |
Shows how browser APIs measure and act on real performance: uses User Timing API, Performance/Navigation/Resource Timing and Long Tasks (long task = 50 ms) to… | ||
| Power your .NET application with the new generation of diagnostics | Raffaele Rialdi | 55m |
Automates safe production diagnostics by using a sidecar agent that subscribes to EventPipe event counters and triggers quick process snapshots (around 100–200… | ||
| How to secure your GitHub Actions | Rob Bos | 51m |
Covers concrete, actionable GitHub Actions security: how secrets leak in logs and via third‑party actions, why to pin commit SHA for actions, how self‑hosted… | ||
| Gaining Confidence with Cypress Tests | Rob Richardson | 57m |
Cypress is a browser plugin that runs JavaScript/TypeScript end-to-end tests faster and less brittle by waiting on real browser events instead of fixed sleeps… | ||
| I know what you did last project (common mistakes we make in Azure) | Sasha Kranjac, Mustafa Toroman | 58m |
Concrete migration rules and costs: assess each app and choose rehost/refactor/rearchitect/rebuild with sandbox proof‑of‑concepts, not blind lift‑and‑shift… | ||
| Finding System Boundaries with Domain Storytelling | Stefan Hofer | 39m |
Domain Storytelling is a workshop technique that records concrete sequences with a pictographic kit and an open‑source modeling tool (it even plays stories… | ||
| Getting Started with Computer Vision | Seth Juarez | 01h 01m |
Builds a rock/paper/scissors classifier by uploading labeled images (about 138 scissors, 126 rock, 136 paper, 113 none), trains a Custom Vision project… | ||
| Designing composable functional libraries, not just for data visualization | Tomas Petricek | 48m |
Compost.js is an F# library compiled to JavaScript with Fable->JavaScript and published as an npm package; it models charts as composable primitives… | ||
| Securing Multitenant Databases with Entity Framework Core | Zoran Horvat | 01h 00m |
Shows how Entity Framework Core queries leak tenant data when application code omits owner constraints, demonstrates three approaches: ad hoc per-query where… | ||
| .NET Core Dependency Injection – The Booster Jab | Steve Collins | 55m |
Covers concrete pitfalls and workarounds for the built‑in Microsoft DI: singleton constructors can capture scoped or transient instances and leak them for app… | ||
| Little Fluffy Clouds | Liam Westley | 56m |
Azure-first migration uses Azure SQL with geo-replication and failover groups to get SQL Azure failover in under ten minutes and point-in-time backups up to 35… | ||
| Mobius – writing your own .NET runtime running on .NET Core | Konrad Kokosa | 58m |
A .NET runtime implemented in C# runs on top of .NET Core/5 as a vertical proof‑of‑concept that actually executes IL by emitting native code; it uses… | ||
| Authentication and Authorization in Blazor | Marco De Sanctis | 57m |
Shows a working Blazor Server and Blazor WebAssembly security stack that uses IdentityServer4 plus ASP.NET Core Identity and oidc-client.js to authenticate… | ||
| The Rise of Software Supply-Chain Attacks – How Secure is your .NET Application? | Niels Tanis | 58m |
A .NET application supply chain walkthrough shows where attacks actually occur: compromised IDEs and extensions, CI/CD build scripts (a VS Code build variable… | ||
| Building a Robot Arm with .NET 5, Raspberry Pi, Blazor and Signal R | Peter Gallagher | 56m |
Shows how to run .NET 5 natively on a Raspberry Pi 4 using a single-line install script, control GPIO with System.Device.Gpio and IoT.Device.Bindings, and… | ||
| Automating Android: Command line controls | Quintin Balsdon | 57m |
A set of bash scripts uses the Android Debug Bridge to automate repetitive device tasks: unlocking, toggling Wi‑Fi/Bluetooth/talkback, typing and tapping via… | ||
| Advanced Bluetooth® Technology - Under the APIs | Martin Woolley | 58m |
Details Bluetooth Low Energy internals and measurable effects: claims range over a kilometre with LE Coded FEC, shows adaptive frequency hopping and GFSK… | ||
| Access All Areas: Making Accessibility More Accessible | André Lemos | 53m |
Claim: converting existing PDFs to truly accessible form is feasible but imperfect. The demo uses iText 7 to rewrite PDFs, calls Azure Computer Vision to… | ||
| Running PHP apps on .NET 5 | Jakub Míšek, Ben Fistein | 56m |
PeachPie compiles PHP to .NET IL using Roslyn so PHP apps become regular .NET assemblies and run on .NET 5 with Visual Studio tooling and debugger support. It… | ||
| Software and Database Refactor Patterns | Bill Penberthy | 50m |
Lists concrete refactor patterns and shows how they are used to break a monolith into microservices: implement an IPurchaseService abstraction, add a messaging… | ||
| A pragmatic approach to turn your data into actionable insights | Irina Dragunova | 59m |
Compares Microsoft Power BI, Amazon QuickSight and Tableau as plug‑in analytics to avoid custom front‑end work, claiming you can embed interactive dashboards… | ||
| Lessons Learned from the Trenches: Connectivity and Performance Tips&Tricks | Jose Manuel Jurado Diaz | 59m |
Live debugging uses Visual Studio profiler plus Stopwatch and SQLConnection.Statistics to prove whether slow spots are app code or DB. Azure portal metrics… | ||
| REST - The ignored parts | Irina Scurtu | 01h 01m |
Claim: most APIs calling themselves REST are just JSON over HTTP because teams ignore HTTP's constraints like HATEOAS and proper versioning. Demo uses .NET… | ||
| DevOps for Your Relational Database Foundations | Brian A. Randell | 01h 00m |
Shows how a real SQL Server schema (Northwind) is reverse‑engineered into an SSDT project, committed to Git, built into a DACPAC output and wired into Azure… | ||
| Evolutionary history of the RabbitMQ .NET Client towards concurrency | Daniel Marbach | 01h 00m |
The RabbitMQ .NET client evolves from sync to a parallel async path by adding a redundant async worker and a dispatchConsumersAsync flag plus a consumer… | ||
| The leadership balancing act - achieving success without burning out | Donna Edwards | 55m |
A practical playbook: stress shows up as jaw pain then eye twitch so track personal signals, use a quarterly wellness wheel, and build resilience with… | ||
| Dude, where is my class?! | Hackle Wayne | 58m |
Front-end code often replaces classes with functions: React hooks become the norm and class components are rare, while TypeScript union types and mapped types… | ||
| CI/CD and beyond with GitHub Actions | Damian Brady | 56m |
Shows how GitHub Actions runs CI/CD plus event-driven automation: build then upload-artifact / download-artifact to pass outputs between jobs, deploy to Azure… | ||
| Building a Mobile Flight Simulator | Clifford Agius | 51m |
Rebuild of a British Airways 787-based trailer simulator that adds wheelchair access, ramped floor and a pig‑trough frame to put controls under the deck; uses… | ||
| How To Make Your Website A Progressive Web App (And Why You Might Want To) | Lemon | 36m |
Starts from a plain HTML site, adds HTTPS (GitHub Pages, Let’s Encrypt, Cloudflare), a manifest.json and serviceworker.js, then controls caching, offline… | ||
| Hot Chocolate: GraphQL Schema Stitching with ASP.Net Core | Michael Staib | 52m |
Shows how to set up a Hot Chocolate GraphQL gateway under 5 minutes and stitch four downstream services (accounts, products, reviews, inventory) using the Hot… | ||
| Postponing architectural choices and start developing first with Dapr | Michaël Hompus | 01h 03m |
Dapr promises that application code focuses on business logic while infrastructure choices stay configurable: demo builds a front-end, order and processing… | ||
| Microsoft Q# and Azure Quantum | Johnny Hooyberghs | 01h 03m |
Microsoft Q# is a real language with a .NET simulator and an Azure Quantum backend that runs on partners like QCI, IonQ and Honeywell; code uses Hadamard… | ||
| Infrastructure *is* Code with the AWS Cloud Development Kit | Steve Roberts | 53m |
Demonstrates using the AWS CDK with .NET to write code that synthesizes CloudFormation and deploys it: a quick S3 static site with BucketDeployment via Lambda… | ||
| Hiding The Lead | Sam Newman | 53m |
Argues that independent deployability hinges on maintaining backwards compatibility and practicing strict information hiding: keep internal data and… | ||
| OpenTelemetry 101 | Rob Ashton | 58m |
Adopts OpenTelemetry across an Erlang service fleet, wires traces into Jaeger/Zipkin and metrics into Prometheus/Grafana via an external OpenTelemetry… | ||
| Getting Started with GitHub Actions | Mickey Gousset | 01h 01m |
Step-by-step walkthrough of GitHub Actions shows actual YAML examples, use of cloud and self‑hosted runners, and a matrix build that expands one job into nine… | ||
| Observable Web Applications | Todd H. Gardner | 53m |
Argues that client-side observability is the most important view of a web system and shows how to instrument it with error tracking, performance metrics and… | ||
| HTTP Security Headers You Need To Have On Your Web Apps | Scott Sauber | 59m |
Explains which headers matter (HSTS, CSP, X-Frame-Options, Referrer-Policy, X-Content-Type-Options, Feature/Permissions Policy), shows live before/after demos… | ||
| 🤖 Building a Telegram bot with Apache Kafka and ksqlDB | Robin Moffatt | 59m |
Builds a Telegram bot that reads Bradford and Leeds car‑park CSV events into Apache Kafka, enriches and reserializes them with ksqlDB (protobuf schema in… | ||
| When Open Source Came to Microsoft | Richard Campbell | 54m |
Timeline of concrete moves: Microsoft publishes C# and CLI specs in 2000, Miguel de Icaza launches Mono (2001), CodePlex and MIX surface in 2006, jQuery ships… | ||
| Blazor, GraphQL and a headless CMS | Poornima Nayar | 56m |
Shows a working Blazor WebAssembly SPA wired to the Umbraco Heartcore GraphQL API (hosted via Cloudflare with a project alias header and cache) using… | ||
| Smart home from scratch - a little C#, a little C++ and a whole lot of cheap Chinese electronics | Nir Dobovizki | 50m |
Speaker: Nir Dobovizki
The story of my smart home system, all the way from the original idea to today, the design, the software, the hardware and how I found… | ||
| OAuth in 2021 – What’s up? | Dominick Baier | 01h 02m |
OAuth 2.1 consolidates best practices and removes legacy options: implicit and password flows removed, authorization code requires PKCE (proof key), redirect… | ||
| Building a Game Boy emulator in .NET Core! | David Whitney | 51m |
A Game Boy emulator is implemented in cross‑platform C# on .NET Core by transliterating CoffeeGB Java code, running headless tests, then adding a WinForms UI… | ||
| Blazor & gRPC - Code-first .NET SPA developer productivity | Christian Weyer | 01h 03m |
Uses Blazor WebAssembly with a code-first gRPC approach (protobuf-net.Grpc) to share C# interfaces and DTOs end-to-end, avoiding .proto codegen and giving full… | ||
| Getting Started with Unity and AR/VR for the .NET Developer | Davide Zordan | 57m |
Shows how to assemble a working VR prototype in Unity using the SteamVR plugin (OpenVR/OpenXR) plus a player prefab, snap-turn script and teleportation prefabs… | ||
| The Ultimate Guide To Building Better Azure ARM Templates | Eldert Grootenboer | 01h 02m |
Practical guidance on designing and authoring Azure ARM templates for Infrastructure as Code: techniques to make templates concise and reusable… | ||
| Migrate your Web Apps to ASP.NET Core, one page at a time | Mark Rendle | 57m |
Shows how to replace pages one at a time by putting an ASP.NET Core app with YARP (Microsoft Reverse Proxy) in front of an existing ASP.NET WebForms or MVC… | ||
| Reactive Programming, State Management, and Redux for the Modern Front End Dev | Jennifer Wadella | 01h 00m |
A concise walkthrough of reactive state shows a working Animal Crossing villagers demo that fetches, filters, sorts and favorites via an observable pipeline… | ||
| nothing matches | ||