archive of my blags

Poem About Things I Like

I like when things are broken so I can tell how they work
TV pilots that bombed
Slow Learner by Thomas Pynchon
awful sequels…

The Last 10 Story Ideas My Girlfriend Flatly and Unfairly Rejected

I used to bump into writers occasionally at parties, and become seized with the urge to share my awesome story ideas with them. I’d get between them and the punch bowl, and then lay out my Moby Dick sequel. They’d make noncommital but vaguely positive noises in response, and I’d feel like I had written the Great American Novel…

How to Enable ETags and Compression in lighttpd

lighttpd is a great, low-fat webserver, but some of it's defaults make me want to pull my hair out. When Page Speed pointed out that I wasn't doing any caching or compressing on my static lighttpd install, it took me an hour of grubbing around in the docs to get mod_compress doing what I wanted, and ETags on all requests.

I'm writing down all the changes I had to make in the hopes of saving someone else one hour…

The Opinionated Media Center

Downloading, organizing, and playing media are three separate tasks. I don't need a torrent client that has a built in video player like vuze, and I certainly don't need a media player that looks up album information and moves my files around like xmbc.

This guide will walk you through how to download, organize, and play your music and television shows the sensible way—with the best linux tool for each task…

How to Get Your Tweets Indexed by Google

Wish your hilarious tweets were indexed by Google? Wish your beautiful, smiling face would show up next to those search results? Wish no more! This post will walk you through how to get your tweets indexed by Google…

How to use Secret Keys in Google App Engine

It is common for a web app to have secret keys: the admin password, the twitter API key you use, the number of cat pictures you'll let a user upload before banning them. If your project is open source, you'd like to keep these secret keys out of the published source.

Unlike on a PaaS like Heroku or Joyent, it's not obvious how to store secret keys on Google App Engine. This tutorial will walk you through the method that works for me: using the datastore…

Adding Nodes to the DOM with Style

Extension developers who want to overlay HTML on pages face two style-related challenges: preventing page styles from affecting the added HTML, and ensuring that the added HTML is visually over top of the rest of page. This blog post will show you how to use XBL to add nodes to the page with style, complete with a working demo…

Poor Man's Webspider

Webspiders are fun, but the learning curve is awfully steep. Websites don't like crawlers stumbling about where they're not wanted, and barriers as simple as a login screen can stymie a beginner. Add in checks on user agents strings and javascipt-heavy links, and your weekend is over before you've gotten anything to work—side project over! This blog post will show you how to turn your browser and LAMP server into a spider capable of taking you straight to the fun…