Back to Basics Series

Having worked with a number of developers in the past, I've noticed that a fair number are still making basic software engineering mistakes. I think this is in part due to further education institutions focussing too heavily on the underlying principles of computing and ignoring the skills that…

CsQuery to the Rescue

Each time I need to extract or modify a piece of html, I'm amazed by the speed and simplicity which which CsQuery [https://github.com/jamietre/CsQuery] allows me to do it. It's a breath of fresh air over the other two options I've…

Yo - the Future of Push Notifications?

I have to admit, when I first heard of Yo, I was a little sceptical about how it would provide value and even more taken aback when it received over $1 million in VC funding! I mean, what is the point of receiving a "Yo" from a person…

Integration Testing with Nancy.Testing and RavenDB

The more I get to grips with NancyFX [http://nancyfx.org/] and RavenDB [http://ravendb.net/], the more I wish that they had been around from the start of my development career. Both frameworks lend themselves to building reliable applications that not only "just work" but can also…

Preventing duplicate form submissions with Parsley

I recently had a bug where a user managed to register twice on CompareVino [http://www.comparevino.com/] in a matter of seconds, causing the confirmation page to break (as it was expecting one user for the given email address instead of two). On closer inspection, the user in question…

The CompareVino Technical Stack

I set out to build CompareVino [http://www.comparevino.com/] for two reasons: a) to help myself and others drink better wine [https://jonleigh.me/hello-world/] and b) to form a hobby site where I could reacquaint myself in the art of web development (I was feeling a little rusty…

Hello World

I wouldn't say I'm a wine connoisseur but I really do enjoy drinking good wine. As often as possible, I try to buy wine from our local wine shop [https://plus.google.com/115399319250490204660/about?gl=uk&hl=en] but due to convenience, more often…