Software engineer. 70% of my body is made of code.
Close-up photograph of a ruby gemstone
Photo by Joshua Fuller on Unsplash

Years ago, I worked on a very large Ruby on Rails codebase that used constants to hold lists of credit card transaction states. For example:

class Txn
= [:authenticated, :to_settle]
DONE_STATES = [:settled, :declined]

However, we had a bug where a settled transaction would return true when…

Getting your blog post to play nicely with Safari Reader—my preferred way of consuming blogs—isn’t always obvious. This post documents my findings in how to optimize a blog for Safari Reader if you’re publishing outside of Medium (e.g. Jekyll).

Use the <article> tag

Safari Reader will look for a couple of container tags, but…

Synthesizing a full major out of MIT’s OpenCourseWare

MIT’s OpenCourseWare is an amazing resource—I often can’t believe that it exists at all. For the unfamiliar: OpenCourseWare is a collection of some of MIT’s classes, often complete with lecture videos, problems sets, quizzes, and answers. Oh, it’s also completely free.

There’s a significant drawback though (well, two drawbacks considering…

How likely it is for each digit of pi to appear? Let’s find out by charting the digits of pi into a frequency graph.

  • Are there patterns?
  • If not, is it suitable for random number generation?


The more data I can collect, the more apparent patterns (if any) will appear…

Patrick Brown

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store