• The Value of Repetition

    Repetition is the key to memorizing and becoming an expert in almost anything.

  • The Value of Fiction

    There’s inherent value in stories that are entirely made up. Part of the magic is that they can be subtle wrappers around tricky issues – it’s easier to discuss a sensitive topic when done within the context of an alien civilization.

  • Software Vulnerabilities, Disclosure, and Marketing

    Consumers have a certain amount of upgrade fatigue. It’s not uncommon for end users to ignore an update notification for months to avoid the frustration that comes with trying to fix something that worked before the update.

  • Private Variables in JavaScript

    ES6 gave us classes and object inheritance in JavaScript. However, it’s still missing any concept of “privacy” in OO terms. Here’s a hacky workaround to, maybe, make things work.

  • Deterministic Random Numbers in PHP

    Testing code that leverages random numbers can be tricky. It’s useful to have a way to subvert the random number generator during tests to yield a deterministic state.

  • Mocking Time in Unit Tests

    Some operations in PHP introduce uncertainty around your code’s behavior. In those situations, it’s helpful to insert helper functions that make your code more reliable and easier to test.

  • Twitter in Decline

    Twitter was groundbreaking. But now the ground that Twitter stands upon can use some breaking of its own.

  • Strict Typing

    Do you use type information in your PHP code? What drove you to make the change (or what is preventing you from taking the jump)?

  • Reflections and Foreshadowing – 2018 Edition

    New Year's is an opportunity to stop, take stock, and reflect on everything we've done in the past year. While it's usually a good idea to do this more often than once a year, the seasonal holiday presents an opportune moment for the too-busy-to-otherwise-schedule-things. I fall into that category. Today begins a new annual tradition of recounting […]

  • Building a Phone Routing System

    In this walkthrough, I build a phone redirection system using Twilio to automatically forward frequent wrong numbers to the business with a support line 2 digits transposed from me.