The developer.

80 posts. Notes from the day job and the side ones.

Developer22 JUN 2026

Passwords are a liability. Laravel finally has first-party passkeys.

Laravel now ships a first-party passkeys package that plugs into Fortify. Wiring up the WebAuthn ceremony is the easy part — the interesting work is what passwordless does to the rest of your auth.

Developer04 JUN 2026

Stop your agents fighting over one test database

Run several coding agents in parallel git worktrees and they all hammer the same test database. Here is the small shim that gives each one its own.

Developer02 MAY 2026Via dotvault.dev

Your secrets stay on your machine — here's how I keep it that way

How Dotvault sends anonymous telemetry and crash reports without ever touching your `.env` files.

Developer12 APR 2026Via dotvault.dev

Nine minutes of Dotvault, no fluff

Nine minutes of Dotvault on screen — editor, version history, Laravel encrypted env support, and how the trial works.

Developer15 MAR 2026Via dotvault.dev

Why I built Dotvault

Every developer I know has a `.env` problem. I got tired of it, so I built the tool I wanted to use.

Developer05 OCT 2016Archive

Security Updates to Mojo Under Construction Plugin

I've posted a long overdue update to my Under Construction fork. This fixed a couple of potential security issues with direct file access and escaping output....

Developer11 AUG 2015Archive

Mojo Under Construction 1.0.1 Released

I've just released a small update for my recently released under construction plugin for WordPress. I'd made a little mistake when enqueuing the JavaScript. I...

Developer01 AUG 2015Archive

Mojo Under Construction Released

For years I have been using a great plugin for hiding development sites behind a coming soon page or a holding page. However, like thousands of users, with the...

Developer27 JAN 2015Archive

Learning New Skills in 2015

As a developer there is a thin line between becoming stuck in your ways and constantly trying new technologies. Over the past 2 years I have moved away from...

Developer08 DEC 2014Archive

Easily manage all your WordPress sites with 10% off from ManageWP

I've been managing LOTS of WordPress sites for a long time and it's not always easy! Plugin updates, Core updates, managing content can all be time consuming,...

Developer27 JUN 2014Archive

How to fix "exim dead but subsys locked" issue

cPanel is annoying, but sometimes we still have to use it. If you come across the issue "exim dead but subsys locked". Have a go at the following: root@server...

Developer19 FEB 2014Archive

Proper Big Boy Follow Up

This is a bit of a follow up to a question I posted last week. I was struggling with deployment options for my app and more specifically how I could...

Developer22 JAN 2014Archive

Proper big boy applications and deployment

So this is more a call for help than my usual blog post. In the past I have been confined to simple (well I say simple) projects that generally run on...

Developer10 DEC 2013Archive

Quick Tip: Increase PHP CLI memory limits

I keep running into memory issues when running pretty intensive scripts from the PHP CLI especially when generating API documentation etc. Now if you don't...

Developer09 DEC 2013Archive

JavaScript: Uncaught SyntaxError: Unexpected token ILLEGAL

So hopefully this will save you a shit load of time! I've been dealing with a mysterious JavaScript error over the past few days. It was a simple button that...

Developer06 DEC 2013Archive

Getting to grips with CakePHP

So over the past few months the blog has been extremely quiet. Much quieter than I had hoped. This is mainly due to me working on a massive application using...

Developer09 APR 2013Archive

Looking all shiny!

As you may have noticed, things are looking a little bit different. I've been working on a bit of an updated look ever since launching the new site earlier...

Developer11 MAR 2013Archive

Jetpack Local Development Mode

I like Jetpack. I've already talked about it in an article over at Wptuts+ but I was really interested to see a small addition to the latest development...

Developer25 FEB 2013Archive

Show Yourself Off With a Custom Author Box

Another great article over at Wptuts+, even if I do say so myself! This time I'm looking at how you can add an author box to your blog posts and author page in...

Developer19 FEB 2013Archive

Using JavaScript with WordPress correctly

JavaScript is something that is used on 99% of websites. In the last few years it seems to have exploded and become part of the fundamental toolkit for all web...

Developer22 JAN 2013Archive

Using the New WordPress 3.5 Media Manager in your Plugin or Theme

WordPress 3.5 brought with it a completely redesigned media manager. A long overdue update that looks great! You can find out more about that in my previous...

Developer16 JAN 2013Archive

Wptuts+:Getting Started With WooCommerce: Launching Your Store

My series on getting started with WooCommerce continues today with part two. You can check out part one in my previous post. In this tutorial we are going to...

Developer15 JAN 2013Archive

The Mojo Admin Toolbox 1.3 Released

A much overdue update to my Mojo Admin Toolbox has just hit the WordPress Repository. I've finally updated the plugin to use the new media manager included...

Developer14 JAN 2013Archive

Wptuts+:Getting Started With WooCommerce: Initial Setup

My most recent series on Wptuts+ talks you through getting WooCommerce setup. Check it out and keep an eye out for part two coming soon! E-Commerce is massive,...

Developer04 JAN 2013Archive

Working with Sublime Text 2

I've been a long term user of Coda 2 from Panic for a few years now. Along the way I have strayed a few times to other editors mainly using TextMate if I am...

Developer17 DEC 2012Archive

A LinkedIn WordPress group that isn't full of crap

I am a member of several WordPress groups on LinkedIn, however am so pissed off with 90% of the content in those groups. Despite groups named WordPress Experts...

Developer14 DEC 2012Archive

WordPress 3.5 Passes 1 Million Downloads

In just over 72 hours WordPress 3.5 reached over 1 million downloads. Another record breaking release for the super popular content platform. How long before...

Developer11 DEC 2012Archive

Powered by Love, WordPress and some other Stuff

WARNING THE FOLLOWING POST CONTAINS GRATUITOUS TECHNOLOGY, SOFTWARE AND BABBLE FROM THE START. I thought it was about time I did one of those posts that every...

Developer07 DEC 2012Archive

Wptuts+: What's New in WordPress 3.5

Yet another new post on Wptuts+ today. Today we're looking at the upcoming features in WordPress 3.5. There are some big changes particularly to the way media...

Developer07 DEC 2012Archive

Quick Tip: Hide Jetpack from non-admins

I recently wrote a review and introduction to Jetpack with WordPress. I today discovered that non-admins (editors, even subscribers!) could see the Jetpack...

Developer05 DEC 2012Archive

Add some Christmas Cheer to your Website

It's that time of year again, Christmas is only a few short weeks away and why not share some festive cheer with your visitors. With jQuery Snowfall you can....

Developer04 DEC 2012Archive

Wptuts+: Give your WordPress Site Wings with Jetpack

In my latest post over at the ever useful WordPress Tuts+. I go through Jetpack from WordPress.com and how it can add a range of enhancements and features to...

Developer27 NOV 2012Archive

Jetpack Carousel

In the past I have always used jQuery Lightbox For Native Galleries, a great little plugin that adds a great lightbox effect to your WordPress galleries....

Developer21 NOV 2012Archive

Import GitHub Issues into Redmine

I love GitHub, it's free for open source projects, looks lovely and has changed the way I distribute both my open source code and the way I work on client...

Developer13 NOV 2012Archive

Wptuts+: Common WordPress Development Mistakes and How to Fix Them

My first post over at the ever useful WordPress Tuts+. I go through the most common WordPress development mistakes and teach you a few basics so fix them! With...

Developer09 NOV 2012Archive

Quick Tip: Remove IMG Height and Width with jQuery

As you may have noticed my new site is fairly heavily responsive. A lot of extra work has gone into helping make the user experience for 50% of my visitors...

Developer05 NOV 2012Archive

Getting Started with LESS

CSS is probably one of the biggest advancements in web development since HTML itself and it allows us to do all kinds of cool things but as a developer it's...

Developer24 SEPT 2012Archive

YOURLS WordPress Plugin

I needed to setup my own URL shortening service for a project and found YOURLS. Simple to setup, easy to use and can be setup to have no public access a simple...

Developer11 SEPT 2012Archive

Mojo Admin Toolbox - Minor Update

Just a quick post about an update to my Mojo Admin Toolbox Plugin for WordPress. There was a couple of little bugs after WordPress got updated to 3.4 which I...

Developer30 AUG 2012Archive

Quick Tip: CakePHP Baking and MAMP

Despite the hate that is going on right now at CakeFest. MAMP is fine for local development and can work with CakePHP just fine. If you are seeing this when...

Developer30 AUG 2012Archive

CakeFest 2012 Now Live

CakeFest 2012 has now kicked off in Manchester for the second year in a row. Attendance seems to be down a little for the workshops which is a shame but should...

Developer10 AUG 2012Archive

My Top 10 Must Use WordPress Plugins

We all have plugins we just seem to use on every project. These are things that would be great if they were added (or more specifically their functionally) was...

Developer06 AUG 2012Archive

Get your WordPress CSS changes noticed immediately!

I'm sure you've had the same problem. You make some changes to your site's CSS file and don't get to see it until you hard refresh the CSS. Damn you Mr. Browser...

Developer30 JUL 2012Archive

Quick Tip: Delete Remote Git Branches

Not exactly a new thing, but one I have always had to Google for. In my workflow I normally create a new branch when working on a major feature change (this...

Developer04 JUL 2012Archive

Quick Tip: Custom Default Gravatar in WordPress

WordPress gives us lots of little things we can tweak to our own needs. WordPress out of the box includes Gravatar support and has a number of ways you can use...

Developer03 JUL 2012Archive

WordPress features I didn't know about

It happens to us all, a new version of something comes out and we have a quick look through the new features. Normally only noticing the stuff we have been...

Developer28 JUN 2012Archive

WordPress 3.4.1 Released

After 2 weeks and 3 million downloads WordPress 3.4 has its first update. WordPress 3.4.1 is a small maintenance release that fixes 18 bugs and adds a couple...

Developer25 JUN 2012Archive

WordPress page templates in sub-directories, new in WP3.4

I've not spent a great deal of time looking at WordPress 3.4 since its release. However there is a nice little sneaky feature that seems to have been added...

Developer25 APR 2012Archive

Updating WordPress from Admin area with MAMP

I do all my development and testing locally on a Mac running OS X Lion and MAMP Pro. One annoying thing is you get the nice little WordPress update...

Developer31 JAN 2012Archive

The Mojo Sliding Widget Panel Released

I've recently released my jQuery Sliding widget panel onto the WordPress plugin site. I have made some improvements since I originally blogged about it. You...

Developer26 JAN 2012Archive

A little present to all clients

If you're a client of mine using a WordPress based website you will notice a new tab in your WordPress Dashboard. WP101 Clicking on it will reveal a series of...

Developer25 JAN 2012Archive

Secure your Gravity Forms uploads

I love WordPress. I like Gravity Forms. The only trouble with Gravity forms is if you add a file upload field to your form it is stored within your...

Developer25 JAN 2012Archive

Mojo Admin Toolbox 1.2.1

I've made a couple of big changes to the plugin over the last week and just wanted to post an update. Version 1.2.1 firstly includes a fix for the login page...

Developer17 JAN 2012Archive

Mojo Admin Toolbox 1.1

Just posted a little update to my admin toolbox. This update simply adds one new feature. The ability to change your WordPress from name and email address for...

Developer16 JAN 2012Archive

The Mojo Admin Toolbox

The Mojo Admin Toolbox is a collection of little functions I found myself using a lot to customise the admin dashboard of WordPress, specifically when I was...

Developer13 JAN 2012Archive

Mojo Gallery 0.4 Released

Yay! Development is really pushing forward, today I have pushed 0.4 to the WordPress Repo. I've been working hard actually getting the front end presentation...

Developer09 JAN 2012Archive

Mojo Gallery on the WordPress Plugin Repo

Just a quick update to say you can now also keep track of updates from the WordPress plugin repo! Finally managed to get it working, stupid SVN! The most...

Developer09 JAN 2012Archive

Mojo Gallery Plugin Update

Following on from my post a few days ago I have put some serious time into the plugin. The backend is shaping up nicely and is working well. I am currently...

Developer09 JAN 2012Archive

CentOS Root Certificate Authority Failures

Oh CentOS why you so annoying! I love you and hate you all at the same time! When trying to add the shiny GitHub RSS feed on the right of the page I came up...

Developer04 JAN 2012Archive

Mojo Gallery Plugin

Had to put together a gallery for a client site, the trouble is that most of the existing gallery plugins are far to bloated, and generally pretty crap. I...

Developer09 DEC 2011Archive

UWPCRM Update

It's going slowwwwww.. I kinda know what I want to achieve and believe that Custom post types and taxonomies are the way to go on this. What I am struggling...

Developer07 DEC 2011Archive

WordPress Email from Address

Just a quick from me today. WordPress is pretty good, but one thing that always was a little strange was the way your site emails always came from...

Developer06 DEC 2011Archive

The Ultimate WordPress CRM Plugin

So it's time to give back and get involved. Over the past few months I have been seriously knee deep in WordPress, advanced theme development and plugin...

Developer04 NOV 2011Archive

Super Useful WordPress Admin Customisations

I've recently been working on a big corporate theme and wanted to limit and customise the WordPress core much more than I have done in the past. A few handy...

Developer15 SEPT 2011Archive

Custom Post Types and Metaboxes - MyWay

I am not a professional writer so apologies for my incoherent rambling! UPDATE I am aware of some issues in this implementation. Specifically with my...

Developer13 SEPT 2011Archive

WordPress jQuery Sliding Widget Panel

I've used a jQuery slider on a site in the past but wanted to have a re-usable version that could easily be deployed on WordPress sites. I found one that was...

Developer06 SEPT 2011Archive

Git Bash Completion

After CakeFest 2011 I have been well and truly converted to using Git and GitHub for my source code management! One thing that was frustrating me was the lack...

Developer30 AUG 2011Archive

CakeFest 2011

Tomorrow I'm heading off to Manchester to attend the 2011 CakeFest. This is the annual developers convention for CakePHP. CakePHP is a PHP application...

Developer17 AUG 2011Archive

PHP 5.3 and the date!

So PHP5.3 is being widely used now, and even comes as default on newer CentOS distros, however seems there is a little problem with date(). An example:...

Developer22 JUN 2011Archive

How to update Ruby on CentOS 5.x

CentOS is great and by far my preferred distro, however its package support is terrible. Whilst its ties to RHEL make it solid and usable the lack of repos...

Developer21 JUN 2011Archive

vTiger Initial Setup .htaccess

I've been setting up vTiger for a client on a new server and felt in a sharing mood. During the requirements check in the vTiger installation it checks your...

Developer20 JUN 2011Archive

Add custom links to WordPress Admin bar

WordPress 3.1 added the handy admin bar. It kinda hovers there giving you some quick and easy links for updating and editing your site. Unfortunately WordPress...

Developer11 JUN 2011Archive

Plesk 10 Health Monitor Woes

Following on from my previous blog entry about Hard disks, after increasing my disk allocation I was still having issues with Plesk reporting the old disk...

Developer06 MAY 2011Archive

Webmin installation problems

I'm just in the middle of setting up a new server for testing and thought I would go with Webmin to act as the manager just to make things nice and simple....

Developer02 MAR 2011Archive

Update all CPAN Modules

I've inherited a nasty PERL based web tool for managing IP addresses and realised that I don't actually know much about PERL. Being faced with over 300 PERL...

Developer01 SEPT 2010Archive

Goodbye e107

After over 5 years of using e107 I'm saying goodbye. It's been a long and not always pleasant ride but the last year or so has been full of good reasons not to...

Developer22 JUL 2010Archive

UKWDA - A joke?

I was interested to find out about the UKWDA (UK Web Design Association - the Web Standards Organisation in the UK according to their site). After reading...

Developer06 APR 2010Archive

Fight Div-itis and Class-itis With the 960 Grid System | Webdesigner Depot

A while back I made a post about blueprint CSS (may have been before I ruined my website). Found another really nice post on Webdesigner Depot Years ago, HTML...

Developer17 OCT 2009Archive

Oops Internet Explorer Sucks!

Ok just noticed whilst checking my new site that IE has a few weird colours. I'll sort it out as soon as I can, why not use FireFox instead which is a far...

Developer17 OCT 2009Archive

Blueprint: A CSS Framework | Spend your time innovating, not replicating

Blueprint is a CSS framework, which aims to cut down on your development time. It gives you a solid foundation to build your project on top of, with an...