Elsewhere
This is a list of articles I’ve written, talks I’ve given, and podcasts I’ve been a guest on. I sometimes link to these in the main blog feed; this page is meant to be a convenient reference.
Writing
Last Week in AWS
Stacks development blog for Wellcome Collection
Other writing
Feb 2018 | The Hypothesis continuous release process – The Hypothesis blog |
Talks and workshops
Apr 2023 | Making a working upwards assignment operator @ London Ruby User Group |
Sep 2021 | Missing narratives in discussions around diversity and inclusion @ SeptembRSE |
Jul 2021 | Using Python to organise my physical paper @ Cambridge Python User Group |
Oct 2019 | Digital preservation at Wellcome Collection @ GLAM Digital Lunch, Cambridge A quick flavour of digital preservation at Wellcome: the processes, practices, and tools we use. How do we create, store, and present our digital archives? |
Sep 2019 | Building a robot that stole my job @ QueerJS London |
Sep 2019 | The Curb Cut Effect @ PyCon UK 2019 |
Sep 2019 | A robot stole my job! @ PyCon UK 2019 lightning talks |
Sep 2019 | Sans I/O programming patterns: what, why, and how @ PyCon UK 2020 Programmers have access to plenty of powerful, flexible libraries – and yet we often end up reinventing the wheel. Why? Because our libraries aren’t reusable – code gets trapped by its I/O model. If we program in a “sans I/O” pattern, we get code that’s simpler, more flexible, and easier to test and reuse. |
Apr 2019 | A robot stole my job prospects @ ACCU 2019 lightning talks Build automation is great, right? We can save time, automate releases, script tedious tasks… but what happens when these build robots turn against us? |
Jan 2019 | The Curb Cut Effect @ Monki Gras: Inclusive Craft When we imagine inclusive design, we think about helping people from minoritised or excluded groups. People who are disabled, or BAME, or LGBTQ+. We should consider them in our designs – but if we design for them, are they the only ones who benefit? The Curb Cut Effect suggests otherwise: designing for people who are excluded or marginalised can often result in a better design for everyone. |
Sep 2018 | A Plumber's Guide to Git @ PyCon UK 2018 |
Sep 2018 | Assume Worst Intent (designing against the abusive ex) @ PyCon UK 2018 We build services with good intent, trying to improve interactivity and connections between our users. But what if one of our users has a stalker, a harasser, or an abusive ex? How do we design services and platforms to reduce the risk of harassment and abuse from other users? |
Sep 2018 | Building Trust in an Age of Suspicious Minds @ PyCon UK 2018 In a world where people are less and less trusting, how can we take steps to make ourselves more trustable? |
May 2018 | A Plumber's Guide to Git @ Oxford Python |
Apr 2018 | (Anti-)Social Media @ Bournemouth University A lecture for students on the Cyber Security Management course about online harassment – identifying some of the ways services are often used for harassment, thinking about common threat models, and some good practices for building safer services. |
Mar 2018 | A Plumber's Guide to Git @ Cambridge Python User Group |
Dec 2017 | An ode to docopt @ Cambridge Python User Group |
Oct 2017 | A Plumber's Guide to Git @ PyCon UK How does Git work under the hood? A workshop that uses low-level Git “plumbing” commands to reconstruct a Git workflow from scratch, and see how Git stores data internally. |
Oct 2017 | Using privilege to improve inclusion @ PyCon UK 2017 |
Oct 2017 | Let's talk about (a)sex(uals) @ PyCon UK 2017 lightning talks |
Mar 2017 | Property-Based Testing In Practice @ QCon London |
Sep 2016 | An introduction to property-based testing and Hypothesis @ PyCon UK |
Jun 2016 | Introduction to property-based testing @ Cambridge Python User Group |
Feb 2016 | Colossus @ Queens' College Maths Society |
Podcasts
Oct 2020 | Screaming in the Cloud: Using the Cloud to Preserve the Future |