A Lazy Sequence

Archives

Topics

2024

Return to Monkey Island

Return to Monkey Island is a mixed bag of nostalgia, UI improvements, and another terrible Ron Gilbert ending.

2023

Downloadable macOS Typefaces

Apple licenses more high quality fonts than the ones that are installed by default. Here's how to install them, and some highlights.

Manticore 2.0

Notes on updating the Manticore encounter generator for 13th age to the second edition draft rules, and switching to Svelte.

2022

The future of Manticore

Considering the future of the Manticore app for 13th age, now that a second edition is on the way.

2021

2020

2019

Trail of Cthulhu with pushes

An overview of character mechanics that need to be resolved when adapting Trail of Cthulhu to use Pushes from the Yellow King RPG.

Gumshoe: antagonist spends

A look at the math and narrative ramifications of spending antagonist pool points in the Gumshoe RPG systems.

The Yellow King Role-Playing Game

A review of sorts of The Yellow King Roleplaying Game. If you have never played a tabletop role-playing game but been curious, check this game out.

2018

macOS typography shortcuts on Windows

macOS has nice keyboard shortcuts for a number of common typographic characters that are a pain to type on Windows. Here’s a method to simulate it.

Trail or Call of Cthulhu?

With two great marquee Cthulhu role-playing games available, how do you decide which is right choice for your game?

2017

2016

2015

The Dracula Dossier

First thoughts, and a reading order, for The Dracula Dossier for Night‘s Black Agents

Announcing: Manticore 0.4

Manticore 0.4 has been released, with the ability to select specific monsters instead of using the filters.

2014

Introducing Manticore

Announcing Manticore, an web app for generating encounters for the 13th Age roleplaying game.

2013

The Mouse Guard RPG scenario structure

Luke Crane and David Petersen’s Mouse Guard RPG introduces the concept of separate GM and player turns. This article takes a look at the ramifications of these turns in play.

Modeling union types using only functions

The lambda calculus is the basis for functional programming. Church's encodings in the untyped lambda calculus show an interesting pattern that parallels union types in languages like Haskell. Here I try to show how these discriminated union types can be implemented using only javascript functions.

Duck-wrapping

If it doesn't quack like a duck, wrap it in a duck. Or don't.

Project templates

Leveraging Leiningen templates for great starting out experiences.

2012

Fuzz

Fuzz is the classic broken up guitar sound. To my ears it can't be beaten.

Silver-screen Cthulhu

An assortment of thoughts about Shadows Over Filmland for the Trail of Cthulhu RPG.

Templates are functions

An article that looks at templates in web development in the context of pure functions and functional programming.

Night's Black Agents: Vampires

A worked example of an alien vampire type for the spy-thriller role-playing game Night's Black Agents by Kenneth Hite.

Night's Black Agents

A review of vampire spy-thriller role-playing game Night's Black Agents by Kenneth Hite.

Prometheus

Some (spoiler filled) thoughts on Ridley Scott's film Prometheus.

Configuration middleware

This article looks at how Ring middleware and dynamic binding presents a powerful tool for controlling configuration in Clojure web apps.

2011

The Apocalypse Machine

A review of The Apocalypse Machine, Graham Walmsley's post apocalypse setting toolkit for Trail of Cthulhu.

CoffeeScript comprehensions are broken

An examination of List Comprehensions in several languages, how Coffeescript's ‘comprehension’ semantics differ from the common case, and limitations that arise.

The Book of the Smoke

A review of Pelgrane Press's companion to the campaign frame The Bookhounds of London for players and keepers.

Bookhounds of London

A review of Bookhounds of London, a campaign frame for Trail of Cthulhu by Kenneth Hite.

A brief overview of the Clojure web stack

Ring is the foundation of web programming in Clojure. It has a broad ecosystem of libraries that fullfil many different roles in the web stack. This article introduces the fundamental concepts of Ring as well as four major libraries, and explains common idioms to help you get started quickly.

Start parsing in Clojure: fnparse

Parser combinators are a powerful way of expressing complex parsers as first class operations in a language with first class functions. This tutorial introduces one such library, fnparse, for Clojure.

Parsers generating parsers

Following my introduction to fnparse, this article looks at how more common functional programming tools can be leveraged to make parsers that output new parsers.

2010

Du jour

A note on a new implemenation.

Stack

The to-read pile as of September, 2010

Monads: redux

Thoughts on the appropriateness of monads in Clojure.

Ghosts in the machine

Following on from looking at state monads in the context of Clojure, this article looks at variations that add different forms of state-m of non-determinism.

On iteration

How Python's view of iteration lead me to Clojure.

2009

The Haunting: Terms

In my recap of The Haunting I mentioned some terms that were new to people outside small press gaming circles at the time. This post explains some of them.

The Haunting

Notes on having running the classic Call of Cthulhu scenarion The Haunting.

A better blog

My thinking on how I could put together a blog that I would actually enjoy maintaining.

2006