Coding Tips
How to fix Dropbox conflicts automatically
If you use Dropbox regularly, you have probably managed to screw it up at some point by modifying a file on two machines without syncing it between edits. When this happens, Dropbox will save both versions of the file and rename one of them like so:
A metalsmith plugin to prerender mathematical equations
I recently used MathJax for the first time to dynamically render equations in a post using the LaTeX format. The MathJax documentation recommends loading the script that converts the LaTeX format to beautifully formated math equations asynchronously. It works great, but there's typically a lag where a user sees the raw, ugly LaTeX for about a second before it gets rendered.
Getting states borders from counties using TopoJSON's merge function
I use the immortal Mike Bostock's TopoJSON for every map I make at TIME. Whenever we're looking at geographies more granular than states—usually counties, congressional districts or PUMAs—I like to have state boundaries drawn over the map to help orient the viewer.
Rendering exported musical scores in the browser
The transcriptions I've posted on Mechanical Scribe were generated by a Windows-only program called Mozart. I can't stand the way the embedded PDFs look on the page, and would much prefer to render the scores directly. Fortunately, there is a fantastic, actively developing project called VexFlow that is capable of doing just this.
A plugin for versioned posts in Metalsmith
I just moved this site from Jekyll over to Metalsmith since I work primarily in Node and Javascript and don't know a lick of Ruby. Which means, sadly, think I had to leave behind Jeremy Singer-Vine's peerless Gekyll plugin for tracking versions of posts using Git.
Use your LESS files in Browserify with this Node module
Update: Since May 2017, node-lessify is now being actively maintained by GitHub user @dxcanas, who generously took over the project after I moved from browserify to webpack. I'm maintaining this post for archival reasons but encourage you to start with the current documentation on NPM.