talks, posters, presentations

I've presented at a wide range of events over the last few years, and most of them are listed here. For publications, see my Google Scholar page.


I relaxed a little at PyCon US this year, with a short talk at the language summit (on my new PEP 789 rather than PEP 533) and mentored + development sprints filling out my schedule.

At North Bay Python, I spoke about advanced topics in Hypothesis - such as test-generation with the Ghostwriter (online demo!), coverage-guided fuzzing with HypoFuzz, and our experimental support for an SMT-solving backend on Z3...

At SciPy 2024, I'll run an introduction to property-based testing tutorial.


At PyCon US I presented an introduction to property-based testing and co-organized the mentored sprints for diverse newcomers, as well as participating in the sprints and a range of summits - just like last year!

I also gave a new talk on scaling structured concurrency (video). I think it's one of my best, so it will also appear at various meetups and local conferences later this year.

At PyBay, I presented No More Nitpicks - sharing how I think about linters, formatters, and autofixers as tools for code quality and easier collaboration.

My plans for StrangeLoop didn't involve speaking... but when another speaker fell ill, I was asked if I could write and deliver a talk on forty-six hours notice. Is my Large Language Model a Strange Loop? (video) was the result: exploring language models from the 'inside out' and 'outside in' based on Anthropic's research in alignment and interpretability.

At EAG Boston, I ran a workshop (and office hours) about Anthropic's Core Views on AI Safety essay and Responsible Scaling Policy. Rather than give a traditional talk, I asked attendees to read both (long) documents before attending, and aimed to answer questions and facilitate small-group discussion. This was a much higher-effort 'talk' format, but went really well!


At PyCon US I presented an introduction to property-based testing and co-organized the mentored sprints for diverse newcomers, as well as participating in the sprints and a range of summits.

For SciPy, I reprised that tutorial with an emphasis on scientific and numerical programs. I also gave two short talks in plenary sessions— an invited tool update about Hypothesis, and a lightning talk about similarities between Anthropic's machine learning research and the natural sciences—and led another sprint.

At the local PyBay conference, I gave another short talk and was part of a delightful panel session on testing.


At PyCon US I spoke about how CPython can adopt property-based testing and fuzz those tests with Atheris and OSS-Fuzz at the Language Summit, then presenting a tutorial introducing property-based testing (slides, video) and a poster about my autoformatter, shed. Plus my usual involvement with the maintainers' sessions, sprints, and mentored sprints—it's a busy week even before the time difference!

For SciPy, I reprised that tutorial with an emphasis on scientific and numerical programs—and also presented a shorter talk on property-based testing for scientists. Conf42 Python saw a seriously condensed talk, thanks to video editing. I told PyOhio that I wrote code to write your tests!—and gave a live demo of the Ghostwriter.

The talks continued at EuroPython, PyCon Latam, PyCon India, and PyCon Malaysia! I hope to visit them in-person in some future year.


PyCon US went virtual this year, but was still a major event. At the Language Summit I proposed writing property-based tests for CPython (demo here), which was featured on, and gave a lightning talk on improving SyntaxError for novices. I also helped organise the mentored sprints, as well as mentoring new contributors on the day.

I was invited to the Moscow Python conference, and gave my talk online. At the SciPy conference I presented an online poster, and published a paper on testing scientific code.

At PyCon Australia, I told the audience to Stop Writing Tests! (video)—announcing both the Hypothesis Ghostwriter and HypoFuzz, a new tool for adaptive fuzzing. On the social day, I coordinated the development sprints and ran an all-day mentoring event.

I was delighted to reprise Stop Writing Tests! for PyCon India and Pyjamas Ireland.


I was rather busy at PyCon US, where among other things I presented a tutorial, talk, and poster (pdf) about 'escaping from auto-manual testing' with Hypothesis. I also attended the Language Summit, spoke at the maintainers summit, and led teams at both the sprints and mentored sprints. It was a fantastic—and very intense—nine days.

At EAGx Sydney, I posed 'some questions for 21st century machines' based on my work at the Autonomy, Agency, and Assurance Institute.

At PyCon Australia I presented one of the inaugural 'deep dive' talks, on Sufficiently Advanced Testing. I think this is my best technical talk to date, and wrote up a hyperlinked transcript for this site.

At SciPy US, I gave a talk and taught a workshop on advanced testing for scientists and developers of data science tools, which I later reprised in Spain for EuroSciPy (talk, tutorial). The material for my 2019 tutorial is open source and available here.


At the European Union's Future in the Making conference, I presented a poster about 3Ai's Collaboratoria—immersive experiences bringing togther researchers, scholars and practitioners.

At PyCon Asia-Pacific, I taught a workshop on property-based testing and other insecticides. At the inaugural PyLondinium, I gave a talk about property-based testing (video) ...and an updated version at PyCon Australia.


I presented my Honours research project at the annual conference of the Australian Meteorological and Oceanographic Society. My talk won a student presentation prize, and my poster was also well received. My full Honours thesis can be read here.

back to homepage.