Reverting Azure Sql Databases

Once in a while, you may find that you need to roll your Azure Sql Database back to a previous state. Unfortunately, even though Azure takes care of backups for you, there isn't a lot of information on how to restore a database to an earlier state. For…

RazorMailer - A Simple .NET Email Framework Using Razor Templates

After a considerable amount of effort (a lot more than I realised), RazorMailer [https://github.com/jonleigh/RazorMailer] is ready to be released under version 1.0.0. RazorMailer is a .NET based email framework that uses Razor templates (and RazorEngine [https://github.com/Antaris/RazorEngine] under the hood) to…

You Probably Shouldn't be Using Micro Services

Whoever coined the term Monolith to describe any application built on a single code base, no matter how it it's structured, delivered a major coup for the Micro Services movement. According to Wikipedia, the term was initially used to describe enormous main frame applications that became unmaintainable due…

Creating a New Email Framework for .NET

For a while, I've been toying with the idea of writing a simple mail sending package for .NET. The only viable solution at the moment is ActionMailer.Net [https://bitbucket.org/swaj/actionmailer.net/wiki/Home] which was initially abandoned but then found a new home at ActionMailerNext…

9x Your Nancyfx Boot Time With This One Simple Trick

I've always wanted to write a click bait headline and it seems like I've now found the perfect opportunity. I run my side project, CompareVino, on the "Canoe" Appharbor plan - cheap and cheerful but it gets the job done. My only gripe was…

Simplifying Message Driven Architectures with Brighter

Ian Cooper demoed Brighter [http://iancooper.github.io/Paramore/Brighter.html] at the .NET user group in London last night and I must say I'm impressed. In essence, it is a command processing framework that allows you to hand off processing commands (or discreet units of work) to…

Removing Unused CSS Selectors Using UnCSS

A very easy way to speed up the front end development of your website is to a) use a decent UI framework (Bootstrap being the obvious answer here but there are others) and b) buy a theme that's based on said framework. Descent themes normally come with a…

Exception Handling - A Primer

Proper exception handling with applications is a critical and often misunderstood concept for many developers. In the Java world, I personally think the Eclipse IDE has done its utmost to propagate bad practice by generating the following when surrounding your method with a try catch block: try { MyMethod(); } catch (Exception…