SDD 2018 Schedule

The Coding Level shown within each description is a rating from 1 to 5 to indicate how much demo coding the session will contain – 1 means none, and 5 means nothing-but.

The Advanced Level shown within each description is a rating from 1 to 5 to indicate how advanced the session is – 1 means introductory, and 5 means black-belt.

Monday 14 May 2018

9:30

9:30–17:30

Pre-Conference Workshop

Scott Allen

PRE-01 Accelerated C# fundamentals

Scott Allen

9:30–17:30

Pre-Conference Workshop

Jeff Prosise

PRE-02 Building Cloud-based applications with Microsoft Azure

Jeff Prosise

9:30–17:30

Pre-Conference Workshop

Dino Esposito

PRE-03 ASP.NET Core best practices

Dino Esposito

9:30–17:30

Pre-Conference Workshop

Mark Richards

PRE-04 Microservices architecture and design

Mark Richards

9:30–17:30

Pre-Conference Workshop

Brian Randell

PRE-05 Add intelligence to your solutions with AI, bots, and more

Brian Randell

9:30–17:30

Pre-Conference Workshop

Juval Löwy

PRE-06 Zen of architecture

Juval Löwy

9:30–17:30

Pre-Conference Workshop

Kevlin Henney

PRE-07 TDD in a day

Kevlin Henney

9:30–17:30

Pre-Conference Workshop

Neal Ford

PRE-08 Software architecture fundamentals

Neal Ford

9:30–17:30

Pre-Conference Workshop

Andrew Clymer

Richard Blewett

PRE-09 Solid async in .NET

Andrew Clymer

Richard Blewett

Tuesday 15 May 2018

9:30

9:30–11:00

Keynote Presentation

Jeff Prosise

Why data science is the new frontier in software development — and why every developer should care

Jeff Prosise

11:00

11:00–11:30

Coffee Break

11:30

11:30–13:00

Track 1

Kathleen Dollard

Functional techniques for C#

Kathleen Dollard

11:30–13:00

Track 2

Andrew Clymer

Richard Blewett

Ten OO design patterns that every developer should know – in 90 minutes

Andrew Clymer

Richard Blewett

11:30–13:00

Track 3

Jeremy Clark

Getting started with .NET Core

Jeremy Clark

11:30–13:00

Track 4

Cory House

The reusable JavaScript revolution

Cory House

11:30–13:00

Track 5

Scott Allen

Building for resiliency and scale in the Cloud

Scott Allen

11:30–13:00

Track 6

Brian Randell

DevOps – what it means to you and how to get there

Brian Randell

11:30–13:00

Track 7

Juval Löwy

Zen of architecture

Juval Löwy

11:30–13:00

Track 8

Kesha Williams

What humans can learn from machines

Kesha Williams

13:00

13:00–14:00

Lunch Break

14:00

14:00–15:30

Track 1

Jon Skeet

C# 8 – the story so far

Jon Skeet

14:00–15:30

Track 2

Kevlin Henney

Thinking outside the synchronisation quadrant

Kevlin Henney

14:00–15:30

Track 3

Kathleen Dollard

.NET Standard: the easy route to platform independence

Kathleen Dollard

14:00–15:30

Track 4

Dino Esposito

How long to wait before jumping on to the ASP.NET Core bandwagon?

Dino Esposito

14:00–15:30

Track 5

Allen Holub

What is a Microservice? – learning the basics

Allen Holub

14:00–15:30

Track 6

Mark Richards

Analysing software architecture

Mark Richards

14:00–15:30

Track 7

Douglas Squirrel

Turning your team around is easier than you think

Douglas Squirrel

14:00–15:30

Track 8

Jeff Prosise

Building intelligent apps with Azure Machine Learning Studio

Jeff Prosise

15:30

15:30–16:00

Coffee Break

16:00

16:00–17:30

Track 1

Andrew Clymer

Richard Blewett

Simplifying thread safety in .NET

Andrew Clymer

Richard Blewett

16:00–17:30

Track 2

Kevlin Henney

Refactoring to immutability

Kevlin Henney

16:00–17:30

Track 3

Scott Allen

Building applications with ASP.NET Core

Scott Allen

16:00–17:30

Track 4

Cory House

Writing scalable JavaScript

Cory House

16:00–17:30

Track 5

Mark Richards

Microservices: the data story

Mark Richards

16:00–17:30

Track 6

Juval Löwy

The missing piece

Juval Löwy

16:00–17:30

Track 7

Jeremy Clark

TDD in the real world

Jeremy Clark

16:00–17:30

Track 8

Allen Holub

Incremental architecture

Allen Holub

17:30

17:30–19:00

Drinks Reception

Wednesday 16 May 2018

9:30

9:30–11:00

Track 1

Andrew Clymer

Richard Blewett

LINQ – how it works

Andrew Clymer

Richard Blewett

9:30–11:00

Track 2

Jon Skeet

Everything I know about software, in 90 minutes

Jon Skeet

9:30–11:00

Track 3

Rachel Appel

Globalisation and localisation with ASP.NET Core

Rachel Appel

9:30–11:00

Track 4

Simon Horrell

Make me a React developer

Simon Horrell

9:30–11:00

Track 5

Jules May

Continuous deployment – stories from the front line

Jules May

9:30–11:00

Track 6

Simon Brown

Software architecture for developers

Simon Brown

9:30–11:00

Track 7

Sander Hoogendoorn

Do or don’t. There’s no try. Or is there? – the power of monads explained. Sort of.

Sander Hoogendoorn

9:30–11:00

Track 8

Jeff Prosise

Building sophisticated machine-learning models with Azure Machine Learning Services

Jeff Prosise

11:00

11:00–11:30

Coffee Break

11:30

11:30–13:00

Track 1

Jeremy Clark

I’ll get back to you: task, await, and asynchronous methods in .NET

Jeremy Clark

11:30–13:00

Track 2

Kevlin Henney

Software is details

Kevlin Henney

11:30–13:00

Track 3

Christian Wenz

Web application security up-to-date: OWASP Top Ten 2017

Christian Wenz

11:30–13:00

Track 4

Cory House

Rapid UI development with mock APIs

Cory House

11:30–13:00

Track 5

Jimmy Bogard

Refactoring towards distributed systems resilience

Jimmy Bogard

11:30–13:00

Track 6

Neal Ford

Comparing service-based architectures

Neal Ford

11:30–13:00

Track 7

Allen Holub

Mob programming

Allen Holub

11:30–13:00

Track 8

Kesha Williams

Facial recognition is creeping into daily life

Kesha Williams

13:00

13:00–14:00

Lunch Break

14:00

14:00–15:30

Track 1

Christos Matskas

Unravelling the productivity secrets of Visual Studio 2017

Christos Matskas

14:00–15:30

Track 2

Jeremy Clark

Clean code: homicidal maniacs read code, too!

Jeremy Clark

14:00–15:30

Track 3

Dino Esposito

Using SignalR for ASP.NET Core

Dino Esposito

14:00–15:30

Track 4

Kim van Wilgen

Specification by example of specification by example

Kim van Wilgen

14:00–15:30

Track 5

Mark Richards

Microservices communication patterns

Mark Richards

14:00–15:30

Track 6

Seb Rose

Practical Agile: what goes wrong and how you can fix it

Seb Rose

14:00–15:30

Track 7

Allen Holub

DbC (Design by Coding): applying TDD principles to architecture

Allen Holub

14:00–15:30

Track 8

Brian Randell

Database lifecycle management and the SQL Server database

Brian Randell

15:30

15:30–16:00

Coffee Break

16:00

16:00–17:30

Track 1

Mark Pitt

Getting physical with C# – Raspberry Pi, .NET Core and the Internet of Things

Mark Pitt

16:00–17:30

Track 2

Sander Hoogendoorn

It’s a small world after all – how thinking small is changing software development big time

Sander Hoogendoorn

16:00–17:30

Track 3

Scott Allen

An opinionated approach to ASP.NET Core

Scott Allen

16:00–17:30

Track 4

Rachel Appel

Write OOP JavaScript with TypeScript

Rachel Appel

16:00–17:30

Track 5

Ed Courtenay

Docker in the real world

Ed Courtenay

16:00–17:30

Track 6

Mark Richards

Creating self-configuring systems

Mark Richards

16:00–17:30

Track 7

Neal Ford

Why does yesterday’s best practice become tomorrow’s anti-pattern?

Neal Ford

16:00–17:30

Track 8

Joe Natoli

UI design crash course for software developers

Joe Natoli

Thursday 17 May 2018

9:30

9:30–11:00

Track 1

Sasha Goldshtein

Time-travel debugging

Sasha Goldshtein

9:30–11:00

Track 2

Jimmy Bogard

SOLID architecture in slices not layers

Jimmy Bogard

9:30–11:00

Track 3

Rachel Appel

Unit testing ASP.NET Core apps

Rachel Appel

9:30–11:00

Track 4

Christian Wenz

Web application security trends

Christian Wenz

9:30–11:00

Track 5

Allen Holub

Microservice swarms: decentralised discovery and scaling

Allen Holub

9:30–11:00

Track 6

Heather Downing

Smaller not taller: defeating the mobile app architecture giant

Heather Downing

9:30–11:00

Track 7

Juval Löwy

The architect

Juval Löwy

9:30–11:00

Track 8

Dino Esposito

The new era of GDPR: privacy and data protection guidelines for developers

Dino Esposito

11:00

11:00–11:30

Coffee Break

11:30

11:30–13:00

Track 1

Andrew Clymer

Richard Blewett

GC – how it works

Andrew Clymer

Richard Blewett

11:30–13:00

Track 2

Jeremy Clark

Abstract art: getting abstraction ”just right”

Jeremy Clark

11:30–13:00

Track 3

Dominick Baier

ASP.NET Core 2 security – an overview

Dominick Baier

11:30–13:00

Track 4

Allen Holub

Contemporary web application architecture: the whole stack

Allen Holub

11:30–13:00

Track 5

Sander Hoogendoorn

Welcome to the world of micro-applications (how to make the most of Microservices in your front end)

Sander Hoogendoorn

11:30–13:00

Track 6

Neal Ford

Stories every developer should know

Neal Ford

11:30–13:00

Track 7

Jules May

If considered harmful, or how to eliminate 95% of your bugs in one easy step

Jules May

11:30–13:00

Track 8

Jimmy Bogard

Continuous delivery in Azure: beyond right-click-deploy

Jimmy Bogard

13:00

13:00–14:00

Lunch Break

14:00

14:00–15:30

Track 1

Sasha Goldshtein

Case studies: investigating production issues in the field

Sasha Goldshtein

14:00–15:30

Track 2

Dino Esposito

Blockchain my heart

Dino Esposito

14:00–15:30

Track 3

Rachel Appel

Build real-time, high-performing software with ASP.NET

Rachel Appel

14:00–15:30

Track 4

Emma Garland

Christopher Myhill

Off with its head! – using a headless CMS to power a mobile app

Emma Garland

Christopher Myhill

14:00–15:30

Track 5

Christos Matskas

Taking Microservices to the extreme with Azure Functions

Christos Matskas

14:00–15:30

Track 6

Adam Tornhill

A crystal ball to prioritise technical debt

Adam Tornhill

14:00–15:30

Track 7

Juval Löwy

Actors – the past and future of software engineering

Juval Löwy

14:00–15:30

Track 8

Heather Downing

Google Assistant vs Alexa: battle of the bots

Heather Downing

15:30

15:30–16:00

Coffee Break

16:00

16:00–17:30

Track 1

Jeremy Clark

DI why? Getting a grip on dependency injection

Jeremy Clark

16:00–17:30

Track 2

Jules May

Closures: the next great development in software technology

Jules May

16:00–17:30

Track 3

Dominick Baier

Authorisation is hard! Implementing authorisation in web apps and APIs

Dominick Baier

16:00–17:30

Track 4

Christian Wenz

Measuring and optimising frontend performance of web applications

Christian Wenz

16:00–17:30

Track 5

Christos Matskas

Containers in Microsoft Azure – a match made in heaven

Christos Matskas

16:00–17:30

Track 6

Neal Ford

Hypothesis/data-driven development using feature toggles

Neal Ford

16:00–17:30

Track 7

Simon Brown

Maps, travel guides and source code

Simon Brown

16:00–17:30

Track 8

Joe Natoli

Fixing enterprise product design: UX lessons from start-ups

Joe Natoli

Friday 18 May 2018

9:30

9:30–17:30

Post-Conference Workshop

Dominick Baier

POST-01 Identity & access control for modern applications and APIs using ASP.NET Core 2

Dominick Baier

9:30–17:30

Post-Conference Workshop

Seb Rose

POST-02 User stories: from requirement to support

Seb Rose

9:30–17:30

Post-Conference Workshop

Kevin Jones

POST-03 Building and testing Angular applications

Kevin Jones

9:30–17:30

Post-Conference Workshop

Kathleen Dollard

POST-04 I will make you a better C# developer – 2018 edition

Kathleen Dollard

9:30–17:30

Post-Conference Workshop

Allen Holub

POST-05 Mob Programming and #NoEstimates: new trends in Agile thinking

Allen Holub

9:30–17:30

Post-Conference Workshop

Neal Ford

POST-06 Building evolutionary architectures

Neal Ford

9:30–17:30

Post-Conference Workshop

Adam Tornhill

POST-07 Prioritise technical debt with Behavioural Code Analysis

Adam Tornhill

9:30–17:30

Post-Conference Workshop

Juval Löwy

POST-08 Microservices-oriented development process

Juval Löwy

9:30–17:30

Post-Conference Workshop

Sasha Goldshtein

POST-09 Mastering .NET debugging with Visual Studio

Sasha Goldshtein