Welcome to my little corner of the internet.

Hi, my name is Jonathan.

I am a developer educator from Cape Town, South Africa with a passion for open-source software.

I work at Automattic as a full-time sponsored contributor to the WordPress project, working with the Training team on Learn WordPress. We create educational content for the WordPress community, and my focus is on developer-related content.

This site is my personal blog, where I write about all sorts of things, but mostly with a focus on web development.

Latest Posts


  • When Last Login review

    I’m a huge fan of simple plugins. My first plugin was a simple one. The Divi Image Overlay plugin was meant to do one thing, overlay an image onto another image with a nifty animation. Since it’s launch I’ve had one or two bugs to fix and a few requests to extend it further (which…

  • Using anchor links to open accordions and tabs in Divi

    Update: This post is over 6 years old now, and the demo page no longer exists. I have no idea if this still works, so your mileage may vary One of the more useful things about web design is the ability to use anchor tags (those things that create links to other pages or websites)…

  • Remembering ‘Why?’

    It is said you should start with ‘Why?’ Over the past few weeks I’ve gone through some drastic changes in my life. These events have forced me to stop and evaluate why I do what I do and if it all makes sense. Please bear with me for a moment while I explain. About 2…

  • Some days I hate PHP myself

    Some days I get why some developers hate on PHP Checking if a string exists in another string $string_found = stristr($text, $original_text); if( $string_found !== FALSE ) { // do stuff } instead of just being able to do $string_found = stristr($text, $original_text); if( $string_found ) { // do stuff } because of the fact…

  • A quick guide to some everyday Git commands

    When I first started developing code the idea of version control was pretty much unknown, especially in the world of web development. As I progressed through my career and worked at different software companies I learned as much as I could and I’ve now settled into the daily routine of committing, branching, pushing and pulling. While…

  • Opening your Divi Header and Footer icons in a new window.

    A few weeks ago I released the Atlantic Wave Social Media plugin for Divi. The plugin extends the built in Divi header and footer social media icon set by adding up to 13 additional social media icons. A customer recently asked me how it would be possible to open the social media links in a new…

  • Make your Divi Page Builder go large.

    FullScreenDiviPageBuilder

    I tend to prefer to use the full extent of whatever screen I am on to it’s fullest effect. Typically I have two screens, my 23inch widescreen monitor and my 17inch laptop screen. The monitor is for coding and all coding related things and the laptop screen is for testing in browsers as well as the…

  • Setting up a local development environment with Scotch Box

    Local Development

    Very recently I had the misfortune of being forced to uninstall Ubuntu from my laptop and go back to Windows. I won’t get into the reasons behind this, but the one thing I miss in the Windows environment is my LAMP (Linux/Apache/MySQL/PHP) stack and bash command line. Most web site hosts around the world use…

  • Adding CSS to your Custom Divi Modules

    Recently I posted on the topic of Building your own Divi Builder Modules. As a PHP developer first, in that article I focused lightly on the PHP side of things, how to setup the module code etc. Michelle Nunan from DiviSoup pointed out that it might be handy to know how to add custom CSS to…