Recording completed tasks with Alfred

At Automattic, many teams have a process where they post weekly, or biweekly, updates. One of the things that I’ve often found difficult, as I write my personal update, is remembering all of the little things that I did for the past week. Sure, since I work on the computer, there’s usually some paper trail … Read more

Recursively cast to array in PHP

I recently ran into an issue where JSON encoding some objects in my code wasn’t working properly. After experimenting, I realized that casting everything to an array before JSON encoding magically fixed things.  Casting an object to an array is simple enough: But, what happens when an object or array contains references to other objects … Read more

How to remove files not tracked in SVN

Print object methods code

At Automattic, we use SVN and Phabricator for much of our source control needs. One issue that I often run into is a warning about untracked files when creating a Phabricator differential: This warning’s purpose is to make sure that the differential being created has ALL of the changes so that a file isn’t forgotten … Read more

Get unique values in file with shell command

Over the past year, there have been a couple of times where I've needed to sort some large list of values, more than 100 million lines in one case.  In each case, I was dealing with a data source where there was surely duplicate entries. For example, duplicate usernames, emails, or URLs. To address this, I … Read more

How to install Unison 2.48 on Ubuntu

For developing on remote servers, but using a local IDE, I prefer to use Unison over other methods that rely on syncing files via rsync or SFTP. But, one issue with Unison is that two computers must have the same version to sync. And since Homebrew installs Unison 2.48.4 and apt-get install unison installs something … Read more

A Year of Google Maps & Apple Maps

I came across a really great article that compares changes in Google Maps and Apple Maps over a year. It’s really great to see how much Google is experimenting and improving their product. Similar to how a software engineer refactors their code before expanding it, Google has repeatedly refactored the styling of its map as … Read more