NDC London 2020
2020-01-27..2020-01-31
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]
who it's for
.NET developers, cloud architects, security engineers, frontend developers, devops engineers, data scientists, engineering managers
topics
Blazor WebAssembly and server-side; SignalR protocol implementation; custom .NET garbage collectors; OWASP ASVS and controls; OpenID Connect and OAuth2 practices; gRPC in .NET Core; serverless with Knative and Cloud Run; Azure Functions with Managed Identity; GraphQL in .NET Core; Akka.NET and IoT streaming; Apache Kafka Streams near-real-time; securing CI/CD pipelines
| title | author | length |
|---|---|---|
| We are the Guardians of our Future | Tess Ferrandez-Norlander | 51m |
Researchers train a model on the California gang database that includes babies and 25% false entries and it still flags people as gang members; another paper… | ||
| SignalR Deep Dive: Building Servers | David Fowler, Damian Edwards | 59m |
Builds a minimal SignalR-compatible server in Go that implements the negotiate endpoint, accepts WebSocket upgrades, and parses the JSON hub protocol… | ||
| Make your custom .NET GC - "whys" and "hows" | Konrad Kokosa | 49m |
Starting with .NET Core 2.1 a feature called Local GC lets a native DLL replace the runtime GC by exporting version and initialize hooks and implementing the… | ||
| Application Diagnostics in .NET Core 3.1 | Damian Edwards, David Fowler | 01h 01m |
Shows concrete .NET Core 3.1 diagnostics: events/metrics/dumps as primitives, EventPipe as an always‑on named pipe, and live APIs like… | ||
| : The OWASP Top Ten Proactive Controls 2018 | Jim Manico | 58m |
Covers the OWASP Top Ten Proactive Controls with actionable specifics: use the ASVS three risk levels, ~200 controls to define requirements; run dependency… | ||
| Rip It Up And Start Again? | Sam Newman | 01h 01m |
Argues that microservices only deliver if organization and ownership change: a ticketing case shows 60 services → one story touches 6 services creating a… | ||
| Blazor, a new framework for browser-based .NET apps | Steve Sanderson | 01h 01m |
Blazor presents a component-based .NET UI that runs either as Blazor WebAssembly (client-side) or server-side over SignalR; the demo builds a budget-slider… | ||
| Securing Serverless Applications in Azure | Sjoukje Zaal | 01h 00m |
Step-by-step demo shows an Azure Functions app wired to a Storage Queue, retrieving secrets from Azure Key Vault, using Managed Identity to avoid embedded… | ||
| OpenID Connect & OAuth 2.0 – Security Best Practices | Dominick Baier | 53m |
Overview of concrete security changes and fixes for OAuth 2.0 / OpenID Connect: recommends deprecate implicit and resource owner password grants, keep only… | ||
| Debugging - A dive into Breakpoints | Philip Sutton | 05m |
Visual Studio 2019 and .NET Core 3 add data breakpoints that stop when a heap object’s value changes; on older .NET use conditional breakpoints tied to a… | ||
| Using cats to purfect your software architecture | Andy Clarke | 14m |
A tablet-game backend exposes a feed endpoint that initially calls a dog-food repository and directly manipulates a stomach row, causing tight coupling and… | ||
| Lean, not mean. Building sustainable software with Lean software practices | David James | 10m |
Lean software is framed as seven concrete principles rooted in the Toyota way (two roots: continuous improvement and respect for people). Examples: remove… | ||
| EVE Online: Defending our players from hackers and the evolution of account security | Stefán Jökull Sigurðarson | 51m |
EVE Online evolves account security from a 2008 character challenge to a full OAuth SSO backed by Redis for throttling, an in-game tradable token PLEX to… | ||
| There are no snow days when you work remote. | Jennifer Wadella | 55m |
Checklist for surviving remote work: concrete onboarding (equipment specs, calendar, buddy access), meetings always on calendar with join links and time‑zone… | ||
| What you always wanted to know about Deep Learning, but were afraid to ask | Wei-Meng Lee | 01h 04m |
Covers core mechanics: weights, biases, activation functions (sigmoid/softmax/tanh/ReLU/leaky ReLU), loss and backprop with SGD/Adam and the math for dL/dw… | ||
| How to Steal an Election | Gary Short | 01h 03m |
Demonstrates concrete ways data science can swing results: using segmentation to 2,000 voters (31 marginal UK seats with margins under ~2,000 votes), redrawing… | ||
| Capability Mapping | Ian Cooper | 01h 01m |
Argues that real microservice boundaries come from automating stable business processes so teams can independently deploy and release many times per day… | ||
| Controlling Wildfires While Only Getting Singed. | Jessica White | 40m |
Start by agreeing a glossary and map the domain from users and stakeholders to avoid costly misunderstandings, then inventory components, docs and tests… | ||
| Cynicism Doesn’t Build Products | Gwen Diagram | 41m |
Shows concrete harms and fixes: a developer codes VW cars to fake emissions and James Liang gets 14 months in prison; Facebook’s graduate offer acceptance… | ||
| A Developer’s Introduction to Kubernetes | Chris Klug | 01h 00m |
Fast, practical tour of Kubernetes for developers that shows how Docker Desktop creates a one-node cluster, how kubectl talks to the API and uses port‑forward… | ||
| From WCF to gRPC | Mark Rendle | 01h 05m |
gRPC replaces WCF for .NET Core by using proto files to describe services, generating C# stubs, and supporting request/response, server streaming and… | ||
| There’s an Imposter in this room! | Angharad Edwards | 56m |
Claims that about 85% of people experience impostor feelings and cites a study of 150 high‑performing women; describes an imposter cycle (anxiety →… | ||
| Serverless: Five Key Things you need to Know | Gojko Adzic | 58m |
Claims concrete savings and tools: cloud functions shift pricing from reserved capacity to metered usage so IDC finds ~80% faster releases and ~60% cost… | ||
| Shor's Algorithm is Scary NOW | James Birnie | 57m |
A Q# implementation simulates Shor to factor 21 and a colleague’s Q# run factors 35 while a hand-built spreadsheet traces period finding to factor 1517… | ||
| Modernizing the enterprise desktop application | Oren Novotny | 01h 01m |
Shows a concrete migration path: run dotnet portability analyzer and the try-convert tool, fix a few API gaps with the Windows Compatibility Pack, and rebuild… | ||
| Frictionless Frontends for Backend Developers | Mandy Michael | 51m |
Builds a small admin-like page using semantic HTML, CSS Grid for a three-column layout and responsive card rows with repeat(autofill) + minmax, Flexbox for… | ||
| A Developer's Introduction to Electronics | Guy Royse | 54m |
Covers Ohm’s law to compute currents and power, measures body resistance around 40k–80k Ω, and explains resistors, capacitors, diodes, transformers, relays and… | ||
| How To Secure Your MicroServices | Andy Davies | 38m |
Uses Consul and Vault to replace copy‑pasted connection strings with dynamic Postgres credentials that Vault creates and later revokes, demonstrated from a… | ||
| Empowering Soft Skills with Team Dynamics/Communication Skills | Crux Conception | 59m |
A practical method that merges psychology with Active Listening to shift team behavior: emotional tagging, paraphrasing, mirroring, summaries, open questions… | ||
| Delightful Durable Function Patterns | Adrienne Braganza Tacke | 48m |
Azure Durable Functions are shown as a code-first way to build stateful serverless workflows using client, orchestrator, activity and entity functions with… | ||
| An introduction to Machine Learning using LEGO | Jeppe Tornfeldt Sørensen | 58m |
A LEGO Mindstorms car with a phone-mounted camera, a custom app for data collection and training, and steering angle as the label is trained to follow a black… | ||
| Frontend in F#? Hold my beer! | Vagif Abilov | 50m |
Backend codebase becomes a working web UI using Fable + Elmish MVU compiled to JavaScript, with HTTP via JS interop and React components for JSON/XML viewing… | ||
| Micro Frontends – a strive for fully verticalized systems | David Leitner | 57m |
Micro frontends split frontend work but buy complexity; three concrete integration strategies are compared: build-time (mono-repo bundling), server-side… | ||
| Can TypeScript really make infrastructure management easy? | Paul Stack | 01h 01m |
TypeScript with Pulumi is presented as a practical infra-as-code approach: real TypeScript APIs, compile-time types and IDE completion, and unit tests that run… | ||
| The Internet of Pwned Things | Troy Hunt | 59m |
Shows concrete breaches: a stuffed toy maker leaves a open MongoDB no password and voice files in an unencrypted S3 bucket, exposing >800,000 accounts and… | ||
| Machine Learning for .NET developers | Olia Gavrysh | 45m |
Overview of a hands‑on .NET workflow that uses ML.NET and Visual Studio Model Builder to AutoML a regression for taxi fares from ~19,000 CSV rows, with default… | ||
| Beyond REST with GraphQL in .Net core | Irina Scurtu | 58m |
Claims that GraphQL solves REST over/under‑fetching and reduces round trips by letting clients request exact fields, implemented here on .NET Core with… | ||
| Why Kubernetes is Not Enough | Gaurav Gupta | 46m |
Farfetch runs an active-active global stack across three data centers and thousands of servers with petabyte-scale storage, and is migrating ~500 microservices… | ||
| DDD Really Matters! | Jimmy Nilsson | 01h 02m |
Five concrete proposals: start with purpose (use the Monty Python/editor example and a military micro‑services analogy to justify purpose before tech), treat… | ||
| Change your habits: Modern techniques for modern C# | Bill Wagner | 56m |
Demonstrates concrete C# practices: using tuple assignments for swaps and concise equality/constructors, declaring read-only structs and read-only members to… | ||
| From the OWASP Top Ten(s) to the OWASP ASVS | Jim Manico | 01h 02m |
Asserts the OWASP Top Ten is only awareness and not a program and points to OWASP ASVS v4.0 as a concrete standard with 180+ requirements organized into levels… | ||
| Blazor in more depth | Ryan Nowak, Steve Sanderson | 01h 02m |
Deep dive into server and WebAssembly Blazor with concrete how‑tos and internals: explains a practical eight‑step recipe to build a redistributable Razor Class… | ||
| Keep it Clean: Why Bad Data Ruins Projects and How to Fix it | Philip Winder | 49m |
Industrial projects lose enormous value to dirty data—management reports cite 3.1 trillion dollars lost and about 27% flawed records—while audits find 2.5–3%… | ||
| OWASP ZAP HUD WTF? | Robin Minto | 12m |
OWASP ZAP adds a browser Heads Up Display that proxies and scans live sites, runs a spider and active scanner, and lets the user intercept and modify requests… | ||
| The monster under the bed - working with legacy code | Ioana Bota | 11m |
Argues that legacy code can be an asset and lays out a practical migration path: add tests (unit and integration), wrap functionality with APIs, split a… | ||
| Turning a side project into a business 10 lessons in 10 minutes | David James | 13m |
Built TotalCarCheck.co.uk from evenings using .Net technologies on a free laptop and phone, then grows to check ~10 million vehicles a year (~25% UK), with… | ||
| Best Practices for Securing CI/CD Pipelines | Victoria Almazova | 50m |
Shows an end-to-end Azure DevOps CI/CD pipeline that deploys infrastructure to Azure and enforces build-time security checks. It uses Azure DevOps with Azure… | ||
| 25 Years of SSL - Secure(ish) Sockets Layer | Scott Helme | 01h 00m |
Timeline from 1994 to now with concrete pivots: SSLv2 lasted three months then SSLv3 survives ~20 years until POODLE in 2015, TLS 1.0 is basically a 3.1… | ||
| Turbocharged: Writing High-Performance C# and .NET Code | Steve Gordon | 01h 01m |
Shows concrete code changes and measured wins: uses Span<T>/Memory<T>, System.IO.Pipelines, ArrayPool and System.Text.Json with BenchmarkDotNet to prove… | ||
| Shrink The Web: How To Get Happier By Removing Crap | Lemon | 53m |
Average webpages now often exceed the 1993 game Doom (2.39MB): an off‑the‑shelf WordPress theme clocks 3.56MB and 300 requests with 12–26s loads on 3G… | ||
| The State of Vue.js in 2020 - Why You Should Make The Leap | Gwendolyn Faraday | 49m |
Quick state: Vue adoption grows fast and Vue 3 alpha is out with a new Composition API via setup functions that reorganizes code by feature, improves… | ||
| Introduction to GitHub Actions | Edward Thomson | 01h 00m |
GitHub Actions now provides hosted CI/CD runners for Linux, Windows and macOS and lets repositories trigger workflows on events, run matrix builds (demo runs… | ||
| Wait, I have to test the front end too? | Amy Kapernick | 49m |
Shows how to add concrete front‑end tests to an Eleventy blog: linting with ESLint and Stylelint that output JSON and auto‑fix rules, accessibility scans with… | ||
| Solving Tricky Coordination Problems in Stateless .NET Services | Loris Cro | 56m |
Claims a practical fix for cache stampedes by combining memo lock semantics with SET NX PX and Redis Pub/Sub, implemented as a small C# and Go library that… | ||
| Svelte, cybernetically enhanced web apps | Devlin Duldulao | 40m |
Svelte compiles to tiny vanilla JS and generates per-component update code at build time so UI updates run without virtual DOM diffing; the demo uses Node/npm… | ||
| Effective Microservice Communication and Conversation Patterns | Jimmy Bogard | 59m |
Argues that autonomy drives every communication choice and that no single protocol fits all use cases, comparing HTTP/REST and RPC for the initial synchronous… | ||
| How to code music? | Laura Silvanavičiūtė | 39m |
Shows live coding music with JavaScript and Sonic Pi, with concrete demos: creating oscillators and synths, toggling frequency and amplitude (examples include… | ||
| How Does Data Science Revolutionize the World of Machines? | Victoriya Kalmanovich | 29m |
A ship‑engine sound‑classification and predictive maintenance project builds a model that predicts remaining useful life using time series regression and… | ||
| Angular and The Case for RxJS | Sandi Barr | 58m |
Explains why RxJS is practical with Angular by showing working code: a type‑ahead with debounceTime and distinctUntilChanged that clarifies streams versus… | ||
| Real World Guide to Web API authentication on Azure | Heather Downing | 41m |
Creates a .NET Web API, pushes it to a new GitHub repo, and deploys to Azure App Service using Kudu continuous deployment so pushes auto-redeploy; secures… | ||
| Ordering the chaos - cleaning logs and ordering events in microservices | Adam Furmanek | 56m |
Explains why wall-clock timestamps fail (leap seconds, DST, TZ DB drift) and shows a .NET proof-of-concept: generate a correlation-id, propagate it and a… | ||
| Sprinkle some sparkle on it: Teaching Xamarin with Selfies | Luce Carter, Layla Porter | 58m |
A step‑by‑step build of a SuperSparklySelfie app that uses Xamarin.Forms with shared UI and MVVM, adds photo capture via Plugin.Media, and posts images to an… | ||
| Challenges of Managing CoreFX repo | Karel Zikmund | 01h 08m |
CoreFX faces tangled dependency chains across ~30 repos that force 8–12 hour product builds and generate roughly 600 GitHub notifications per day; teams merge… | ||
| Alexa, ask Cortana to tell Google to... | Alex Dunn | 54m |
Shows how to reuse one REST API and C#/.NET code to power Alexa, Google Assistant and Cortana integrations, using Entity Framework for data, deployed to Azure… | ||
| 3D printed Bionic Hand a little IOT and a Xamarin Mobile App | Clifford Agius | 59m |
A functioning 3D‑printed prosthetic for a 15‑year‑old is built with printable sockets, four linear actuators and fishing‑line tendons, an Adafruit Feather M0 +… | ||
| Building a real-time serverless app in Blazor using AWS | Martin Beeby | 57m |
Builds an interactive Blazor WebAssembly dashboard that reacts in real time using API Gateway WebSocket, three Lambda functions (onConnect, send, disconnect)… | ||
| How to hire great engineers | Norman Noble | 01h 02m |
Claim: hiring improves when roles are specified, measured and staffed by a trained panel. Process uses a role specification template, staged screening (resume… | ||
| How does designing your culture help your code? | Vimla Appadoo | 46m |
Company builds an AI-driven bathroom design platform and shows how culture sits above systems processes and people, causing biased models and bad UX when… | ||
| Serverless containers with Knative and Cloud Run | Mete Atamel | 01h 01m |
Shows that containers can run serverless with Knative serving & eventing and as a fully managed service on Cloud Run managed. Demonstrates concrete stack… | ||
| Go Pro on .NET with F# | Isaac Abraham | 01h 06m |
A full-stack demo claims 92% F# for a web app built on dotnet core 3 + ASP.NET Core + React/Redux, hosted on Azure App Service using Blob storage, Azure Search… | ||
| Single Page Architectures with VueJS and ASP.NET Core | Kevin Griffin | 01h 01m |
Shows a working pattern: a Vue CLI front end and a separate ASP.NET Core API are two projects, proxied in development via spa services extension so one URL… | ||
| Building Trust in Teams | Richard Campbell | 56m |
Trust directly improves software quality by making people safe to fail and collaborate; concrete tactics include weekly in-office code‑review lunches, shared… | ||
| Navigating microservices with .NET Core | Ryan Nowak | 01h 04m |
Demo deploys a .NET Core app to Kubernetes with Helm manifests, three replicas and a rolling update guarded by readiness probes; backend splits into… | ||
| Breaking black-box AI | Evelina Gabasova | 52m |
Demos run with R, scikit‑learn and Microsoft Cognitive Services expose concrete failures: R linear regression: one outlier raises R² from ~2.5% to 98% and… | ||
| Reinventing the Transaction Script | Scott Wlaschin | 01h 01m |
Argues that classic Transaction Script becomes practical and testable by using F#-style functional techniques: model workflows as workflows as functions with… | ||
| Fly the Enterprise: Applying Aviation Lessons to DevOps Teams | Kendall Miller | 01h 01m |
QF32 suffers an uncontained engine failure when a mis‑drilled fuel stub leaks, turbine fragments shred a cable bundle and dozens of systems fault within four… | ||
| The Reduced NDC Company | Mark Rendle | 01h 08m |
A live comedy edit that compresses 90 sessions in under 60 minutes into rapid punchlines and one‑line synopses, using pop‑culture mashups, misread captions and… | ||
| Crash, bang, wallop: miscellaneous lessons from exploring a drum kit | Jon Skeet | 01h 03m |
Bought a Roland TD-17 and builds a C# app (WPF GUI + console) that loads/edits/saves the module’s configuration over USB MIDI, records module samples, and… | ||
| Deep Dive on Server-Side Blazor | Carl Franklin | 01h 00m |
Builds a small Band Booker app using .NET Core 3 server-side Blazor with Entity Framework Core, API endpoints, file uploads and SignalR for UI updates… | ||
| UX Design Fundamentals: What do your users really see | Billy Hollis | 01h 05m |
Demonstrates that users literally miss obvious things — the famous 13 passes and the moonwalking bear shows inattentional blindness — and quantifies causes… | ||
| How to train your impostor | Carolina Gilabert | 08m |
Overview defines impostor syndrome, contrasts it with Dunning-Kruger and cites Maya Angelou's line about being found out; it also frames the impostor paradox… | ||
| Five Ways to Break a Git Repository | Edward Thomson | 14m |
Five concrete ways to break a Git repo and how to fix them are demonstrated with git clone, git config, git status, checkout and commit examples. Changing… | ||
| Test Driven Compliance | Mike Long | 10m |
Claims that compliance controls become executable tests and run in CI to yield continuous, auditable compliance. Shows concrete examples such as when a pull… | ||
| Continuous Integration and Delivery for Databases | Jimmy Bogard | 01h 00m |
Claim: CI/CD for databases is practical and necessary, but requires explicit migrations, tooling, and staged rollouts. Demonstration uses Roundhouse to add a… | ||
| How to Build a Magical Living Room | Saron Yitbarek | 35m |
Describes building an inclusive developer community by running weekly Twitter chats (two time slots), launching the CodeNewbie podcast with transcripts and… | ||
| Lambda? You Keep Using that Letter | Kevlin Henney | 01h 01m |
Starts from Church 1936 and traces concrete artifacts: the three core lambda constructs are variables, abstraction, application, closures are lambdas that… | ||
| ML and the IoT: Living on the Edge | Brandon D Satrom | 01h 01m |
Shows how real projects move ML from cloud training to local inference: trains on a 28k-image Kaggle set, gets about 66% accuracy, and runs local CPU… | ||
| Common API Security Pitfalls | Philippe De Ryck | 50m |
APIs commonly leak full JSON or images because endpoints trust identifiers instead of enforcing ownership checks, causing broken object level access control… | ||
| Drinking a river of IoT data with Akka.NET | Hannes Lowette | 59m |
An Akka.NET cluster receives IoT meter events via Azure IoT Hub and an App Service, creates a proxy actor per device that obtains a remote actor ref… | ||
| A tale of two sides of 2FA | Christine Seeman | 50m |
SMS is unreliable as a second factor: NIST deprecates it since 2016, carriers are vulnerable to SIM swap and SS7 interception, and Google finds only about… | ||
| Combatting illegal fishing with Machine Learning and Azure | Carmel Eve, Jess Panni | 46m |
Built a cloud-first pipeline ingesting AIS, satellite and radar, projecting raw data into Parquet partitions in Data Lake Storage, orchestrated by durable… | ||
| The Art of Code | Dylan Beattie | 01h 01m |
From Conway's Game of Life to deep dreaming and live coding with Sonic Pi, concrete examples dominate: glider gun and NAND gate show logic built inside Life… | ||
| The Perimeter Has Been Shattered: Attacking and Defending Mobility and IoT on the Enterprise Network | Georgia Weidman | 54m |
Claim: enterprise perimeter assumptions no longer hold because employee phones and IoT talk to cloud services, public networks and chargers. Demonstrations… | ||
| Getting the best out of Entity Framework Core | Jon P Smith | 01h 00m |
Explains how EF Core translates LINQ into SQL, how relational fix‑up and change tracking produce four books and three authors in memory from one query, and why… | ||
| Big Data Analytics in Near-Real-Time with Apache Kafka Streams | Allen Underwood | 01h 02m |
Shows a working pipeline that pushes SQL Server transactions into Kafka via Kafka Connect, computes near‑real‑time user rewards with KSQL/Kafka Streams, and… | ||
| Who’s not in the room? Build better products by engaging hard to reach users | Ariba Jahan | 35m |
Four concrete methods: map assumptions to surface blind spots, convert ideas into Madlib-style hypotheses and flag the riskiest assumptions, run quick tests on… | ||
| Lowering in C#: What's really going on in your code? | David Wengier | 45m |
Explains how C# lowering rewrites high‑level code into concrete mechanics: foreach becomes a scoped while that introduces two casts and calls getEnumerator… | ||
| GraphQL, gRPC or REST? Resolving the API Developer's Dilemma | Rob Crowley | 59m |
Compares REST, GraphQL, gRPC and WebHooks with concrete tradeoffs: REST fits simple web forms and state-machine workflows and benefits from HTTP/2 multiplexing… | ||
| Modernizing Large Frontends with Web Components | Sam Julien | 56m |
Web Components act as an incremental migration path: write Angular components, turn them into Angular Elements with createCustomElement and… | ||
| The Rise of Klintwalker – Mastering Your Inner Developer Part 2 | Lars Klint | 58m |
Claims that waking an hour earlier and get up at 5am gives a mental edge, that average TV watching was 220 minutes/day (2015), and that cutting binge TV frees… | ||
| Fighting Back Against a Distracted World - Increasing your Focus and Self-motivation | Stephen Haunts | 01h 00m |
Quits a job, then documents practical fixes: builds a routine, writes 21 Pluralsight courses and nine books, and breaks Netflix binges by removing 750 friends… | ||
| Introducing the benefits of the testing diamond | Moreton Brockley | 42m |
Argues that a sustainable strategy shifts effort toward fast, high-value integration and component tests while keeping expensive UI tests minimal, using… | ||
| Reducing Third-Party Security Risk in .NET Core Applications | Niels Tanis | 58m |
Scans a real .NET Core app and finds a widely used PDF library that pulls images by URL, exposing server‑side request and file disclosure risks; shows a live… | ||
| Using Immutable Data Structures in C# and .NET | Spencer Schneidenbach | 47m |
Argues that immutability in C# reduces reasoning overhead and threading bugs and shows practical tools: System.Collections.Immutable where immutable lists… | ||
| nothing matches | ||