I created this graphic as a simple way to visualize dependency injection, unit testing and the use of php interfaces. The interface provides the “agreement/contract” between the implementations and  class \ControllerForExample. You can see that $httpClient can be any one of the implementations. \ControllerForExample doesn’t need to know the details of each implementation, only that […]

We are looking forward to attending Madison’s PHP Conference coming up in just a few days. I thought I would take a moment to reflect on last year’s conference and some of my highlights. There was a great discussion on Composer and the use of Packagist.org for dependency management. Often times a software project has […]