- August 2026
-
Making Failure More Predictable in Ruby Systems
The Case of the Readable Dead Connection: A Ruby Mystery
- June 2025
-
The Case of the Blocking Operations: A Ruby Mystery
- November 2024
-
Streaming Rack with Falcon
- September 2024
-
Leveraging Falcon and Rails for Real-Time Interactivity
- June 2020
-
Bringing Fiber Scheduling to Ruby
- April 2020
-
Running Falcon Virtual in Production
A Fiber Scheduler for Ruby
- March 2020
-
Improving Net::HTTP Concurrency
- January 2020
-
Making Ruby I/O Work with Event Loops
Modernizing Rack and Falcon Deployment
- December 2019
-
Separating Concurrency from Parallelism in Ruby
Laying the Groundwork for Ruby 3 Concurrency
- November 2019
-
Making Ruby Concurrency Safer
- January 2019
-
Streaming HTTP for Ruby
- November 2018
-
Fibers Are the Right Solution
- October 2018
-
HTTP/2 for Ruby Web Development
- June 2018
-
Improving Ruby Fibers
Improving Ruby Concurrency
Asynchronous Ruby
- November 2013
-
Hybrid Tracking using Gravity Aligned Edges
Transform Flow: A Mobile Augmented Reality Visualisation and Evaluation Toolkit
- October 2013
-
Real-time Hybrid Tracking for Outdoor Augmented Reality
- October 2012
-
Adaptive Hybrid Tracking for Mobile Outdoor Augmented Reality
- September 2011
-
Simple Garbage Collector
- May 2011
-
Solving Sudoku Efficiently
- January 2011
-
There are more useless programs than useful programs.
- December 2010
-
Implicit And Explicit Delimitation
- October 2010
-
Mr. Painting Robot
Visualising Information Change Over Time
Kai 会
- May 2010
-
Computer Science in New Zealand High Schools
- April 2010
-
Image Processing
- October 2009
-
Richard Stallman In Christchurch
- May 2009
-
Run Time Polymorphism
Compile Time Polymorphism
Matrix Mathematics
- February 2008
-
A discrete solution for the inverse kinematics problem.
- May 2007
-
Permutation Generation