Hi 👋🏻 I'm Matt

I'm a full-stack web developer and technical author living in Bundaberg (Queensland), Australia. I've been developing web applications for over twenty years.

I've also been teaching developers how to build web-based applications (mainly in PHP) for over ten years, through my tutorials, content created for others, and my books and courses. If you're keen to grow your skills, definitely check them out.

I help businesses build web apps they can depend on, showing organisations (and their teams) how to build and deploy well-tested web apps that are maintainable, easy to deploy, and excellently documented. If you'd like to work together, you can find out more here.

And, I craft compelling, informative, and engaging technical tutorials, showing developers how to use a range of services and technologies in their web applications. If your business could benefit from them, you can find out more here.

Otherwise, you can find me me on LinkedIn, GitHub, YouTube, Mastodon, and Bluesky.


Latest from the blog

If you're short on time, but keen to grow your software testing, deployment, and documentation skills, check out the latest tutorials below. Check out all the tutorials on the blog if you're keen to learn more.

Is it Worth Learning PHP in 2025?
Mon, Jan 13, 2025

Is it Worth Learning PHP in 2025?

Is PHP worth learning in 2025, with all of the attention that other languages, such as Go, get? In this post, I’ll show you a series of compelling reasons why PHP is still worth learning - even if it’s not adopted as much nor as quickly as it once was.

Enable Mezzio Modules with laminas-component-installer
Mon, Dec 16, 2024

Enable Mezzio Modules with laminas-component-installer

When building reusable Mezzio packages, such as for user management, payments, and authentication, do users have to enable them manually, or are you automating it for them? In this short tutorial, I’ll show you how to enable them almost automatically, saving your users time and effort.


Don't miss a single tutorial!

Join up to the mailing list so that you're always the first to know when a new tutorial is published.

You can unsubscribe at any time by clicking the link in the footer of the emails you'll receive. Here's my privacy policy, if you'd like to know more. I use Mailchimp to send emails. You can learn more about their privacy practices here.


Listen to the podcast

Short on time or want to learn on the go? Tune in to the podcast.