What Is Rust's unsafe? written Jul 12, 2019
An in-depth look at why Rust has the unsafe keyword, what it does, and how it's used to make the Rust ecosystem as a whole safer.
Fedidict Implementation: Setting Up the Database written Sep 06, 2018
The core of Fedidict is the data it stores, for which it uses a traditional SQL database with a simple but powerful schema. This post explores both the SQL and Rust sides of the schema.
FediDict UX Design, Part 2 written Sep 02, 2018
More in-depth analysis and design for the UX of FediDict, focused on security.
FediDict UX Design, Part 1 written Aug 23, 2018
My first stab at defining the user experience for my federated dictionary software.
Chaining Fallible Operations with Combinators written Jun 26, 2018
A demonstration of some techniques for chaining fallible operations, such as parsing or network requests, using Rust's iterator combinators, without introducing overhead.
Improved User Interface 0.3.0! written Jun 13, 2018
Release announcement for the 3rd pre-release of the Improved User Interface library.
A Gentle Introduction to Practical Types written Sep 29, 2017
Some programmers talk a lot about types, but what is a "type", anyway? This tutorial explores the definition and utility of a ML-like type system.
SBrain, an extension of BrainF.ck written May 02, 2017
A summary of some adventures in esolang design and genetic programming.
Getting started with Piston, a game library for Rust written Mar 14, 2017
A comprehensive tutorial for a basic Piston 0.64 application which draws a spinning square on the screen.
Session Types written Feb 16, 2017
Rust's type system is very powerful, even beyond memory safety. Session types are one way to leverage compiler analysis to prevent API misuse.
Rewriting tinyhttpd in Rust, Part One written Oct 21, 2016
The beginning of the process of rewriting an old C webserver in Rust.
Porting Deucalion to Rust written Jul 11, 2016
A quick note on my experience with Rust for game programming.