Pragmatism in the real world

Introducing Dependency InjectionPresented at Glasgow PHP user group, April 2015

The Dependency Injection pattern separates the creation of objects and their dependencies and is used in many popular frameworks including Zend Framework, Symfony, Laravel & Silex. This session will look at what Dependency Injection is, why you should use it and the benefits it provides. We will also look at how to use a Dependency Injection Container to improve decoupling and make your projects easier to test and maintain.

Creating modelsPresented at PHP Warwickshire user group, March 2015

How are you supposed to organise your models in an MVC application? What goes where? What is a service class, a mapper or an entity? This talk will look at the components of the model layer and the options you have when creating your models. We’ll look at the different schools of thought in this area and compare and contrast their strengths and weaknesses with an eye to flexibility and testability.

We'll discuss the terminology and also take a look at what a service layer is and see how you use service classes to provide the business logic for your application and hide your persistence code from your controllers. By the end of this session you will be equipped to create excellent, maintainable models in your projects.

Introduction to ApigilityPresented at PHPUK, February 2015

Apigility is a project that allows you to easily create a web service without having to worry about the nitty-gritty details. Which details? Well, Apigility will handle content negotiation, error handling, versioning and authentication for you, allowing you to concentrate on your application.

In this introductory talk we look at what Apigility is and how to create a simple REST API that allows us to view a list of music albums, showing how to start using Apigility and how to publish an API using this tool.

Introduction to ZF2Presented at PHP Conference Argentina, November 2014

Zend Framework 2 has matured nicely over the last 6 months, so this talk looked at how it works! In this talk, I walked through the structure of a ZF 2 application. I covered configuration, service location, modules, events, and the MVC system to provide a clear introduction to the key elements of a Zend Framework 2 application.

Creating modelsPresented at ZendCon, October 2014

How are you supposed to organise your models in an MVC application? What goes where? What is a service class, a mapper or an entity? This talk will look at the components of the model layer and the options you have when creating your models. We’ll look at the different schools of thought in this area and compare and contrast their strengths and weaknesses with an eye to flexibility and testability.

We'll discuss the terminology and also take a look at what a service layer is and see how you use service classes to provide the business logic for your application and hide your persistence code from your controllers. By the end of this session you will be equipped to create excellent, maintainable models in your projects.

Dependency Injection in ZF2Presented at ZendCon, October 2014

The Dependency Injection pattern separates the creation of objects and their dependencies. This session will look at what Dependency Injection is, how it is integral to Zend Framework 2 and the benefits that it brings. We’ll then look at how Zend\ ServiceManager works and how to make best use of it within your application.

Zend Framework 2 Certification LaunchpadPresented at ZendCon, October 2014

Give yourself a refresher in Zend Framework 2 before taking the certification right here at ZendCon. This tutorial is designed to take developers who are well versed in ZF2 to the point where they are confident in passing the ZFCA exam. This tutorial will refresh your knowledge of some of the more widely used components, but will also cover some edge cases that you may have never used (or forgotten about). I'll also be giving you sample questions along the way, as well as advice on what to expect when you actually sit the exam.

Introduction to ApigilityPresented at PHPNW, October 2014

Apigility is a project that allows you to easily create a web service without having to worry about the nitty-gritty details. Which details? Well, Apigility will handle content negotiation, error handling, versioning and authentication for you, allowing you to concentrate on your application.

In this introductory talk we look at what Apigility is and how to create a simple REST API that allows us to view a list of music albums, showing how to start using Apigility and how to publish an API using this tool.

Creating modelsPresented at PHPSW user group, September 2014

How are you supposed to organise your models in an MVC application? What goes where? What is a service class, a mapper or an entity? This talk will look at the components of the model layer and the options you have when creating your models. We’ll look at the different schools of thought in this area and compare and contrast their strengths and weaknesses with an eye to flexibility and testability.

We'll discuss the terminology and also take a look at what a service layer is and see how you use service classes to provide the business logic for your application and hide your persistence code from your controllers. By the end of this session you will be equipped to create excellent, maintainable models in your projects.

Introduction to ApigilityPresented at Endpoint, September 2014

Apigility is a project that allows you to easily create a web service without having to worry about the nitty-gritty details. Which details? Well, Apigility will handle content negotiation, error handling, versioning and authentication for you, allowing you to concentrate on your application.

In this introductory talk we look at what Apigility is and how to create a simple REST API that allows us to view a list of music albums, showing how to start using Apigility and how to publish an API using this tool.