Blog
End a MySQL command-line SELECT with backslash-G instead of a semicolon to get readable row-per-column output rather than a mangled table.
ZuQ, a homegrown ZeroMQ queue built to replace RabbitMQ: PHP clients with lazy-pirate retry talking to a C++ router-socket daemon.
Building a replicated GlusterFS distributed filesystem on Rackspace Cloud and Ubuntu 12.10: server setup, formatting bricks and mounting it.
Zend OptimizerPlus strips PHP docblocks when it caches bytecode, which quietly breaks Reflection, Doctrine and ZF2. How to get them back.
A fresh Redmine 2.x install on Ubuntu 12.10 with Ruby, Apache, Passenger and MySQL, written after an upgrade went comprehensively wrong.
Remote-debugging a PHP CLI script on a LAMP virtual machine from PHPStorm: server path mappings, Xdebug settings and the environment variables.
Installing and configuring NRPE on Ubuntu so an existing Nagios or Icinga server can run remote checks, including custom command definitions.
Compiling Apache 2.4 from source on Ubuntu 12.04 when no package exists: the configure flags, the event MPM, and the bits that bite.
A reference recipe for compiling PHP 5.4 from source on Ubuntu 12.04: the full apt dependency list and the complete configure line.
Using the rsync -e flag to supply a custom SSH command, so rsync can reach a server whose SSH daemon is not on the default port.