Speaking

I love sharing knowledge and experience and find it to be a wonderful way to improve. If I want to communicate my internal thinking to someone else, it forces me to think through what I have intuitively done and identify precise concepts and rules that can be translated into words and images.

Apart from the blog posts on this site and the many chats and forums I participate in, I also try to improve as a conference speaker to add this communication tool to my belt as well.

Past Talks

Wrapping A Modern PHP Architecture Around A Legacy WordPress Site

  WordCamp London 2017
  18.03.2017
  Video (coming soon)
  Slides

  WordPress has pretty much anything it needs to fulfill normal CMS requirements. However, most client websites grow organically to include more and more business processes into the WordPress application lifecycle, which ends up being problematic at best.

WordPress does not provide the proper architecture and mechanisms to deal with business processes in a reliable and scalable way.

This talk presents a case study of wrapping a legacy WordPress site into a scalable architecture, using a combination of existing and custom packages, that provides the following benefits:
– services architecture that lets plugins define their dependencies, with automatically resolved loading order
– auto-wiring dependency injection that allows coding against interfaces instead of implementations
– configuration management that can account for differences in environments
– centralized logging throughout the entire site that can be sent to logging servers
– bus system that handles events and commands without blocking the frontend
– all of this without any noticeable impact on content editors

The end result is a WordPress site that embraces most of the commonly accepted PHP best practices, while still offering the same well-known editing UX to content editors.  


The Secret Sauce For Writing Reusable Code

  Everyone knows that you need to write reusable code to be able to grow as a developer, right?

However, most developers struggle to understand how to split up their code to make it truly reusable, so they end up copy-pasting parts of code and modifying as needed, instead of effectively reusing the code that was already written, without a single change.

This session explains the concept of Config files and how they allow you to cleanly separate reusable code from project-specific code.  


The Secret Sauce For Writing Reusable Code

  Everyone knows that you need to write reusable code to be able to grow as a developer, right?

However, most developers struggle to understand how to split up their code to make it truly reusable, so they end up copy-pasting parts of code and modifying as needed, instead of effectively reusing the code that was already written, without a single change.

This session explains the concept of Config files and how they allow you to cleanly separate reusable code from project-specific code.  


High-level View of Web & WordPress Development

  Genesis Camp 2015
  19.07.2015
  Video
  Slides

  Developers tend to get lost in technical details.

In a system as complex as a WordPress website, where there’s a lot going on behind the scenes, it can be a very valuable exercise to take a step back and analyze the different components of the whole system. This lets you get a sense of what part of the system is responsible for what end goal.

This session will give beginning and intermediate WordPress developers an overview, first of general web development, and then for the specific case of WordPress. We will briefly cover client-server architecture, and later discover how the different parts of WordPress work together to let you build sites and apps with relative ease. As it turns out, most of the skills you acquire with WordPress are valid for other domains as well, as long as you can look beyond the terminology.

My experience has shown that understanding the big picture makes it a lot easier to deal with the details, and I hope this will be true for you as well.