The writing.
123 posts, mostly written late at night, lightly edited the morning after. Filter by what you came for — or read it all.
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.
Nine minutes of Dotvault, no fluff ↗
Nine minutes of Dotvault on screen — editor, version history, Laravel encrypted env support, and how the trial works.
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.
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....
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...
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...
Amazon Prime Day Fail
So yesterday was Prime day on Amazon. Billed as more deals than Black Friday we all eagerly made our way to Amazon to fill our baskets with wonderful, reduced...
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...
CentOS 7: ifconfig command not found
So if you do a fresh "minimal" installation of CentOS 7 you might run into this issue when trying to run ifconfig. bash$: ifconfig: command not found The...
Howto Install PHP 5.4, 5.5 or 5.6 on CentOS 6 and CentOS 7
I still use CentOS as my distro of choice on any new server and whilst things are getting better CentOS and RHEL still don't have up to date versions of PHP...
Here's to 2015
So 2014 was a fairly slow year on my site, in fact only 7 new articles were published. I want to do a lot more in 2015 regardless of work load so here's what...
Holiday Offer from WPEngine
I talked a while back about the great WordPress hosting available at WPEngine. Well to tempt you to their dedicated WordPress hosting solutions this holiday...
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,...
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...
Higher Screen Resolution in Ubuntu on VirtualBox
He's a little tip for you. Took me a while to work this one out so thought I should share! If you install a fresh install of Ubuntu inside VirtualBox you end...
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...
Moving from iCloud to Google
For years now I have been using Google Apps for business, but being an iPhone user I always kept iCloud for all my personal emails, contacts and calendars. It...
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...
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...
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...
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...
How to install and configure LEMP (Linux, nginx, MySQL and PHP) on CentOS 6
Fellow developers have been on at me for the last couple of years to ditch Apache and move to nginx. If you know what nginx is then you know why, if not let's...
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...
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...
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...
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...
I'm not dead....
Howdy all, I just wanted to post a very brief update to say I'm not dead and neither is this blog. I've been extremely busy over the past couple of weeks and...
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...
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...
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...
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,...
Finding the right balance
I recently asked my followers what they would like to see me blog about and I was pleasantly surprised to get a response. Well it would be rude of me not to...
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...
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...
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...
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...
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...
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...
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....
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...
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....
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...
Learning GIT the hard way
I love GIT, I use it all day every day and it has saved my ass on more than a handful of times. I couldn't help laughing at this though. Sure we've all seen...
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...
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...
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...
Quick Tip: Rename your iOS Device without iTunes
Today my shiny iPad Mini arrived. It is lovely, light and small, but that isn't the point of this. When I was setting it all up I was restoring from a iCloud...
WP Engine, WordPress hosting done right
It's been about a month since my last quick blog post. The only thing that has been keeping me away has been trying to get my blog to stay online for more than...
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...
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...
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...
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...
Mountain Lion and Kernel Panics after sleep
I have recently upgraded to a new 15" MacBook Pro (without the Retina Display). I then upgraded to Mountain Lion, all my programs were working fine what could...
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...
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...
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...
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...
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...
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...
Coda 2 is finally here!
In 2007 Panic released Coda, a revolutionary tool for web developers and designers who for years were forced to use multiple tools to get the job done. Coda...
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...
Make your own OS X Lion USB Boot Disk
So now OS X is completely digital, the kind folks at Apple will let you buy a USB stick for $69, alternatively do it yourself for free. This little application...
CakeFest 2012 is Booked!
After a great conference in Manchester last year the kind folks at the Cake Software Foundation have decided to return to Manchester for a second year! If you...
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...
Alesis DM10 X Kit Review
When I got my DM6 I really did love it, as I posted on here. I was so excited when Alesis agreed to send me a DM10x Kit to review and was looking forward to a...
Alesis IO2 Express Review
I just wanted to post a quick review of the Alesis IO2 Express, a super portable, compact audio interface for your Mac or PC. A 2 channel USB (and USB Bus...
Still working on the look!
A little while ago I posted about a new theme for the site. Whilst I was happy with the look I wasn't very happy with the amount of JavaScript and other crap...
Toontrack Superior Drummer 2.3 Review
In a previous blog I talked about hooking an Alesis DM6 USB Kit up to Logic Pro and Superior Drummer, as someone fairly new to edrums I thought a little review...
Alesis DM6 USB Kit Review
Over the past few weeks I have been busy building my home studio up, replacing or purchasing some key elements that have been missing. One thing that has...
A super shiny new look!
So it's been a fairly busy few weeks and I've seen a massive amount of traffic to this site since launching my plugins. Thanks to all who have got involved and...
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...
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...
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...
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...
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...
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...
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...
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...
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...
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...
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...
A very Merry Christmas to all
Just wanted to wish anyone who does actually stop by here a very Merry Christmas and a happy new year!
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...
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...
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...
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...
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...
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...
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...
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...
PHP Mcrypt on CentOS 6
Yay, CentOS 6 still doesn't by default include mcrypt in it's distribution on repositories. There is hope, EPEL to the rescue again: rpm -ivh...
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:...
Skipping characters whilst using nano over SSH from OS X Lion 10.7
Ever since upgrading to OSX Lion 10.7 I've been pulling my hair out. I spend a fair bit of time connected via SSH to remote servers using Terminal, ever since...
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...
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...
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...
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...
1and1 Dynamic Cloud Server Disk Allocation
I have a Dynamic Cloud Server with 1 and 1 which should have 100GB of disk space. Imagine my surprise when after a few days I was getting alerts telling me...
Create SSH Keys from your Mac
I spend a lot of time in Terminal connected to remote servers via SSH, I'm by no means an expert and have come across using Key pairs in the past, but never...
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....
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...
Geek heaven at the new house
I am officially the king of home media geekness. Airport extreme hooked up in 2 separate rooms to stereos. Mac mini server busting iTunes with remote on the...
Moving House!
I get to start the year with all the fun of moving house! At the end of January I'm moving to a nice little place that actually has decent broadband and mobile...
xbox live update issues 2010
Another year and another dashboard update for the xbox 360. Another year of issues! Mine has been dropping out whilst updating, not being able to connect to...
New Mobile Me Calendar Launched
Taken from the Apple website: The new MobileMe Calendar is now out of beta and available to all members. We'd like to thank everyone who took part in the beta...
Medal of Honor on route
Although the UK release date isn't until the 15th October I was pleasantly surprised to find it in stock and available for order on play.com It is ordered and...
The end is nigh for .Mac Homepages
Received a sad email from Apple this afternoon: .Mac HomePage viewing will be discontinued on November 8, 2010 Dear MobileMe member, Over a year ago, we...
Everything Everywhere - Orange/T-Mobile Unite
Last year it was announced that Orange and T-mobile would be merging to create the largest mobile network provider. This of course didn't mean anything in real...
BBC = Epic FAIL
Just a very quick post. Tonight is the season premiere of Spooks on the BBC. Great I have been looking forward to this for ages, took my Sky+HD to BBC HD, 9pm,...
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...
Apple's iTV Set for September Launch With iAd-Supported Channels, iPad as Remote? - Mac Rumors
Apple's iTV Set for September Launch With iAd-Supported Channels, iPad as Remote? - Mac Rumors. In a blog post over the weekend, Digg co-founder Kevin Rose...
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...
It’s here! Say Hello to Techi.com
A great site that has just been launched from the guys over at WebDesignerWall. Definitely one to watch! And it’s finally out! Please meet our new site:...
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...
Brand new laptop full of crap!
Just got back from Pcworld with a new Windows based laptop (I know but Sage Accounts only works on Windows and I'm fed up of not being able to have my Mac on...
How not to advertise your product
Apple seem to have the world under a mystical spell. No matter what they release, it sells. It sells millions! On the train the other day it was iPhone central...
Think about your end-user!
One of the things that is often overlooked in webdesign and development is the importance of how your end-user is actually going to use the site. To often it...
iPad=iPooooo
I haven't had chance to make a proper post in quite a while but the big announcement from Apple last week deserved a quick note. Apple, what are you doing you...
Windows 7 First Thoughts
Popped along to PC World yesterday and bought a copy of Windows 7 Professional (didn't seem to be any benefit to going for Ultimate). Now I was a little...
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...
Next-Generation Mac Pro to Receive Temporary Exclusive of Six-Core 'Gulftown' Processor?
Hardmac reports that an early 2010 revision to Apple's Mac Pro may see the inclusion of Intel's forthcoming six-core "Gulftown" processor as a temporary...
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...
Another New site!
I know I keep doing this, get a site, like it, hate it, delete it. It's hard being a perfectionist! So bear with me whilst I get this going hopefully this time...
Nothing under that tag yet.