Talks

24 hours of game dev in Rust

September 2016 @ RustSyd

My first 24 hours of game development in Rust, a survey of libraries used and obstacles encountered.

We'll focus on a simple approach for building pixel perfect 2D games in accurate 3D space, as well as bunch of game jam style "shortcuts" for getting things done fast.

Libraries used: glium, glutin, image, cgmath, ears

Building trust free apps in a hostile world

August 2016 @ ScalaSyd

Synchronization of data across multiple systems can be painful, especially for systems that can't guarantee a reasonable level of uptime.

From first principles we'll design a multi-master eventually consistent data store using CRDTs (Commutative Replicated Data Types) to serve as the backbone of distributed apps that can work without a constant connection to central servers.

We'll look at the intersection of CRDT theory and user experience and attempt to address some of the real world issues that come up when using them for a general purpose workload, including performance, compaction, data modelling, orderings and merge functions.

This approach has it's limitations but brings with it some strong upsides with respect to privacy, latency, uptime and sleeping easier through going "serverless" (read: using someone else's).

Throughout we'll go over appropriate property tests to write and approaches to verification so we can establish trust in the system.

Game development in Scala: How functional programming helps me sleep at night

September 2013 @ ScalaSyd

My experiences developing games in Scala, and how a John Carmack inspired refactor of my game loop fixed some long running architectural issues.

Play Framework 2: The Good, The Bad and The Ugly

August 2012 @ ScalaSyd

A look at Play Framework 2 from the perspective of a Ruby on Rails developer.