Latest Articles


Little's Law was first described in 1954 and later proved by John Little in 1961. It is typically expressed as: L = λW L represents the "long term average" number of customers in a stationary system λ represents the "long term average effective arrival rate" of new customers W represents the average time a customer spends in the system It's important to recognize that Little's Law is used in the…

Keep Reading →


CAP Theorem wikipedia is a classic "given 3 choices, choose 2" topic. The three choices are Consistency, Availability, and Partition Tolerance. You can't have all three. CAP Theorem Given distributed data or systems, the choice mostly comes up with there is a network partition, meaning two nodes of the system can't communicate immediately with one another. At that point there is a partition, and…

Keep Reading →


Tim Heuer recently published an article showing how to create your own dotnet CLI templates for generating GitHub action YAML files. I thought I'd give it a try and see how it worked, so here's my experience with it. It works by adding a template to the list of available templates used with the command. Install the template To install custom templates, you run this command and specify a NuGet…

Keep Reading →


This is the fifth and last of the 5 Laws of Software Estimates. I expanded on the fourth law of software estimates in my previous article. Like all things, how you view estimates is heavily context-dependent. If you're a developer who wants to maximize the amount of value you provide by building software, estimates do little to support this directly. As already covered by the previous 4 laws of…

Keep Reading →


I'm assuming you're here because you are seeing this error and are wondering why: The reason is most likely due to a Windows Update that restricted access to certain ports on Windows machines. The details are here. You can view a list of which ports are excluded from your user by running this command: On my Windows 10 machine I get this output: Specifically, I had an ASP.NET Core web app that…

Keep Reading →


When planning, whether for a large project or a single feature, there will be risks. Identifying risks and planning appropriate mitigations or countermeasures is an important part of planning. The military does this constantly in its planning, and has many tools for identifying and calculating risks based on likelihood and severity, and requires that mitigations be put in place and proper…

Keep Reading →


This is the fourth of the 5 Laws of Software Estimates. I expanded on the third law of software estimates in my previous article. Estimates are made for a given point in time, when a certain set of information and assumptions are known and held. As time passes, new information becomes available and assumptions change. The older the estimate, the more likely it is to be stale. Since by definition…

Keep Reading →


This is the third of the 5 Laws of Software Estimates. I expanded on the second law of software estimates in my previous article. Nobody should be surprised when estimates are wrong, they should be surprised when they are right! If estimates were accurate, they'd be called exactimates. Think about weather forecasting. Even with all of the software modeling and vast arrays of sensors we have in the…

Keep Reading →


This is the second of the 5 Laws of Software Estimates. I expanded on the first law of software estimates in my previous article. Estimates generally cannot be transferred between individuals. If I ask five team members to estimate a given story, using whatever units they wish (time, points, etc.), I'm likely to get a range of answers that could vary by 200% or more! The hope may be that averaging…

Keep Reading →


This is the first of the 5 Laws of Software Estimates. It's all about context. In the context of software development, of delivering business value in the form of working software, estimates provide no value. In the context of choosing what software to build, there may certainly be value in estimates, but even there it's an ROI calculation, with the hope being that the estimates will provide more…

Keep Reading →


Ardalis

Copyright © 2020