It's Null?

Phrase heard round the world

HomeArchiveTalks

Azure Container Service

This presentation covers Docker containers, Container Orchestrators, specifically Kubernetes and using Azure Container Service to create a Kubernetes cluster. Learn how to auto-scale containers, maintain deployment history, rollback deployments. Also covers topics like self-healing clusters, auto load balacing, rolling updates and blue/green deployments all using Kubernetes. The sample app is packaged as container images freely available on Docker Hub. This presentation can be followed to create your own Kubernetes cluster on Azure, deploy the sample application and perform a rolling update on your own cluster.

  • Slides: View
  • Code: Container images on Docker Hub, follow presentation to deploy to custom Kubernetes container in Azure

Presented: Apr. 22, 2017 at Raleigh Global Azure Bootcamp

ASP.NET Core Application Development Study Group (4 of 4)

This was the last in a series of meetups on learning ASP.NET Core. The series was based on the MSPress book “ASP.NET Core Application Development". Each meetup was focused on particular chapters from the book. In each meetup, local speakers would cover additional material and examples beyond what was covered in the book. For this last meetup, I split speaking duties with Rob Zelt. For this meetup, I talked about ASP.NET Core Middleware and Configuration. I talked about ASP.NET Core environments and how web.config and global.asax are replaced. I talked about the IConfiguration and the variety of configuration sources. Finally, I demonstrated support for user secrets.

Presented: Mar. 15, 2017 at Raleigh TRINUG user group meeting

ASP.NET Core Application Development Study Group (2 of 4)

This was the second in a series of meetups on learning ASP.NET Core. The series was based on the MSPress book “ASP.NET Core Application Development". Each meetup was focused on particular chapters from the book. In each meetup, local speakers would cover additional material and examples beyond what was covered in the book. For this second meetup, I split speaking duties with Rob Zelt and Jeremy Brown. For this meetup I demonstrated Docker containers. Specifically, we created a Docker container for an ASP.NET Core application. I demonstrated versioning of Docker containers. I also demonstrated Docker compose and running other types of applications, like Wordpress. I showed running a Linux Docker container directly in Azure. I finished by showing support for Windows Docker containers on Windows 10.

Presented: Feb. 15, 2017 at Raleigh TRINUG user group meeting

ASP.NET Core Application Development Study Group (1 of 4)

This was the first in a series of meetups on learning ASP.NET Core. The series was based on the MSPress book “ASP.NET Core Application Development". Each meetup was focused on particular chapters from the book. In each meetup, local speakers would cover additional material and examples beyond what was covered in the book. For this first meetup, I covered the new dotnet command-line. I also covered the ability to install multiple dotnet SDKs side-by-side. I demonstrated publish of an ASP.NET Core app, specifically a portable and self-contained application. I also demonstrated running Kestrel behind the Apache web server. Lastly, the entire meetup walked through a hands-on portion where I provided a pre-written repository and they had to include that repository into a new ASP.NET Core application that they created.

Presented: Feb. 1, 2017 at Raleigh TRINUG user group meeting

Javascript Async Patterns

This presentation covers patterns you can use for your asynchronous code in Javascript, specifically javascript in the browser. Covers callbacks and promises which you can use today. Touches on upcoming patterns like async/await keywords which may be added in a future version of Javascript. The goal is to come with away with some ideas about how to improve your async code and the pros/cons of the various patterns.

Presented: Jan. 18, 2017 at Raleigh TRINUG user group meeting, Oct. 29, 2016 at Raleigh CodeCamp

Converting Web App to ASP.Net Core

Demonstrates converting a existing ASP.NET WebAPI application to ASP.NET Core and .NET Core. Discussed converting both with the WebApiCompatShim and without. Both converted apps are demo'd running on Linux using VS Code.

Presented: Sep. 10, 2016 at Raleigh DotNetConf.local

Behind the scenes of Modern Web App, part 4

Part 4 of a 4 part series. The purpose of the series is to build up a sample web application. The application being built is a Chore tracking application, tracking children, chores assigned to children and whether a child has completed a chore. The final session discusses and shows solutions to problems raised in earlier sessions. This session also covers writing client-side validation, both using a two-way data binding framework and as a separate client-side validation library. This session wraps up all the previous sessions to end up with a final usable chore tracking application. The goal of this series is to intentionally NOT use a framework and write the code by hand to better learn how frameworks work.

  • Slides: None, download code and follow SessionReadme.txt
  • Code: On GitHub

Presented: Aug. 3, 2016 at Raleigh TRINUG user group meetup

Behind the scenes of Modern Web App, part 3

Part 3 of a 4 part series. The purpose of the series is to build up a sample web application. The application being built is a Chore tracking application, tracking children, chores assigned to children and whether a child has completed a chore. In this third part, separating each grid into it's own component is discussed. This sample discusses bugs that can occur with slow responding servers and possible ways to mitigate these bugs. The web application silently fails if there are server side errors and methods to deal with server side errors are discussed. Finally, a simple two-way data binding framework is provided and discussed so that users have some understanding how frameworks work. The goal of this series is to intentionally NOT use a framework and write the code by hand to better learn how frameworks work.

  • Slides: None, download code and follow SessionReadme.txt
  • Code: On GitHub

Presented: Jun. 1, 2016 at Raleigh TRINUG user group meetup

Behind the scenes of Modern Web App, part 2

Part 2 of a 4 part series. The purpose of the series is to build up a sample web application. The application being built is a Chore tracking application, tracking children, chores assigned to children and whether a child has completed a chore. In this second part, a fully functional back-end has been written in ASP.Net MVC4 and as such Visual Studio 2013 or later is required to run the app. The front-end does not use MVC and uses static HTML and plain javascript. In this session, attaching event handlers, directly and with event delegation is discussed along with how to create modal dialogs in HTML. The goal of this series is to intentionally NOT use a framework and write the code by hand to better learn how frameworks work.

  • Slides: None, download code and follow SessionReadme.txt
  • Code: On GitHub

Presented: May 4, 2016 at Raleigh TRINUG user group meetup

Behind the scenes of Modern Web App, part 1

Part 1 of a 4 part series. The purpose of the series is to build up a sample web application. The application being built is a Chore tracking application, tracking children, chores assigned to children and whether a child has completed a chore. In this first part, the goal is simply to write code that renders each of the three grids. The examples show creating DOM elements with JQuery, without JQuery, mitigating cross-site scripting attacks and ways to improve rendering performance. Finally, a small templating library is shown to demonstrate how a templating library might be written. The goal of this series is to intentionally NOT use a framework and write the code by hand to better learn how frameworks work.

  • Slides: None, download code and follow comments in choreMain.js
  • Code: On GitHub

Presented: Apr. 6, 2016 at Raleigh TRINUG user group meetup

Web Applications: High Level Architecture Discussion

Led a 2 hour interactive discussion on high level web application architecture. Covered such topics as post-back vs ajax web architecture, highly coupled front-end and back-end system vs. de-coupled, chatty vs. chunky communication, pros & cons of server vs client-side executed code, comparisons of modern web apps with native mobile apps, improvements over js such as typescript, coffeescript, abilities to prototype quickly with de-coupled architectures, pros and cons of building api first, how team organization affects web application architecture, organization of js code, breaking into components, modules.

  • Slides: View, slides started free form discussion
  • Code: None

Presented: Mar. 2, 2016 at Raleigh TRINUG user group meetup

Debugging Javascript in the Browser

Demo of JS debugging tools in IE8, IE11, Chrome and Firefox. Discussed a number of advanced debugging techniques. Covered debugging techniques that work regardless of framework, also discussed techniques specific to Angular, Knockout and Ember. Also included hands on lab with broken JS samples where developers could work on improving their debugging skills.

Presented: Nov. 11, 2015 at Winston-Salem Triad Developers user group meetup, Aug. 26, 2015 at Wilmington Cape Fear DotNet user group meeting, Mar. 4, 2015 at Raleigh TRINUG user group meeting, Nov. 8, 2014 at Raleigh CodeCamp

Learning from JS Libraries

Interactively walked through a few open-source JS libraries as a way of learning JS techniques and best practices.

Presented: Sep. 30, 2015 at Raleigh TRINUG user group meeting

Diving into Microsoft's Code

Looked at open-source .NET framework code, MVC, Web API code. Discussed how to find on GitHub. Discussed debugging with symbol servers. Also included customizing Console class and building custom version of .NET framework.

  • Slides: View
  • Code: Slides include links to MS code that was shown

Presented: Jul. 29, 2015 at Raleigh TRINUG user group meeting