Writing — 104 posts · 2007–2026
Posts
Linux and sysadmin notes from the late 2000s, Ruby, PHP and Git from the years after, and lately code agents, team leadership and web performance.
Subscribe via RSS2012
Colour, tables and progress in a PHP console tool — and the detail most scripts get wrong: knowing when nobody is watching, because your output has been redirected into a file.
TRIM, scheduler choice, mount options and the writes worth moving off disk, to get both speed and lifespan out of an SSD on Linux.
The nine Object Calisthenics rules as a deliberate exercise in object-oriented design, summed up as: whatever obscures my code is bad.
Three ways a PHP script can take input — argv, getopt() and standard input — what each one gets wrong, and when to stop and reach for Symfony2's Console component instead.
How to recover a Mac after installing Ubuntu's bootloader into the MBR, on a machine that boots from EFI and GPT.
How to configure pam-pkcs11 so the Spanish DNI-e electronic ID card works as your login credential on Ubuntu 12.04.
Every step to turn an Ubuntu 12.04 box into a Jenkins continuous integration server for PHP projects.
A continuous testing setup that runs your PHP test suite on every file save, so the TDD loop stops depending on remembering to run it.
2011
How to generate a patch with git format-patch and send it to a colleague with git send-email, without leaving Git for other tools.
The argument that social network privacy policies are posturing: once you upload something, in practice it stops being yours.
Como foi a Festa de Lanzamento de GNOME 3 en Galicia, organizada por Ghandalf con Gpul e Trasno, e quen estivo detrás.
How to turn a PECL tarball into a Debian package without any prior packaging experience, step by step.
How to serve a remote Git repository over HTTP with push support and digest authentication, and why you might prefer it to SSH.
A cheaper way to sort an array of objects by one of their properties in PHP, for when usort turns out to be too expensive.
A small Smarty output filter I wrote that indents the HTML your PHP templates produce, and how Smarty's extension points work.