Hi! I’m Rob. I enjoy speaking. I mostly give talks at local meetups, but have been lucky to have been invited to a couple of conferences. My usual speaking topics cover testing, static typing, and functional programming, but have previously switched it up with ops, security and race conditions.

The full list is on the front page, but here are some of my more recent recorded talks:

  • The Things You Can't Do (Web Directions Code 2016)

    Explores what we gain if we strive for less of "flexibility" and "power" in parts of our code. Walks through some different intentionally-limited things, like forEach instead of for, let vs var, immutable data, and then digs into static typing with Flow to show how limiting potential inputs and results from functions make our programs more predictable.

  • Property-Based Testing (CampJS, 2016)

    Introduces an approach to writing tests as "properties": each property is a rule that you write; you then generate random data of a particular shape, and run that property over and over with that data to make sure that rule still holds. This talk also includes some techniques for writing properties, as well as some real bugs caught by property-based testing tools.

  • Composition and Pipelines (Sydney Ruby Meetup, 2015)

    Plays with function composition, using Ruby's Proc, and introduces some concepts like "Associativity" by example, with their practical benefits.