My name is Brandur Leach (@brandur). I'm a platform engineer at Heroku interested in Ruby, APIs, Vim, Tmux and terminal productivity, running, fixed gear riding, history, urban design, and metal.


  • Package Management in Go

    Understanding the benefits of Golang's restrictive (but simple) import and package management system.

  • Command Exit Status

    An exercise of discovery around how to extend the shell's API.

  • The Humble Data Warehouse

    Data warehouses aren't just for the enterprise! Let's examine a few of their basic characteristics, and build some examples with Go/Ruby and Postgres.

  • A Cheap X100S Filter Ring Hack

    If you find that the price tag for a Fuji-official adapter ring for the X100S is a little hard to swallow, this 5-minute hack will save you 90%.

  • Elegant APIs with JSON Schema

    A quick tour through some of the fundamentals of JSON Schema and Hyper-schema, and how they can be applied to building APIs.

  • Testing Distributed Services with JSON Schema

    Stubbing distributed services with Sinatra-based services stubs and enabling stronger constraints with JSON Schema.

  • Microservices

    Useful distinction or new buzzword? Comments on 200-500 line services.

  • The Mediator Pattern

    Interactors by a different name.

  • Healthy Anti-patterns

    When the use of an anti-pattern is considered beneficial.

  • Why I Don't Want Your SDK in Production

    When building an app against a web API, do you pull in their SDK or just make raw HTTP calls? Here are a few reasons that I avoid SDKs when I can.

  • BreakTime Classic

    In search for (and the discovery of) an alternative to BreakTime.

  • Lamenting the Death of the Page

    How the page almost transitioned successfully to the digital world, but is in decline in the modern context of new media. The lessons that we can learn from this age-old design element, and why we should hope for its re-emergence.

  • logfmt

    A logging format used inside Heroku optimal for easy development, consistency, and good legibility for humans and computers.

  • Developer Accessible APIs

    A set of patterns to make APIs more accessible to developers; lowering the barrier of entry for new users, and easing the maintenance of consuming applications.

  • Scoping and OAuth 2

    Designing scope for Heroku OAuth, and a brief tour of other implementations on the web.

  • SOA and Service Stubs

    How we build minimal, platform deployable, Rack service stubs to take the pain out of developing applications that depend on an extensive service-oriented architecture.

  • Tracing Request IDs

    A simple pattern for tracing requests across a service-oriented architecture by injecting a UUID into the events that they produce.