April 2021

Miscellaneous Vim Ideas
A handful of small efficiency gains with vim
vim


February 2021

World's Smallest Office Suite
Using the `contenteditable` attribute to build office tools
html


Brutalist HTML Quine
Using CSS to render an HTML page as a quine
html css


58 Bytes of CSS
minimal set of CSS declarations to look great
css


December 2020

Solving Zebra Puzzles with MiniZinc
Using integer programming and nlp to solve logic puzzles
puzzles minizinc


May 2020

Property Based Testing
Using randomness to assert properties of software
testing spatial


January 2020

Modeling a Resource Pool
Redesigning a service with TLA+.
tlaplus tla+


November 2019

Vim Navigation Visual Aids
Two configurations I rely on in vim to reduce cognitive load when navigating in vim.
vim


October 2019

D&D: Season 1
Lessons learned playing Dungeons & Dragons
dnd


August 2018

Escape Rooms
Reflections on Escape Rooms after playing my 100th room.
puzzles


June 2018

5 Hot Tips for Painting Bras with Thermochromatic Paint
Tips for creating recognizable bras with thermochromatic paint
dcphr puzzles


January 2017

Rainbow Box
Polychromatic, 3D printed, electronic logic puzzle
puzzles 3d printing arduino


October 2016

Lycanthropic Love
An experiment with Elm and Hammer.js
elm DCPHR puzzles


December 2015

Pandemic Legacy: June Debrief
Documenting our progress through the first half of Pandemic Legacy. Warning: spoilers ahead.
board game pandemic pandemic legacy


9 Player Game of Thrones
Developing an expansion to one of my favorite board games
3d printing board game asoiaf Game of Thrones


June 2015

Computing Fibonacci
Comparison of various Fibonacci sequence algorithms
algorithms programming golang


GPG Transition Statement
Notice of GPG key migration.
security linux


December 2014

One Time Passwords
Releasing version one of my one time password generator
golang security


November 2014

Handmade Hero
An awesome project for anyone interested in game programming or C in general.
Programming


October 2014

btrfs and hexdump
Undoing fat-finger rm -rf with hexdump.
btrfs backup


May 2014

Pokemon Capture Mechanics
Flow chart describing the capture algorithm for Pokémon Blue, Red, and Yellow.
Pokemon algorithms


Ruby strtok()
Imitating a common idiom from C in Ruby.
ruby


March 2014

FFmpeg Clip Extraction
Simple command that I always forget.
FFmpeg


February 2014

Vim Macros
Primer on vim macro recording, playback, and editing.
vim


August 2013

Ruby Warrior
Ruby Warrior provides a playground for learning Ruby at any level.
ruby


November 2012

Classic Nintendo Games are NP-Hard
Exploration of computational complexity of some of my favorite childhood video games.
os f12 algorithms nintendo


August 2012

Add SSH Key to Authorized Keys
Appending your ssh key to authorized_keys in a single command
one liner ssh


January 2012

Dynamic Levenshtein
Using dynamic programming to compute the edit distance between two strings
C++ programming


December 2011

CSS Star
Using CSS to create shapes with a single html element
CSS CSS 3


November 2011

Levenshtein distance
Iteratively computing the edit distance between two strings
C++ programming