All Posts
The complete list of posts, in reverse chronological order.
- Links (22 April 2025)
- Webhooks as a (Systemd) Service
- Migrating xoxo.zone to OVHcloud
- XOXO 2024
- Marshall Turner Moulton, 1928-2022
- Introductions
- Hollybank Road
- ACNH: Removing a Deleted Profile's House
- Kingswood 2461
- Hades: There is No Escape
- Vim Template Files and :keepalt
- ACNH: Starting my Garden
- PC Build March 2020 Edition
- Recovery
- XOXO 2019
- Twitter vs. Mastodon: On Abandoning the Titanic
- Including Remotes in Team Offsites
- Tracking Cash with You Need a Budget
- 2018 Retrospective
- Ansible Playbook: Reboot Servers
- Easier Drone Deploys with Docker Images
- TaskPaper 3: Child-aware Archiving
- Ansible, Postfix, and Mailgun
- Termux for Android
- Miracle Cube Timer
- Goodbye, Burrito
- My Ansible Holy Grail: Bootstrapping a VPS
- PC Build (December 2016 Edition)
- Goats in the Machine
- Open Letter to Maggie Hassan
- Love Each Other
- How "Oldschool" Graphics Worked
- OK Uber, that's not creepy or anything
- Bullshit
- Priorities
- Early Adoption
- Feminist Frequency: Twitter, Conspiracies, and Information Cascades
- Forest: Stay Focused, Be Present
- Showing Up
- Ansible 2.0 Released
- Debian Release Nicknames
- 2016
- pigz: parallel gzip
- A Night In with Shia
- Morgamic: Reorgs: Choose Wisely
- FIDO U2F Security Key
- IFTTT and Taskpaper TODO Workflow
- Freedom of Panorama
- Upcoming: RFID on Raspberry Pi
- Remote Control via BitTorrent Sync
- 2015
- Fresh Starts
- Simple Firefox Content Scripts
- PC Build (Fall 2014 Edition)
- Smells
- Monday Focus
- When Consoles Die
- Family Restrooms
- How to Be a Girl by gendermom
- "Brothers" web series on Indiegogo
- Ice King's Search History
- Unproxy Gmail Images
- The Message is Clear
- Yeah, Thank You, Bye
- Things I Will Miss About Brooklyn
- Cookie Clicker
- Streaming MP4 with Nginx
- Computer Dark Ages
- Biking in Brooklyn
- Google Reader Discontinued
- I Know That Subway Stop!
- Marked: Overriding Styles
- Open Tech NYC 2013 Notes
- Mean Beef Stroganist
- Adventures in Git: Deploy on Push
- Google Reader Sunset
- Moved to Pelican
- Journal from the Terminal
- Trends in iOS Icon Design
- Dropbox for iOS: Version Conflict
- Transit Markers in Apple Maps
- Adventures in Git: Move Commits from `main` to New Branch
- Page Rank after SSL Migration
- Two-factor SSH to Ubuntu 11.04 with Google Authenticator
- Defining INI Entries for PHP Scripts
- Level Up
- Filesystem Events on Mac OS X
- Vintage NYC
- Starstruck
- Feedback Loop
- Keeping Up
- IRC Clients
- Hearts, Park Slope
- New Page: Mac OS X Setup Guide
- Impersonation by Gravatar
- Drawing ACS-mode boxes in the terminal with Ruby
- Rasmus on Interpolation vs. Concatenation
- You Can Take It With You
- Trillium
- Spotted salamander
- Spring Toad
- Google on the iPhone
- Test Post
- Experiment: Digital Permanence and Ownership
- Amongst the Tall Trees
- I get to
- Git Subtree Merges, Orphaned Branches, and GitHub
- Transforming Business
- State of PHP 2012
- Being Nice
- On Internationalization
- Preware Ubuntu 11.04 Chroot Script
- SOPA Protests
- Conferencing in Boston
- There's Always a New Tweet
- iTerm 2 Skinny Fonts: Solution
- Is the Earth Special?
- Locked Files in Mac OS X
- jsRender: Passing Variables to Nested Templates
- UC Davis and the Pepper Spray Incident
- Webpages as Screen Savers in Mac OS X
- PHP 5.4 Changes
- Where Are My Pills?
- Nest Harvesting
- Updated: Amazon S3 for WordPress
- Use openssl to Issue Raw HTTP Requests
- Google+ for Google Apps
- WordPress Network Plugin Management
- mysqlhotcopy: error 24
- Installing CPAN Modules without Root
- Better Local Dev Hostnames with Dnsmasq
- Automatic Ellipsis with CSS
- Zoom.it API REST Considerations
- REST APIs and Security in PHP
- Liquid Televison
- Responsive Design Quick Tips
- Demarked
- WordPress MU Domain Mapping Patches
- Filesystem Caching without Cruft in PHP
- Saving WordPress Media to Amazon S3 (Teaser)
- Welcoming Harper Hawke
- Google Chrome 13 "Pretty Print" Scripts
- webOS 3.0.2 Changes
- Merlin Mann on Marketplace of Ideas
- Python and PHP: Giving a Rat's Ass
- PHP, symlinks, and the realpath cache
- World of Warcraft: TCG Card Numbering
- Portal 2: Now with More Portals
- Subversion and "Skipped '.'"
- Google Apps Transition
- Sprint AIRAVE installed
- Migrating to PHP 5.3: call_user_func_array()
- Private Information
- On Frameworks
- Sprint AIRAVE
- New Hampshire HB240: Approval Voting
- sf.net Passwords Reset
- Locking Down rsync Over SSH
- Light Reading
- prettyPrint for JavaScript
- How Not to Serve Ads
- Testable Factories
- Thinking About Testability
- Running gitweb in FastCGI Mode
- Makefile for CSS and JS Minify/Compress
- Ubuntu 8.04 on Linode: Cloning and Upgrading to 10.04
- Cron Output in Google Reader
- Appify: Wrapping Shell Scripts as Applications in Mac OS X 10.6
- WordPress Stack Exchange Goes Live
- WordPress StackExchange
- Cataclysm Beta
- WordPress Themes and the GPL
- Blizzard To Post Real Names on Forums
- WordPress 3.0 Released
- Google Background Images
- Growing Up
- Ads vs. Content
- The Killer Technology
- Cool Dude in Shades
- Raised Garden Bed
- Upgrading to Snow Leopard
- The iPad is OK… Sometimes
- Subversion: Missing Features
- My Browser is Sentient
- Ding III
- Tunneling Everything through SOCKS5
- Removing All Partitions in Mac OS X
- Information Gathering
- Video in the Browser
- Bash Completion
- Firefox Personas
- On Entropy
- Palm Pre Countdown in your Mac OS X Dashboard
- Live in the Past
- Waiting for the Palm Pre
- Google Search Options
- The Incredible Shrinking RAM
- Managing Money with Buxfer
- Please Insert Quarter
- A Vim of a Different Color
- Google Documents and Google Apps
- PHP 5.3.0 Changes
- XKCD: Students
- Local Documentation: PHP, Django, jQuery
- 16.7 Exabytes
- Open Letter to Don McIver
- World of Warcraft Tooltips Redux: phpBB 2 and Wowhead
- Variable Variables and Arrays
- Baby Food
- Death Knight Primer
- Mug Shot
- A Cunning Disguise
- Space
- JavaScript Bookmarklets
- Ani DiFranco - Red Letter Year
- VMware Fusion 2
- Smarter Parsing with Smarty
- Stupid VMware Tricks
- ADOdb, MySQL, and Transactions
- Google: Search Result Editing
- Vim, Terminal.app, and the Delete key
- IE "Operation Aborted" and jQuery
- Google Doctype: Firefox Quick Searches
- Guitar Zero
- Thunderbird and Vim
- Announcing Marshall Leif
- Abusing screen(1)'s Default Shell
- Moving On
- Python Indentation and Vim
- Expiring Trees in Dirvish
- SXSW Six-word Reviews: Textutils Edition
- The Business of Being Born
- Ani in Concord 2/28/2008
- ASCII Art Spam
- test.txt: PHP Exploit in Server Logs
- Apropos
- SVN Repository Explodes, No Serious Injuries
- Linking to E-mail Messages
- Psychedelic TV, Courtesy of Netflix
- Changes
- Leopard: SMB Easter Egg
- World Usability Day New England 2007
- The Blow in Boston
- Flickr Updates (23 September 2007)
- Custom Template Blocks in Django
- The Twig is now Closed
- Alpha Five Updates: Syndicated Feed
- On Burning Men
- Moving from Qmail to Postfix
- Vacation, Interrupted
- Logitech V270 Bluetooth Mouse
- Make Up Your Mind
- Jumping Ship
- Flickr Updates (17 June 2007)
- Improving Network Performance on Mac OS X
- Siege
- User-Agent?
- Statistics
- Flickr Updates (28 May 2007)
- Adobe "Customer Service"
- Me vs. Puzzle Quest
- New color scheme?
- Giving Feedback
- War on Tourists
- OO.o Calc: Skipping Days
- Power's Out
- UDP DoS?
- Sixohthree.com qmail fixed
- SlackBuilds.org: Community Package Scripts
- Merging PDFs in Linux
- Number 8!
- Downtime
- Slackware: Daylight Saving Update
- RIT Falling Behind
- World of Warcraft: New Models on the Horizon?
- You Are Not Prepared
- Friday Randomness
- I've never wanted a mobile phone
- Server Move
- Handling Spam II: Follow-up
- My Country
- Burning Crusade Cinematic Intro
- Handling Spam II: Revenge of the Spam
- Ani DiFranco in Concord
- Public Service Announcement
- Rest in Peace
- [Ding]x2
- Web Icons: "Silk"
- View from the Top
- Sunset
- Creating eReader Books
- Upcoming: Portal
- Websites that Changed My Life
- Company are Doing Stuff
- Penny-Arcade Redesign
- Public Service Announcement
- Broadening Horizons: RF Online
- Greasemonkey & Opera
- E3 2006
- Secret Language
- Google Sitemaps and WordPress 2.0
- World of Warcraft: Ajax item tooltips
- Cross-post: Warcraft item links in macros
- Monkey See
- Background Noise
- Hey look, it's winter
- Opera for Nintendo DS, & Misc.
- 4096 Color Wheel
- Ding!
- Anyone for static Warcraft?
- WoW: Stargate SG-1 Tribute
- Blog? What's that?
- Fall Updates, 2005 Edition
- Banshee
- MediaWiki Calendar Template
- WordPress via Subversion
- Zip Technology
- JavaScript Anagram Helper
- Better to Just Get High
- Penny-Arcade @ MIT
- The More Things Change...
- Moving Out
- Quote Test
- Saving Music Videos in iTunes 5.0 for Windows
- WordPress Upgrade
- In the Trenches
- Flickr Calendar View
- Controlling Spam
- Twist that Knife
- Taming Google
- Pat Robertson & Amtrak?
- In Debt, and Indebted
- Lunch Money
- Custom Plates
- Exploring Flickr
- Brought to you by the number 1
- It's the Thought That Counts
- Handling Spam
- Man Convicted for... Something?
- Travelog: To Jen and Back
- Font Resource
- Aggressive Advertising
- Microsoft Intelligence
- Thunderbird Display Errors
- That Crushing Feeling, and Tangled Webs
- Sunday Miscellaneous: eBay Detective and Others
- Must Read
- Politics-by-Numbers
- Python as Calculator
- Massive Experiences
- Loading title, please wait...
- Linguistic Profile
- Ergodex DX1
- Audio Excellence
- Leakage
- Phisher Fishing
- Accidental Absence
- Firefox Packages on Slackware
- Post-Boskone Post
- News to Me
- Memorex Black CD-R Changes
- New CD II
- Related Feeds (Supposedly)
- Thoughts on rel="nofollow"
- Targeted Ads in RSS
- HTML Labels & Netscape 7.0
- Backup Musings
- Useless Spam?
- If This Pad Could Talk...
- Modern-Day Propaganda
- Internet Alphabet
- Saving iTunes Music Store Videos in Windows
- Prior Art
- Bash Tips: Set Remote Variables
- Dockadd, Revealed
- Free Fone, Friend
- Six Degrees
- Life's Little Pleasures
- Well, that was fast
- HTML Under the Microscope
- Hello Blog
- On Playing Half-Life 2
- What's that I smell?
- Tweakin' the Feeds
- Firefox 1.0 Released
- Is a Recount in Order?
- Ani Fall Tour '04
- Just a Reminder
- Snowflakes
- To Have, or Have Not
- POV-Ray Fumblings
- CS:S Physics Fun
- A Source of Entertainment
- Comment Spam Update
- Total Lunar Eclipse, Right Now
- Help from Unlikely Places
- Working Stiff
- Couldn't Resist
- Subversion Wiki Updates
- Unlocking iTMS Tracks
- CompactFlash Price Drops
- May I Have Another?
- Web Dynamics
- Thursday Miscellaneous
- The Downside of AdSense
- Righteous Babeage
- Being Ultra Semantic
- Comment Spam
- Dynamic Pages with JavaScript and the DOM
- MySQL Backups with Subversion
- Random though
- Speaking of Coding...
- Escaping JavaScript for PHP
- More Subversion Reading
- Moving On
- Dust Settling
- Free Words
- Under Control
- Alternate Dimensions
- July Updates
- Gere on AIDS
- On HTML Butchering
- Ani DiFranco, Live in Buffalo
- Happy Birthday to You
- Misguided Hierarchies
- Ani DiFranco: Official Bootleg Series
- Bash Tips: Giving Feedback
- Ximian Connector: First Thoughts
- Fahrenheit 9/11 in Theatres Friday
- Cory Doctorow DRM talk
- Food Costs
- State Speed Limit
- One Week Later
- Surgery Tomorrow
- May Update
- Darkpole
- Kaboom
- Bash Tips: SCP Compatibility
- Sunday Miscellaneous
- The Stylus is So Yesterday
- Spring Update
- Too Good to Pass Up
- Variable Web Content
- Offline IMAP in Entourage
- Snowy Sunday
- Hacker Culture
- Musical paranoia
- Virii Lie
- Bash Tips: Wildcards
- Thinking of the Big Picture
- With a "D"
- Wiki way
- Linux Trucking
- Stylin'
- Align Along a Line
- A Faker in our Midst
- School Days
- New CD
- You Should Read This
- ISO, and You?
- Painting With Light
- New Haircut
- Unemployment Starts at Home
- I should blog...
- Of Scripts and Such
- Winding Down
- More Spam, Please
- ACGT, If You Please
- New Toy
- Blast From the Past
- In Other News
- More Information in my Pocket
- Miscellaneous Hackery
- Fall Updates
- Ninja Power vgextend!
- Still Playing Roles
- Metadata Rhymes with Metadata
- Pocket-sized Internet
- I Think I'm Alone Now
- Bash Tips: Testing Arguments
- The Word is "Excess"
- Only in New Hampshire
- Getting There From Here
- What'd I miss?
- On Bragging
- The Lure of Data
- Summer of Three Day Vacations
- A Lone Echo Post
- Dock Annoyances
- Bash Tips: Automatically Go Root
- Lock Your Doors
- Internet Explorer fumbles.. he's down!
- Chevron Seven Locked
- No News is Good News?
- Those "Game" Things
- TODO
- Movie Night: Matrix Reloaded
- Summer Plans
- Blogs and Spam: The Next Revolution
- "Goodbye, Boss"
- DBMS Updates
- Will Intern for Food
- FlexibleType
- Tracking Comments
- Thin Client Update
- SpamAssassin, Procmail, and Fetchmail, Oh My
- ITX PC Build
- Static Blogrolling
- This is My Life
- Microsoft is Pain
- Of Indoor Swimming Pools
- Family Tech Support
- Spring has Sprung
- OK, Real Quick...
- Bwerp Server Move
- Activism (or Lack Thereof)
- Be Green
- Mmm.. Web Development
- More Blog Ignoring
- Pings at last!
- Making Plain Text Useful
- Recommended Reading
- Why ESR is an Anarchist
- Lonely, Lonely Blog
- Mapping the Blogsphere
- Sticker Yer Blog
- Welcome to China, Here's Your Firewall
- You've Got to be Kidding..
- Movie Night: Star Trek: Nemesis
- Movie Night: Hawk & Amélie
- Mmm, Vacation
- I Hope My PC Forgives Me
- You Are Being Lied To
- Making Windows Bearable
- Palm Goodies
- Productivity?
- Tim O'Reilly on Piracy
- Overheard
- Server Move
- What is "dotdotdot"?
- A Blog is Born