Welcome to my blog! This is a place where I write about deep learning and all things computer science!

I appreciate any feedback on how to improve both the blog posts, and the projects themselves, as well as project extensions worth pursuing further.

If you liked a particular analogy and want a more detailed explanation using that analogy, or equally if there is something you think can be improved - comment on the blog post - I will check out your feedback and update the post accordingly!

Sign up for more tutorials!

I write tutorials distilling the key concepts from the technologies I have used, whether it be through my time at Cambridge University, through various side projects or through internships at companies such as Facebook.

To be notified when I next put out a post, sign up below!

Tools for Programmers

2nd April 2019

Coding 2.0: Why bother testing your code?

A beginner's guide to testing and code style across multiple languages - ramping up from toy side projects to industry code.

Database Server

15th March 2019

A beginner's guide to setting up your own Postgres database server with Docker and Flask!

An overview of the core concepts and commands for Docker, Flask and PostgreSQL.

Tools For Programmers

27th January 2019

The Ultimate Beginner Git Cheatsheet

A summary of Git and the most useful commands

Demystifying Deep Learning

17th September 2018

Backpropagation through, well, anything!

How we can generalise Backprop to any neural network - see how TensorFlow and Keras compute their partial derivatives! We'll use the LSTM cell as an example

Demystifying Deep Learning

17th September 2018

Recurrent Neural Networks

Neural networks optimised for NLP and sequences - the RNN, GRU and LSTM networks

Demystifying Deep Learning

10th September 2018

Backpropagation in a Convolutional Neural Network

How CNNs learn

Demystifying Deep Learning

4th September 2018

Convolutional Neural Networks

Neural networks optimised for Computer Vision

Demystifying Deep Learning

2nd September 2018

Debugging the Learning Curve

Training, validation and test error - is our model really learning or is it just memorising?

Demystifying Deep Learning

1st September 2018

Optimising Learning

How we can make gradient descent even better.

Demystifying Deep Learning

31st August 2018

Backpropagation

The magic sauce behind neural networks - how they learn!

Demystifying Deep Learning

29th August 2018

FeedForward Neural Networks

Designing our first neural network!

Demystifying Deep Learning

3rd August 2018

Learning Through Gradient Descent

Diving into how machine learning algorithms "learn"

Demystifying Deep Learning

29th July 2018

Linear and Logistic Regression

We get our hands dirty with our first machine learning algorithms!

Demystifying Deep Learning

28th July 2018

What is a neural network?

There are a lot of different neural networks out there. We start the series by breaking down commonly used terminology.

Demystifying Deep Learning

25th July 2018

Demystifying Deep Learning Primer

Motivation for the series - why bother with the maths behind deep learning?