Blog

  • Hang on, PHP IS a static site generator!

    Regular followers will have heard me talk about Turbo Admin. And you may also know that I am, where possible, trying to #DitchTheBuild and use vanilla HTML, CSS and JS as much as possible. So for the Turbo Admin website I kinda wanted to embrace this philosophy, get cheap-and-easy, static-file hosting, and make my build […]

  • 10 things I learned about freelancing in ten years – Part 3

    So I’ve had my last official day as a freelancer. There are still some loose ends to tie up but I really ought to close out my thoughts on freelancing. You can also read part 1 and part 2 if you missed them. I’ve already given you 10 things, so here are some bonus experiences. […]

  • My Twitter Rules

    I recently saw a Tweet by a runner called Peter Sagal who outlined his “Rules of Twitter”. In response to narrowly spread demand, here are my Rules of Twitter. Note that each was learned by violating it repeatedly over the years, so don’t bother going back in my feed to find contradictions… trust me, I […]

  • The Electric Car Idea

    A revelation! Is the thing that stopping us thinking seriously about owning an electric car not, actually, a thing?

  • Things all developers need to make in their career #17: A static site generator

    There’s a sort-of-joke that there’s a bunch of things that all developers are supposed to code from scratch at some point in their career. A blog. A to-do list app. The “canonical” applications. And one of these is a static site generator. I’ve actually never built any of these things from scratch. But while making […]

  • PHP Short Functions and Scope

    Yesterday I took an interest in PHP internals looking into @enunomaduro‘s RFC for Auto-capturing multi-statement closures. (Have I said before that I loved studying compilers in CS?) This lead me down some interesting rabbit holes and I wanted to make some notes on what I found. Short vs Long closures There are a two forms […]