Articles

A collection of articles and snippets I've collected over the years.


Feature Estimation: What is the real cost of adding a feature to a website?

January 2, 2021

When a client requests a feature, how do you provide a reasonable estimate? What do you base your estimate on. How much contingency do you add?

How To Create a New User in MySQL 8

November 27, 2020

The command to create a new user on MySQL version 8 has changed. Heres how to do it.

[Solved] Installing composer V1 with Ansible

November 12, 2020

Here's how I solved installing Composer V1 with Ansible

Magento 2: How to disable the Admin Two Factor Auth (2FA) Feature

September 17, 2020

Today I installed Magento 2 for the first time in about a year. Once installed I navigated to the admin area and was presented with a two factor auth warning. Heres how I disabled it.

Symfony: Open file in VSCode or PHPStorm from the browser

April 30, 2020

Did you know you can open files in your IDE direct from Symfony's exception pages?

How to Set a User Agent for PHP fopen() calls

January 21, 2020

How to set a user agent when using PHP's fopen() with an URL

How To Create A Multi-Page PDF From Images

January 14, 2020

Recently I needed to send someone a PDF of a bunch of scanned documents. Here's how I did it

Using Docker with Laravel

July 21, 2019

When developing on a Laravel project I've used Homebrew for my web server and database, or used a Vagrant box. Whilst these work well most of the time there's an alternative that is quickly becoming...

How to disable a payment method on the frontend with Magento 1

May 24, 2019

Its possible in Magento to place orders via the admin area. However, some payment methods require the customer to be present at time of purchase, and so the payment method won't show in the admin...

Laravel Gotcha: Unresolvable dependency

December 18, 2018

I got the following error when creating a new controller via Artisan: Unresolvable dependency resolving [Parameter #0 [ $repository ]] in class App\Http\Controllers\Controller

Apache: Use .htaccess to redirect non-www to www

August 25, 2018

Sometimes your website will be set up to serve your site on both www.domain.com and also domain.com. Search engines will see this as two separate sites (unless you have a <code>rel="canonical"</code>...

Apache: Use .htaccess to redirect http to https

August 25, 2018

I'm forever having to lookup how to use Apache's .htaccess to redirect http to https so here it is.

How To Clear Google Chrome’s 301 Redirect Cache

May 30, 2018

Ever had a dev site set up and had it 301 redirect to 'https', only to find that Google Chrome caches this and you can't get the 'http://' version after?

Magento Admin Invalid Form Key

May 30, 2018

I Recently came across a situation where I couldn't log in to the Magento admin area, getting 'invalid form key on admin'. Here's how to fix it.

How to import a Google Sitemap into a MySQL table

May 30, 2018

Here's a quick snippet showing how to import a Google Sitemap file into a MySQL table. This is useful if you need to do anything with the urls such as scrape the pages or check for 301/302/404...

Google Analytics WordPress Plugin

January 3, 2018

This is a very basic WordPress plugin that adds Google Analytics tracking code to your WordPress Site.  It doesn't have any advanced features like many other plugins. You can get the plugin from...