An introduction to property-based testing and Hypothesis

PyCon UK, 18 September 2016

Testing is a cornerstone of software development, but how do we know that we aren’t missing bugs? Why don’t we let the computer write tests for us? This is the idea behind property-based testing.

In a revised version of my CamPUG talk (below), I explained the idea of property-based testing, the power of the Hypothesis library, and gave some suggestions for using it in practice.

Introduction to property-based testing

Cambridge Python User Group, 7 June 2016

We all know that tests are important, but nobody actually wants to write them. What if we got a computer to write our tests for us? This is the one of the motivating factors for property-based testing.

In this talk, I explained the ideas of property-based testing, and showed it in action with Python’s Hypothesis library. I also demoed stateful testing, and fuzz testing with AFL.

Colossus [slides and notes coming soon]

Queens’ College Maths Society, 17 February 2016

Many people have heard of the Allied codebreaking efforts at Bletchley Park during World War II. The most famous story is Enigma, but it often leads us to overlook the other achievements from Bletchley. One of those is Colossus.

In this talk, I told the story of Colossus, sometimes described as the world’s first computer. I explained the mechanics of the German cipher it was trying to break, how it was broken, and why Colossus was nearly forgotten.