Our First .NET Oxford Meetup!!

It was our very first .NET Oxford event on Tuesday night - and wow, what an incredible turnout! Before the event, we were amazed by how many people RSVP'd on Meetup.com - with the final figure being 93 people! We knew that not everyone who RSVP'd would come along,…

LINQPad Tips and Tricks

Whilst pretty much all .NET developers have heard of LINQPad - from my experience, a much smaller percentage have actually given it a proper go and use it on a regular basis. Up until a year ago, this also included myself. I'd heard of it, but never properly used it,…

Welcome to .NET Oxford!!

Well, what a great time to be a .NET developer! With all the changes that have been happening over the last year or so - with the new cross platform .NET Core, Azure, Microsoft's embracing of open source, and so much more! So it surprised me that even though Oxford…

Playing with a Dockerised ASP.NET Core

Whilst I've used Docker in the past, it has only really been for development and prototyping - mainly to host 3rd party software - eg. MongoDB, Neo4j, etc. I've tended to have my webapp itself outside of Docker - partly due to not using the Core version of ASP.NET,…

Create a trail ...

Whilst most projects are quite different from one another, the project management tools used are usually very similar. For example, most projects (hopefully!) store the source code in some form of source control system, like Git. Also, most projects involve some form of bug tracking system - eg. JIRA, Mantis,…

All about Inversion of Control Containers!

Following on from my previous post about dependency injection, the topic of IoC containers feels like a nice continuation. I wanted to keep the two posts separate, because it's important to understand that you do not need an IoC Container just because you want to inject your dependencies. Dependency injection…

Writing Testable Code - It's all about dependencies

Following on from my post about why you should write automated tests, I wanted to talk about how to write code that is testable. Unfortunately, unless you explicitly know how to write testable code, and are familiar with the SOLID principles (which from my experience, the average developer isn't!) -…

My 2015 in Review

Well, 2015 was definitely quite an interesting year - with two job changes, and the start of my own company! But far more importantly - we had the very exciting news that we're going to have another little baby boy mid 2016! Our current son Jack is now almost two.…

The end of a great team ...

Seven weeks ago we were told that our company was going into administration due to financial difficulties. Whilst at the time, this didn't necessarily mean the company was closing down, and there was chance of finding a buyer, unfortunately on Friday we were informed that the decision had been made…

The Interactive Rebase

My last post was focused around a problem in Git which occurs when the rebase command isn't used, and developers blindly use pull/push. The problem is that it creates pointless merge commits, and also stops the Git history from being linear, ie. the branches are diverging and remerging back…