Don't Ignore Your Functions
Ignoring return values can often be dangerous in subtle ways but you may be so used to doing it that you don't even notice anymore. It's…
I write about building better software with a focus on Team Culture, Web Development, Type Safety, Functional Programming, Event Driven Systems. People first.
Ignoring return values can often be dangerous in subtle ways but you may be so used to doing it that you don't even notice anymore. It's…
Hypermedia Controls in REST provide links and actions with each response pointing to related resources. This concept is a powerful tool that…
A lot has been written about REST but less so when it comes to Hypermedia Controls. I haven't seen too many Hypermedia based APIs out in the…
Recently I had the opportunity to write a Custom Connector for Power BI and come across something I didn't expect. To build a Connector you…
Let's look at some questions: How do you specify which API to use for an environment? How do you configure the environment settings of…
I've long been an advocate of Continuous Deployment, but it's always felt somewhat out of reach. I've come close with projects that have had…
Expecto is a fantastic test framework and test runner for FSharp. But contrary to the name, the thing I like most about Expecto is that it…
When working with a traditional database inside of a monolith application, we don't usually need to think too much about how transactions…
You might have heard the phrase "there's no such thing as reliable messaging". It's an interesting statement, but aside from being…
Model State Validation for a JSON API isn't too hard because you only need to send back validation errors, especially with the attribute…
I recently got my hands on an older Raspberry Pi, which was a great excuse to see if I could get .NET running on it! If you're interested in…
Postman is a fantastic tool for testing any HTTP endpoint. But if you're using your browser to look around and you find something of…
Sometimes you just want to make a dynamic call. There is no equivalent for in so I guess we'll have to roll our own. In this post I'll go…
Mediators are an excellent addition to the developer toolbox. Allowing you to define a pipeline that is decoupled from any particular…
What I learned since last time A while ago I wrote about Generating Read Models with Event Sourcing where I suggest adding derived…
Getting started to React and want to get right to it? These are the links you're looking for. What you need! First up you’ll need Node…
The number one most important thing you can do in software development. Always leave the code base cleaner than when you found it. Always…
Awesome! MicroBus 3, what does that mean? Well, I've been using Semver (mostly, sometimes a little Ferver creeps in) for my package versions…
When the new .net core reached RC it looked like the perfect time to start to port some of the Nuget packages I've made starting with…
Getting the list of the AD groups if nice and easy in PowerShell. All the CmdLets are located in the module which you might not have…
I often like to think of software architecture as the art of structuring software. It's goal being to meet requirements while at the same…
Event sourcing is a very powerful tool that allows you to capture information you didn't even know you wanted. One of the things you usually…
Whether it's building software, a business, or some other project, chances are you'll almost never get it right the first time. Years ago, I…
PowerShell makes working with rest API's easy. In PowerShell version 3, the cmdlets and where introduced. These cmdlets are a huge…
The typical scaffolding tool and sample applications for MVC web apps are usually based on simple CRUD like systems. They'll, usually, have…
In C# It's often recommended that you should avoidi using nulls wherever possible. Avoiding nulls is a great concept that can simplify your…
These are the default generated Web.Config files from Visual Studio 2013 Update 3. Web.Config for .NET Framework 4.5.1 Web.Config for .NET…
Every developer has run into this issue at least once. There are a few different tools you can use to find out what process is locking a…
Debugging Reactive Extensions can sometimes be a bit tricky. When you have a few stream to watch, pinpointing failures is time consuming…
Step templates, introduced in Octopus Deploy 2.4, are a great way to share and reuse useful PowerShell scripts. Anyone can make a step…
Coming from C#, it provides the built in function that you can use to get the of a class. Powershell also makes it easy to get Type…
I'm happy to announce that I've joined forces with the amazing developers at Octopus Deploy. It's a fantastic product and if you havn't…
There are two types of background tasks that you'd want to use in .NET. Long running tasks which include things like background services…
I've talked about what Domain Driven Design is and what kind of benefits you can expect from it. The next concept to explore is what the…
All versions of Internet Explorer (version 5.5 all the way to version 11) will discard all cookies if the domain has an underscore in it…
One of the great features of JavaScript is the self-executing anonymous function. It's extremely useful because you can avoid polluting the…
Ninject is a fantastic Dependency Injection framework for the .NET framework. You can bind to the kernel whenever you want however you…
In 2004, Erick Evans coined the term Domain Driven Design in his book also called Domain Driven Design. Since then there has been lots of…
I've had a few people ask me why they should use NuGet and the occasional person that's never heard of it. If you are currently developing…
It's sometimes tempting to dismiss things as the next Fad or Buzzword. There's never enough time to learn everything and some things are…
I struck out to see if I could make use of the Microsoft ASP.NET Web Optimization Framework (version 1.1.2) in my self hosted OWIN Nancy…
Many people use git pull and merge frequently in an effort to keep a branch up to date while working a feature. However it's actually…
The first day at TechEd offered two main sessions the developer kick off and the Keynote. The developer kick off touched on a new Visual…
John Carmack's keynote this year was a fantastic talk about software engineering. Parts three and four of the keynote touched on all the key…
This is my PowerShell profile, it does a few nice things such as add and commands to the shell. Most importantly though it customizes my…
Testing emails can sometimes be a bit challenging. smtp4dev is a small program that intercepts all received emails so you can quickly send…
It's always a good idea to be as consistent as possible when you're writing code. So when you're using settings from a configuration file it…
If you've ever wanted to setup a wildcard entry in your hosts file so you don't have to add an entry for every IIS binding you'll be happy…
When working with websites that require https (SSL) developers always ending up facing the problem: Why can't you use hostnames with https…
It always takes me ages to kind what properties Visual Studio makes available to the MSBuild project files so here's the full set. Source…