Consultant and trainer.
Microsoft MVP.
Pluralsight Author.

  Learn Docker in a Month of Lunches Learn Docker in a Month of Lunches - the book
  My Top Video Courses
 
 Books
 Courses

My Pluralsight Courses

I've been authoring training courses with Pluralsight since 2013, covering a range of topics - mainly Docker, .NET and Azure, but with some architecture, AWS and Linux content too.

This page has an up-to-date list of all my courses, with their current user rating and an excerpt.


Monitoring Containerized Application Health with Docker  

Containers are the best way to run new and old server applications, but before you go to production you need to understand a new approach to monitoring - one that works when you have dozens or hundreds of short-lived containers.

This course gives you that understanding. I'll explain how monitoring works in Docker, exposing metrics from your containers and running other containers to collect the metrics and visualize them in a friendly dashboard.

You'll learn how to build three levels of monitoring into your dashboards, so you can see what's happening in your applications, in your containers, and in the Docker platform itself.

I'll be using Java apps in Linux containers and .NET apps in Windows containers, so you'll see how to make monitoring consistent across different technology stacks. And I'll be running on single Docker servers and on Docker swarm, so you'll learn how container monitoring works the same way in every environment.

By the end of the course you’ll understand how to add effective monitoring into your own applications, using industry-standard tools and techniques.

Released: 09 August 2018


Managing Load Balancing and Scale in Docker Swarm Mode Clusters  

Docker swarm mode is a production-grade container orchestrator with built-in features for load-balancing and scaling your applications. In this course you'll learn how to deploy and manage applications in swarm mode for high availability, high performance, and easy scale.

First, you'll learn how load balancing and service discovery works in swarm mode. Then you'll learn how to scale your services and your swarm - with Linux and Windows nodes. Finally, you'll learn how to run multiple applications and maximize the use of your cluster, and how swarm mode supports production maintenance and deployment.

When you’re finished with this course, you will have the skills and knowledge to run performance reliable apps in production with Docker swarm mode.

Released: 23 March 2018


Modernizing .NET Framework Apps with Docker  

Docker isn't just for greenfield microservices applications, you can take full .NET Framework applications and run them in containers with no code changes. That's a great starting point for modernizing the architecture and moving to the cloud.

In this course you'll learn how to efficiently run .NET applications and create a more modern architecture utilizing Docker. First, you'll discover how to package and run .NET apps in Docker containers on Windows. Then, you'll explore how to evolve the application architecture by breaking features out into separate containers. Finally, you'll delve into taking your modernized app to production on Azure.

By the end of the course, you'll understand how Docker works on Windows and what Docker can do for your existing .NET landscape.

Released: 28 December 2017


Getting Started with Docker Datacenter  

Developers love Docker for its simple approach to packaging, distributing, and running applications. The open source Docker ecosystem provides a lot of tools, but before you put container workloads in production you'll want enterprise-grade security, management, and support. Docker Datacenter provides that for multi-node installations of Docker on-premises and in virtual private clouds.

In this course you'll learn about all of the features of Docker Datacenter: the supported Docker Engine, Docker Trusted Registry and Universal Control Plane. First, you'll discover how to digitally sign images. Next, you'll explore how to run and scale container workloads. Then, you'll learn how to use role-based access control to secure Docker components. Finally, you'll cover how to set up Docker Datacenter as a highly available cluster.

By the end of this course, you'll be able to run your own trial of Docker Datacenter.

Released: 6 January 2017


Hadoop for .NET Developers  

Big Data is an established discipline, and every company can benefit from storing and analyzing large amounts of data to improve their products and services. Hadoop is the key technology in Big Data, but it's too often seen as something which is only for Java and Linux people. This course will teach you how to use this key technology.

First, you'll learn how to bring Hadoop into a Microsoft environment. You'll also discover how to run the services on Windows and create fast, understandable MapReduce queries in .NET using C#. The course takes a proof-of-concept approach, demonstrating how to evaluate Hadoop on Windows with .NET and .NET Core. By the end of the course, you'll be able to start your own Hadoop journey with confidence.

Released: 29 August 2016


Managing Azure IaaS with PowerShell  

Hosting your infrastructure on Azure is a powerful option, but with great power comes a lot of management overhead. In this course you'll learn how to automate IaaS setup, configuration and management on Azure with PowerShell. We look at moving an existing deployment composed of Linux and Windows app servers to the cloud.

We start with a basic deployment, then move on to custom disk images, and automated deployment with PowerShell DSC and Azure Resource Manager templates. The course rounds off with some typical admin tasks, covering security, performance, and monitoring. By the end of this course, you'll be able to manage and host your infrastructure on Azure with ease.

Released: 10 April 2015


HDInsight Deep Dive: Storm, HBase, and Hive  

HDInsight is Microsoft's managed Big Data stack in the cloud. With Azure you can provision clusters running Storm, HBase, and Hive which can process thousands of events per second, store petabytes of data, and give you a SQL-like interface to query it all. In this course, we'll build out a full solution using the stack and take a deep dive into each of the technologies.

Released: 6 November 2015


Real World Big Data in Azure  

The Big Data components of Azure let you build solutions which can process billions of events, using technologies you already know. In this course, we build a real world Big Data solution in two phases, starting with just .NET technologies and then adding Hadoop tools.

Released: 16 June 2015


Getting Started with Ubuntu  

Ubuntu is a free operating system which you can run on your PC or laptop instead of Windows or OSX. It's fast, safe, easy to use, hugely powerful, and fun. This course starts with the basics: installing Ubuntu, finding your way around, and using more free software to work and play. Then we move on to more advanced topics like using the command line, building software, and using Ubuntu Server locally and in the Cloud.

Released: 26 February 2015


Five Essential Tools for Building REST APIs  

REST APIs are a great way to connect systems together. They are platform-independent and work on simple, well-established standards that are designed to support high performance, massive scale, and secure communication. This course presents a toolset for delivering better REST APIs that give clients what they need, run fast, scale well, and are easy to look after.

Released: 01 December 2014


Executable Specifications: End-to-End Acceptance Testing With SpecFlow 

Acceptance tests prove your solution actually works, and using them to implement executable specifications proves your solution does what it should do. In this course we look at capturing requirements as executable specifications and implementing them as end-to-end tests with SpecFlow.

Released: 27 August 2014


IDisposable Best Practices for C# Developers 

IDisposable is at the heart of .NET. This course will teach you all about implementing and using IDisposable in C#, and show you what goes wrong if you don't use IDisposable, so you know why you need to use it in your solutions.

Released: 30 June 2014


Message Queue Fundamentals in .NET 

Message queues are a core technology for building fast, reliable systems. This course teaches the fundamental messaging patterns with practical .NET implementations using MSMQ, ZeroMQ, cloud message queues, and WebSphere MQ.

Released: 28 April 2014


C# Extension Methods 

Extension methods are a powerful C# feature which are underused and often misunderstood. In this course you’ll learn all you need to know about writing and using extension methods.

Released: 16 December 2013


Implementing the Reactive Manifesto with Azure and AWS 

The Reactive Manifesto describes applications which are responsive, event-driven, scalable and resilient. This course shows you how to design, build, deploy and run Reactive applications in the cloud.

Released: 30 October 2013


Nginx and PHP Fundamentals 

Nginx and PHP are two of the biggest platforms on the Web. Get up and running with these lightweight, easy to learn technologies that provide high-performance solutions with low operating costs.

Released: 31 July 2013


Caching in the .NET Stack: Inside-Out 

A comprehensive look at caching throughout the .NET stack, covering WCF, Web API, Web Forms and MVC. You'll learn how and where to add caching, and you'll see the huge performance benefits you can expect.

Released: 27 June 2013