2018, the Year in Review

December 31st, 2018
Scarily, another year is about to go by and I wanted to take the opportunity to reflect on everything I’ve achieved in 2018.
Read more...

Introducing Building a Chatbot with Laravel and BotMan

April 19th, 2018
Building a Chatbot with Laravel and BotMan is a hands-on guide to developing your very own chatbot. The book will take you through the process of planning, building, testing and deploying your chatbot.
Read more...

A Practical Use Case for Laravel's Polymorphic Relationships

December 13th, 2017
Recently, when working on my side hustle Zero to Grow, I ran into quite a complex database design issue.
Read more...

Keeping Files in Sync With S3 and AWS CLI Tools

December 7th, 2017
On a recent project, I needed to provide a way for an administrator to be able to localise the content of their application in real time.
Read more...

Infinite Loops and the Perils of ‘no-time’ Development

November 15th, 2017
Recently, my Slack app Jukebot hit some traction after @alexdebecker and I decided to launch it on Product Hunt. This was a great experience (one that we will write about at a later date) and delivered a whole load of new signups.
Read more...

Building a Successful Chatbot

October 4th, 2017
First things first, what exactly is a chatbot? A quick Google will give you lots of different answers to this simple question. I have attempted my own definition with the caveat that this fledgelin...
Read more...

Using the MessageSending Event in Laravel

May 22nd, 2017
Like all core Laravel features, sending mail is made easy and convenient by the clean and expressive API that it exposes.
Read more...

Publishing Resources in Laravel 5.5

April 14th, 2017
I spotted a cool new feature coming in Laravel 5.5, which is going to make working with third-party packages that little bit easier. When publishing third-party resources using php artisan ve...
Read more...

Creating a Custom Queue Driver For Laravel

January 24th, 2017
Ever needed to use a queue service not supported by Laravel? No, me neither! However, recently I needed to tweak the config for the SQS driver in order to utilise a couple of the Amazon configuration settings. Unfortunately, these settings are not natively exposed by Laravel, so I decided to build my own driver. Here's how it went.
Read more...

From Idea to Beta in 24 Hours. Say Hello to Your PA, Sharon

December 8th, 2016
What is the best use of downtime on a business trip? I guess there is no definitive answer to that question, but I would like to share with you what my colleague, Dean Withey, and I did during a meeting-less 24 hours in India last week.
Read more...

Busting Cloudflare Cache During Laravel Forge Deployment

November 13th, 2016
Cloudflare is a great tool for, amongst a multitude of other things, taking the load off your server using some pretty amazing caching. But what if you want to bust the cache when pushing an update? Read on to find out.
Read more...

Installing a Self-signed SSL Certificate on Elastic Beanstalk

November 4th, 2016
Recently, I've been trialling Amazon's Elastic Beanstalk to see if it is a good fit for ubisend. After an hour or so of configuring the web environment, I had a version of our app up and run...
Read more...

Integrating Intercom with Laravel

September 11th, 2016
It took two days of highs and lows, that ultimately ended in success and it’s looking like it was worth the effort.
Read more...