Matt Crinklaw-Vogt

Large scale systems developer. Accidental creator of strut.io


Oh Lisp


If you ever tell someone you like Lisp and that Lisp is a more suitable language for the work you are doing most of the time you’ll get weird looks and comments like:


The Almighty Function

Objects are a poor man’s closures. Closures are a poor man’s objects.


Some people say everything is an object. I used to too but these days I think everything is actually a function.

  1. A map? Isn’t that just a function from one value to another?
  2. An array? Well that can be thought of as a map which can…

Practical Laziness in Programming


When I first heard about lazy evaluation I thought it was cool but not of much practical use, that is until I thought about it a bit harder.

So how does lazy evaluation make your code easier to read, write and maintain?

I’ll illustrate with a program I wrote to convert Javadoc comments to JSON. I started writing the…


Oh Lisp


If you ever tell someone you like Lisp and that Lisp is a more suitable language for the work you are doing most of the time you’ll get weird looks and comments like:

Publications edited by Matt Crinklaw-Vogt

Constructing and organizing software

advice inspired by Sextus Empiricus


Inheritance, Aggregation and Pipelines


How does one write software that can be extended?

I think many developer’s first instinct is to set up some form of inheritance hierarchy. Inheritance is a step in the right direction but it is very restrictive. The problem with inheritance is that relationships between your components and their extensions are rigidly defined at…


Services and Coupling


Lines of code like:

PositionCalculator calc = new MercatorPositionCalculator();

(where PositionCalculator is an interface and MercatorPositionCalculator the implementation) have always bugged me and probably any other astute programmer out there.


Talent vs Genius


Happening to have the behaviors that allow one to excel is talent.

Being able to discover and cultivate the behaviors that allow one to excel is genius.