Hacking WMATA SmarTrip Cards

2 minute read, published .

An overview of the technical details of Washington DC’s transit cards, including which off-the-shelf RFID readers were able to read card data.

NPM Install Ignores the --production Flag

1 minute read, published .

When running npm install with the --production flag, the presence of a shrinkwrap file can cause it to install packages not listed as production dependencies.

Understanding D3 Selection Operations

7 minute read, published .

Selection operations in D3 (a library designed to help transform DOM elements in response to data sets) can be a bit tricky without understanding how D3 keeps track of your data.

IE 11: Hidden Inputs in Labels

2 minute read, published .

Internet Explorer and Edge do not always focus inputs within label elements when the label is clicked and a hidden input is present.

JavaScript’s parseInt() at the Extremes

3 minute read, published .

Misuse of parseInt in JavaScript can lead to weird behavior if the number being parsed is large or small enough to be represented in E notation.

Review: The NextDesk Terra

6 minute read, published .

A review of my purchasing experience of the NextDesk Terra, a motorized stand/sit desk with a bamboo surface.

Implement Your Next Feature with Node.js: JavaScript in Polyglot Systems

3 minute read, published .

A summary of a conference talk focused on encouraging the use of Node.js to implement features which make sense to do so (and leaving the rest of your application alone).

Deploying Multiple Heroku Apps From a Single Repo

3 minute read, published .

In some cases, it makes sense to run more than one app on Heroku from a single repository. This quick trick will let Heroku know which app to start.

The Mortal Sin of Conference Organizers

2 minute read, published .

If conference organizers and speakers don’t stick to the contract, things can get messy with talks cut by more than 25%.

Deploying Static Websites to Amazon S3

4 minute read, published .

Amazon S3 is a great choice for hosting static content (like blogs), but the process of deploying can leave a little to be desired — unless you leverage a build tool like Rake.

“lowercase”

1 minute read, published .

A quick pitch for a typography-themed restaurant in Washington, D.C.

Messaging using RabbitMQ and Socket.io

3 minute read, published .

A code snippet to relay messages from a RabbitMQ server to a browser in realtime, using socket.io and Node.js.

Interesting Talks at Codemash 2.0.1.2

7 minute read, published .

A quick list of conferences that I plan to attend at Codemash.

XMBC and Hulu

4 minute read, published .

Hulu isn’t officially supported on XBMC (a set-top box-like media application) — but with a lot of careful hacking, it can be run.

Disabling the Mac OS X Startup Chime

1 minute read, published .

A quick (no longer compatible) hack to disable the Mac OS X startup chime when a Mac computer is turned on.