Make a Smooth On-Ramp for your Project

In open source software, the more users there are of a project, the better it is for everyone. With more users the most common use cases will be discovered, implemented, and well-tested. A well-used project is a healthy project. To encourage new users to consider your project, it's important to…

Remote Docker on DigitalOcean via OpenVPN

I'm doing a lot of development using Docker these days. Docker is bandwidth hungry so I prefer to run it remotely in the cloud, controlled locally by commands on my laptop. This article explains how to get Docker set up remotely along with a VPN connection so it's easy to…

Build a REST API with Node.js, FRP, and Docker

REST APIs are all the rage these days. Since I'm a developer, I decided to create a vanity API using modern technology. What's a vanity API? An API about me, of course! This article is the first in a series in which I progressively explain my process of creating an…

Doubling Down on Meteor

I've had a good experience using Meteor to create a test project but recently a prospective client asked my opinion about using Meteor in production. Specifically, he wanted to know: What problems could arise as the app scales? What could be possible drawbacks of doubling down on Meteor? Great question!…

Define your own HTML Element with AngularJS

Testing is important to me so I created a page on my blog to keep track of JavaScript testing tools. I was interested in knowing which are the most popular ones so I decided to track how many people starred each one on GitHub. The number of stars changes over…

Synchronize with the Server's Clock in the Browser

Introduction Sometimes it's useful to know the exact time (within 100 ms) of the clock on the server from within the browser. This can be used to synchronize multiple user's actions with each other, for example. I found a need for this when I created a Pomodoro Technique timer for…