This talk will give an introduction to Neural Networks and Deep Learning in Python. We will cover some of the history of Neural Networks and obstacles that were encountered in the 1990s. This will then lead onto the developments in 2006 and 2012 that lead to the resurgence of interest in Neural Networks and the rebranding of the field as Deep Learning. These developments will be illustrated by means of an extended example of building a classifier of hand written digits on the MNIST dataset. We will start with a simple Multi-Layer Perceptron and then build this up into a Stacked Denoising Autoencoder. All code will be developed using the Keras framework and TensorFlow and can be run on a simple laptop.