A metaphor about PSR-7 and Middleware for non-developers
Explaining PSR-7 and middleware to non-developers with a fire bucket brigade: the request is the bucket, and everyone gets to touch it.


Explaining PSR-7 and middleware to non-developers with a fire bucket brigade: the request is the bucket, and everyone gets to touch it.

An SCSS mixin that emits every legacy and vendor-prefixed flexbox syntax at once, for the years when cross-browser flexbox meant four of them.
Defining a custom SilverStripe 3.1 route with no action, using a module routes file plus url_handlers and allowed_actions.
Stop running flush on every page load during SilverStripe development: set the cache default lifetime to minus one in your config.
Installing SilverStripe 3.1 without Composer, by adding the framework and CMS repositories as Git submodules and wiring them up by hand.
Long-running PHP scripts dropped by the MySQL wait timeout on Rackspace, fixed by subclassing the Doctrine MySQLi connection to pass a flag.
Why PECL extensions fail to build on Debian and Ubuntu under Zend Server 6, and which source and build packages you need to install first.
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.
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.