Writing
All posts I've written are listed below in reverse chronological order.
Atom and JSON feeds are available if you'd like to be notified about future posts.
Tags
Administration (3)
Alfred (1)
Apache (1)
Applescript (1)
Automation (3)
Bittorrent (1)
Bluetooth (1)
Browser (1)
Code (4)
Design (4)
Edc (1)
Gadgets (1)
Git (4)
Ios (2)
Jekyll (1)
Lighttpd (1)
Linux (2)
Mac (7)
Microsoft (1)
Mysql (1)
Php (1)
Plugins (2)
Reviews (1)
Security (1)
Shell (2)
Synology (1)
Tools (3)
Webdev (8)
Windows (1)
Workflow (5)
Zsh (2)
2018
Tabclip: A Web Browser Extension
Copy browser tabs to (and create browser tabs from) your clipboard.2017
My Git Prompt for Zsh, Revisited
An elegant, bird's-eye view of your Git repositories.Controlling Whitespace and Empty Lines in Jekyll
Jekyll-generated code can be pretty, too.Understanding iOS Universal Links
When "Open In App" stubbornly refuses to keep its promise.2015
An Event Apart Boston 2015
My notes from An Event Apart, "the design conference for people who make websites".Send Browser Tabs from iOS to Mac with Workflow, Hazel and Dropbox
A somewhat complex solution to a simple problem.2014
An Event Apart Boston 2014
My notes from An Event Apart, "the design conference for people who make websites".Configuring SSH and SCP/SFTP on DSM 5.0 for Synology DiskStations
Because geeky toys never work quite right out of the box.Everyday Carry
What's in your pockets right now?2013
Forecast.io Weather on the Mac Desktop
Because I could.Making Git a Little Fuzzier
A command-line wrapper for Git that does fuzzy filename matching.An Event Apart Boston 2013
My notes from An Event Apart, "the design conference for people who make websites".Sleep Displays with Alfred v2
Because my keyboard doesn't have an eject key.2012
My Git Prompt for Zsh
Because <code>git status</code> isn't nearly as fun.Rejecting False Binary Files in Git
When text files stay up past their bedtime.Broken: Buying and Activating Windows 8
Things aren't always as they seem.Programmatically Mounting Encrypted Disk Images in OS X
Because if it can be automated, it should be.Yeoman in Theory
Thoughts about Yeoman, a new tool for web developers.A Breath of Fresh Bluetooth
About my love/hate relationship with Bluetooth.An Event Apart Boston 2012
My notes from An Event Apart, "the design conference for people who make websites".SSH via iCloud
Easily SSH between Macs associated with your iCloud account.Create New Files in Finder in OS X
Because finder STILL can't do that on its own.Troubleshooting Apache in OS X 10.8 Mountain Lion
My experience fixing the built-in Apache installation after upgrading.Elegant Password Generation with Oplop
Password security practices and the Oplop password generation algorithm.2011
Elegant E-Mail Address Obfuscation
User-friendly e-mail links that outsmart spam bots.2009
A Virtual Team Room in Wonderland (WPI MQP)
An academic paper explaining the process of creating components for Sun Microsystems' Project Wonderland (my WPI MQP).2008
Unblocking BitTorrent
How to make BitTorrent work despite your ISP's best efforts.Copyright Law in the Digital Age (WPI IQP)
An academic paper about copyright law (my WPI IQP).2006
Setting up LightTPD with PHP, MySQL, and Perl on Windows 2000/XP
Seting up a LightTPD development server environment on Windows.2005
Unlocking the Power of WAP
How to use hidden settings on your cell phone to enable WAP browsing.Ubuntu 5.04 Hoary Hedgehog Review
Review of the April, 2005 "Hoary Hedgeog" release of Ubuntu Linux.Making a Film Canister Leyden Jar
Make some sparks using a film canister and other household objects.[ ↩︎ home ]