Public Speaking

Since starting .NET Oxford and doing a lot of the intro talks, I quickly found public speaking very strangely addictive! The user-group was a great way to move from just doing the intro talks, to lightning talks there, to then doing full length talks both at .NET Oxford and conferences. Below are the details of all the talks I've done so far ...

Table of Contents

Kubernetes and .NET running on a Raspberry Pi Cluster

"In this session, we'll be installing Kubernetes from scratch on a cluster of Raspberry Pis (yes, real hardware!). Then we'll create a basic ASP.NET Core webapp; RabbitMQ instance; and a subscribing console app to demonstrate how easy it is to spin-up this kind of 'messaging' architecture in Kubernetes. Along the way, I'll explain some of the core concepts and benefits of Docker, Kubernetes, and message queues. This talk is suitable for both those who have never used Docker or Kubernetes before; those who have and are interested in installing Kubernetes on bare-metal; or those who just like Raspberry Pis and shiny things!"


Developer Productivity

  • November 2017 - .NET Oxford - 20-minute shorter lightning talk version
  • April 2018 - DDD Southwest Conference - Bristol, UK - 60 minutes
  • June 2018 - DDD 13 Conference - Microsoft, Reading, UK - 60 minutes

"Are you the type of developer that likes to Get Sh*t Done?

If you take a room full of developers, the deviation between each developer's productivity level is massive! A task that might take one developer half an hour, might take the next developer an entire day! Or more! And the quality of the solution will be wildly different too.

In this day of age - the developer rules in terms of productivity. We're one of the only industries where we can easily automate a lot of our menial tasks, with hardly any work. And there are so many tools already available to make us even more productive. But a surprising number of developers don't take advantage of automation or tooling, and do everything the hard way - using the standard tools that they've been using for most of their career.

In this talk, we'll be covering quite a lot of topics. From compound learning, to note taking, to tools and automation (with demos of tools like LINQPad, Resharper, etc), to using the CLI effectively, to the Pomodoro Technique, to GTD, and even more!

Join me for a fast-paced talk on the tips and tricks I've found along the way that has saved me an insane amount of time!"


An Intro to Azure

"In this demo-heavy talk, I'll be giving a high-level overview of Azure. Don't let the title put you off if you've already used Azure before though! There will be a lot of topics covered, with plenty of tips and tricks littered throughout. So whilst it's aimed at people newish to Azure, hopefully, there should be something for everyone!

At a high-level, these are the topics we'll cover:

  • The various ways you can interact with Azure - eg. Portal, CLI, Cloud Shell, CI/CD, Storage Explorer, etc. (demos, not slides!)
  • Terminology - eg. directories, accounts, subscriptions, resource groups, RBAC, App Services vs App Service Plans, etc, etc.
  • Azure Security
  • A run through of some of the popular Azure services (demos, not slides!)
  • Azure DevOps"


An Intro to Azure DevOps

"Azure DevOps covers a variety of things - from agile project management and issue tracking, to CI/CD, to hosting your source-code, and much more. In this talk, we'll be delving into each of the Azure DevOps "Services", explaining what each one is and how they work. This is not a high-level vague abstract talk - instead, it'll be quite demo-heavy, showing how you use it, and how it all fits together. By the end of this talk, you'll have a good understanding of how to use Azure DevOps in both your workplace and also your personal projects."


Kubernetes - What and Why?

  • June 2018 - .NET Oxford - 20 minutes

"Kubernetes has exploded in popularity lately, and with very good reason! I've recently started using it for a few of my own projects, and also with a couple of clients, and have completely fallen for it! This talk is an intro to Kubernetes aimed at people who haven't used it before. It starts off with a very lightning description of Docker and containers, then moves onto explaining the core Kubernetes concepts - eg. pods, deployments, services, kubectl, yaml - and then moves over to some live demos scaling my blog website, and showing a rolling update with zero downtime."


Docker and the ELK Stack

  • December 2017 - .NET Oxford (50 minutes)

"Docker can be a very powerful tool even if only used for local development. The ability to quickly install, teardown, and re-create various 3rd-party components via a single command is extremely compelling. In this talk, I introduce Docker and containers, and then demo spinning up Elastic Search and Kibana containers using Docker-Compose. We then use LINQPad to demo writing to Elastic Search from .NET using Serilog, and finally visualising the data in the Kibana front end."


LINQPad in Action

  • July 2017 - .NET Oxford - 20 minutes

"A surprising number of .NET developers don't really use or understand the power of the amazing LINQPad. This short talk is a demo-heavy (minimal PPT slides!) introduction to LINQPad, it's various use-cases, and various tips and tricks to get the most of the software."


LINQPad grok-talk at DDDEA

This talk was a short lunchtime grok-talk on LINQPad at the DDDEA conference in Cambridge. I needed to condense the above-mentioned 20-minute talk into a 10-minute slot - so this version was Powerpoint only, but with annotated screenshots as slides, giving it a demo feel but with slides. Having the added bonus that no-one had to watch me type!

  • September 2018 - DDDEA - 10 minutes

A Crash Course in Vi

  • December 2018 - .NET Oxford - 20 minutes

I did this talk at the December .NET Oxford lightning talk meetup. I've uses Vi now for about 15 years, and wanted to do a talk introducing people to what it is and what it can do. This talk was not about the Vi or Vim editors themselves - but more about the Vi way of using the keyboard. Whilst I used to use Vim, nowadays I just use Vi extensions in modern editors. The demos I did in the talk were with VSCode.


IoC containers and Dependency Inversion

  • May 2019 - .NET Oxford - 20 minutes

This was another .NET Oxford lightning talk, which explained what dependency inversion is and why it can help you write much more testable and maintainable code. I then explained with examples, what an Inversion of Control (IoC) container is, and how it can help.


Azure CLI and Azure Cloudshell

  • December 2019 - Azure Oxford - 20 minutes

This was a lightning talk for Azure Oxford about using the CLI, Azure CLI, and also Azure Cloudshell. I also recorded a slightly extended version for the Azure Advent Calendar, which was primary a video, but also included a blog post (see links below).


An intro to ML.NET

  • December 2019 - .NET Oxford - 10 minutes

This was a lightning talk for .NET Oxford. It was an intro to the Microsoft Machine Learning framework - ML.NET.


Writing Succinct C#

  • May 2020 - .NET Oxford - 10 minutes

This was a talk for .NET Oxford, and is a lightning talk version of my blog post about writing succinct C#.


JetBrains Rider - Intro, tips and tricks

This was a 15-minute lightning talk for .NET Oxford about the Jetbrains Rider .NET IDE.


Intro to MediatR

This was a 20-minute lightning talk for the .NET South West user group.


Integration Testing ASP.NET Core Web APIs with Docker

This was a 20-minute lightning talk for .NET Oxford.


Spectre Console

This talk is about the awesome Spectre Console library, which puts your .NET console applications on steroids! With support for tables, charts, pretty exceptions, treeviews, images, and much more! The talk was initially going to be by the author, Patrik Svensson - but sadly he discovered a few days before that the cottage he was staying at didn't have wifi! So Dan decided to take his place, and rather than prep for the talk, treat it more of a live-stream where we explore and discover the library together during the session, and get the audience involved.



Recent Posts

Featured Posts

.NET Oxford Links