Blog

Modern Web Stack (Part I) - npm, TypeScript, and webpack

It is an exciting time for Web application developers. The amount of innovation and the sheer number of technology options is staggering. However, this rapid pace of innovation comes at a cost. For a developer trying to "catch up" and make good choices, it is becoming increasingly difficult to get a firm grasp on one development stack before the next big thing comes along.

Read more

ASP.NET Core's URL Rewrite Middleware behind a load balancer

My deployment architecture of choice (and the one I used for the Treeloop website), is an ASP.NET Core application in a Docker container deployed to a cluster of Linux instances, behind a load balancer. All of this happens with the help of the Amazon EC2 AWS Container Service (ECS).

Read more

Server Name Indication (SNI) with IIS 8

Server Name Indication (SNI) is an extension to the TLS protocol that includes the hostname during the handshaking process. This allows for a web server to host multiple SSL-enabled web sites using one IP address. Prior to IIS 8, it was not possible to use this capability in IIS.

Read more

IIS Application Domain and Pool Recycling

Of all the questions I've received from students, the greatest percentage of them involve some aspect of recycling. What can cause a recycle to happen? What are the effects on my application when a recycle occurs? Should I completely turn it off if possible? In this article, my aim is to present a concise description of application pool recycling in IIS and address many of the common questions I've been asked over the years.

Read more

Controller Type Resolution in ASP.NET MVC

In ASP.NET MVC, a request is typically destined to execute a method of a controller. When it comes to defining a controller, thee are requirements and there are conventions. In many an instance, I’ve seen some conventions described as requirements and some requirements described as conventions. In this article, I aim to describe some of these common misconceptions and clear things up a bit.

Read more