Shayne Boyer

Hi, I'm Shayne Boyer, work as a developer advocate for Azure, .NET Core and Open Source, speak at national & community events while helping teams architect web and cloud applications.

So Many Ways to Learn .NET in 2020

It's a new year and sure to be on your list, as well as mine, is learning. Here is a quick list of some .NET learning resources for you to check off that resolution for 2020. .NET 101 Videos - dot.net/videos In September of 2019, many members if the .NET team created over 100 videos for topics including C# 101, .NET, desktop apps, ASP.NET web apps, learning containers and Docker. More have been added recently including a whole series around creating and managing NuGet packages. All of the videos are available on YouTube or Channel 9. Microsoft Learn Microsoft Learn allows you to master core concepts at your speed. Take 15 minutes to complete a module or...


Recommending VSCode extensions within your Open Source projects

Do you run an open-source project? Use Visual Studio Code and its extensive set of extensions when maintaining your project or even coding day to day? If you have an extension or set of them you prefer/recommend for your projects; you can enable other contributors by informing them with an alert showing any like. Clicking on Show Recommendations opens the Workspace Recommendations Details allows you to also ignore Ignore the recommendation as well. Enabling in your repository Add a .vscode folder, if not already there for your debugging setup, and create a new file named: extensions.json with the following structure. { "recommendations": [ "msjsdiag.debugger-for-chrome" ] } The recommendations[] contains the extensions identifier from the Visual Studio Marketplace. If I were to...


Deploying WCF and .NET Core applications to a single Kubernetes cluster

In my previous post, I showed how to take a WCF service and containerize it using Visual Studio. By doing so, this gives us the opportunity to push our heritage (aka legacy) application to the cloud either in Azure App Service using Web App for Containers, Azure Container Instances (ACI), or in the event we need something like an orchestrator Kubernetes is available in AKS. Many times we would like to use the new technology with the old. For instance, creating a .NET Core Razor Pages application or .NET Core Web API to consume the WCF application. However, the new applications will be using Linux containers and everything must be scalable and run in a Kubernetes cluster. Let's see how...


Modernizing WCF Services with containers and Visual Studio

There are a number of reasons for moving long-standing .NET Framework applications like WCF, and ASP.NET Webforms to containers and then into containers or "modernizing legacy heritage apps". DevOps - Once the application is set up in a container, build a CI/CD pipeline to build and push the applications to the cloud in a streamlined fashion. Velocity - In addition to the CI/CD features, the ability to version the container, ease of deployment and rollback in the event of failures is easier. Leverage other cloud services - Add Application Insights or logging, managed database services, and other PAAS offerings.  Where to start Visual Studio 2019 has the Docker tooling built into the workloads. You will need to...


Build the code, thank the contributors!

The GitHub event announced a great new feature - GitHub Sponsors. GitHub Sponsors is a new way to financially support the developers who build the open source software you use every day. See the full announcement blog post for more information. Recognizing Contributors Recently, Brian Clark introduced me to all-contributors (https://github.com/all-contributors/all-contributors) an awesome way to recognize contributors to your project. The installation is super easy. Enable the bot on your repository, and you're ready to go. Good practice is to have a CONTRIBUTING.md in your repo not only to encourage good practices but to also set expectations and standards. Adding contributors There are a few ways in which our contributors get added to the table...