Solving OpenVPN DNS Issues on Android Clients

The ProblemOpenVPN servers and clients can configure what DNS server the client should use while connected using a dhcp-option DNS setting (either set in the client config, or pushed to the client from the server). This can be necessary for a number of reasons:…

Read full article

My Experience with the Uberman Sleep Schedule

At the time I’m writing this, it’s been almost eighteen years since the Seinfeld season finale, and nearly twenty years since the Friar’s Club episode where Kramer tried to emulate Leonardo da Vinci’s alleged habit of only sleeping twenty minutes at a time every three hours. I’m sure I saw it when it first aired, but I was still in high school and probably didn’t give it much thought at the time. That all changed a few years later.…

Read full article

Let's Encrypt a Static Site on Amazon S3

To create this blog, I use a static site generator called Hexo, and upload the resulting files to a web-enabled Amazon S3 bucket. I’ve recently started using Let’s Encrypt to generate free domain-validated SSL certificates for many of my non-static sites, and decided that I’d like to do the same for my static sites as well. This post documents the process of generating the SSL certificate from Let’s Encrypt, and all of the steps I took to get it working with a static site hosted on AWS.…

Read full article

Dropbox Music Player

A friend of mine introduced me to heavy metal in junior high with an audio cassette recorded off of Megadeth’s Youthanasia CD. Up to that point my personal music listening habits had consisted of 100% “Weird Al” Yankovic; I hated pretty much everything that my parents listened to or that was played on the radio, and was ready to try anything new.…

Read full article

Code Cinemanalysis - Terminator Genisys

The following article contains massive spoilers for the 2015 movie Terminator Genisys. You have been warned.…

Read full article

Using Tmux with a Single Global Session

I like tmux. This is how I use tmux.…

Read full article

Using S3 for Digital Goods Distribution

I recently ran into a situation where a client of mine (my only “client,” who also happens to be my Mom) wanted to sell a digital video on her website. Until now, everything she sold had been a physical product, so I was able to get away with simple Paypal forms on her web store. Someone would click the “Buy Now” button, and Paypal would email my client so she knew to package and ship the product. That workflow is fine for physical goods, but doesn’t really hold up for digital downloads…

Read full article

Self-Hosting GNU Social

I remember telling a friend about Facebook back when MySpace was still the most popular social network around. I explained how it was similar, in that you could connect and share messages, links, and photos with your friends and family, but—unlike MySpace—the interface was professional and clean. Everyone who used Facebook saw basically the same thing; you wouldn’t run into any profile pages with animated backgrounds, auto-playing MP3 music, and comically unreadable font color choices. “You can’t make it your own?” she asked, head cocked slightly to one side. “Why would anyone want to use that?”…

Read full article

Configuring Push Notifications from Fastmail

This post documents the process that I’m using to receive Pushbullet alerts on my phone for emails with a specific sender or subject line. The purpose of this setup is to continue getting phone alerts for these emails even though I am automatically filing them into a sub-folder that my phone’s email client is not set up to monitor.…

Read full article

On Javascript

Sorry, you need Javascript enabled to view posts on this blog.Just kidding. In the Hacker News discussion that sprung up around my expulsion story, one of the larger sub-threads was focused on the fact that the blog theme I was using at the time required Javascript to display the content.…

Read full article