Writing

Essays on software, design, and building better digital experiences

Five Minute Design Patterns #3: The Prototype Pattern

Another post in my blog post series where I try to cover all of the Gang of Four Design Patterns in five minutes each, once again we have one of the Creational Patterns... the Prototype Pattern!

Five Minute Design Patterns #2: The Factory Pattern

The second post in my blog post series where I try to cover all of the Gang of Four Design Patterns in five minutes each, this time it's one of the Creational Patterns... the Factory Pattern!

Five Minute Design Patterns #1: The Builder Pattern

The first of posts in my blog post series where I try to cover all of the Gang of Four Design Patterns in five minutes each, this time it's one of the Creational Patterns... the Builder Pattern!

A common enemy to software developers.

Fear of missing out & imposter syndrome are two serious problems that many software developers have to deal with. Trust me, you're not alone... & trust me, you're also fantastic at what you do, regardless what you might think.

Tips for learning a new code base.

Need to quickly learn a new code base or upskill in some technologies? Here are my tips.

Updating your .gitignore

When you forget to add a .gitignore to your project...

Dependency Injection in .NET Core

I think it's safe to say that there's a lot of hype around .NET Core nowadays because of it being cross-platform, open source, etc, which isn't really something we've been used to from Microsoft technologies over the years. So as someone who works in a predominantly .NET dominated environment, I wanted to dedicate some time playing around with it, building a simple API & just investigating how different it is to the regular .NET Framework.

Removing conflicted copies on Dropbox

As someone who uses Dropbox on pretty much all the different gazillion devices I own, I came across a rather frustrating issue. For some reason, almost every time my Macbook Pro would try to synchronise files modified on one of my Windows devices with Dropbox, meaning the older versions still on my Macbook would need updating, I'd end up with a 'conflicted copy' version of that file being generated by Dropbox.