Snowball V2.0

February 23, 2018 Snowball, c#

I haven't written anything new here in a very long time and a lot has happened since then. I started a new job at BeumerGroup this year and now work mostly in TypeScript writing an html5 spa app.

In my spare time I've decided to working on version 2.0 of my Snowball, my 2D game framework. I've been playing around with the idea for a while now. This version will be developed directly for .net core and will be developed with cross platform capability in mind. The api will look similar but will have some changes.

The old repo is still available on my github at

Using batch files as the task runner in Visual Studio Code

July 09, 2015 Visual Studio, Visual Studio Code, Batch Files

Visual Studio Code allows you specify tasks which can be in a task runner. Most examples I've seen show how to integrate with Javascript task runners such as Gulp. There is no reason why you can't simpley use batch files though.

Read More

LINQ calls IEqualityComparer<T>.GetHashCode() before Equals()

November 24, 2014 LINQ, IEqualityComparer, GetHashCode

This is a problem that has bitten me more than a few times so I thought it was about time to write a blog post about it. It's one of those problems that makes you scratch your head for a bit and then the light bulb goes on and you remember you've solved this one before. It occurs whenever you use a LINQ extension method which takes an instance of IEqualityComaparer.

Read More

My Experience with OpenGL vs Direct3D

November 18, 2014 OpenGL, Direct3D

I've struggled a lot with myself over whether I should use OpenGL or Direct3D. There is no blanket answer to this question that anyone can tell you. Both APIs have a very different feel and which one you prefer can only be decided on your own.

Read More

Code from when I was young and stupid and needed the money

June 18, 2014 Old Code, Cplusplus, Young

We have had 2 interns at work for the past few weeks and one of the tasks we gave them was to implement Quicksort. This got me to thinking about my youth and some of the code I wrote back then. I've decided to post it.

Read More