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 @ ScalaSydMy experiences developing games in Scala, and how a John Carmack inspired refactor of my game loop fixed some long running architectural issues.