Developing software in the Real World

Introduction to Serverless PHPPresented at Romania PHP, June 2018

APIs and microservices are how we build modern web applications and serverless technologies make this easy. This session will show you how serverless applications are built and how you can leverage your PHP skills to build APIs of all shapes and sizes. We will cover how to use your current knowledge to build applications in PHP within Apache OpenWhisk, leveraging the API Gateway to build robust APIs quickly and easily. By the end of the session, you'll be well placed to design and build your own microservices that take full advantage of the power of serverless technologies.

Writing APIs in LumenPresented at Laravel Live UK, June 2018

Modern applications increasingly require an API, whether to support rich client-side experiences, mobile apps, or to integrate with other systems, and Lumen is an excellent tool for this job. Lumen is lightweight and focussed on providing stateless, JSON APIs which is ideal. I want your API to be a good HTTP citizen and will show you how to build a really excellent and robust API in Lumen including how to handle core HTTP features, such as media negotiation & status codes. We'll also look providing developer-friendly features like thoughtful error handling and documentation. By the end of this session, you'll know how to build great Lumen APIs that give you a competitive edge, ensuring that developers want to work with it.

Introduction to Serverless PHPPresented at PHPEM, May 2018

Serverless systems are becoming mainstream and are an exciting addition to your dev toolbox. I will help you understand what serverless is & how it improves software development as we concentrate solely on our code without worrying about infrastructure concerns. PHP is the language of the web and with native support in OpenWhisk and Azure functions, this true for serverless too. This session will introduce you to serverless PHP and show you how to easily build application with this up and coming technology.

Tutorial: Using Laravel for Rapid DevelopmentPresented at PHP Yorkshire, April 2018

This workshop introduces using Laravel’s opinionated rapid development concepts to create a real, working website. You’ll use the Blade templating engine, database access through Eloquent, command line using Artisan and acceptance testing using Dusk. Attendees will leave the session knowing how to quickly and easily create a simple, secure web application using Laravel.

Building Websites with Zend Expressive 3Presented at PHPUK, February 2018

Zend Expressive 3 is the ideal framework for building PHP applications of all types. Its easy-to-understand architecture makes it ideal for projects of all shapes and sizes. In this talk, I'll show you how to build an Expressive application than can scale with your needs. We will look at how Expressive's middleware system leverages the upcoming PSR-15 specification to create easily understandable and flexible applications. We will cover application setup, routing and error handling before diving into some thoughts on how architect an Expressive application. By the end of the session, you will be equipped to create Expressive applications yourself.

Protect Your API With OAuth2Presented at Sunshine PHP, February 2018

OAuth 2 is the gold standard for authentication in APIs and in this talk I took a deep dive into how it works and how to implement an OAuth 2 server in your API. There are a number of work flows in OAuth 2 for different scenarios including mobile apps and websites connecting via JavaScript, so I looked at each one and showed how to implement the password and client credentials grant types.

Building websites with Zend Expressive 3Presented at LeedsPHP, January 2018

Zend Expressive 3 is the ideal framework for building PHP applications of all types. Its easy-to-understand architecture makes it ideal for projects of all shapes and sizes. In this talk, I'll show you how to build an Expressive application than can scale with your needs. We will look at how Expressive's middleware system leverages the upcoming PSR-15 specification to create easily understandable and flexible applications. We will cover application setup, routing and error handling before diving into some thoughts on how architect an Expressive application. By the end of the session, you will be equipped to create Expressive applications yourself.

Build a Delightful API with Serverless TechnologyPresented at CodeMash, January 2018

What makes an API or microservice delightful? An intuitive interface, consistent behaviour, and a reliable, scalable platform. This talk will cover how serverless technologies can help you to deliver all of these things for your API, ensuring that developers will want to work with your API over the competition. I'll cover how to design, build and deploy for serverless platforms, and how to use an API gateway to turn incoming HTTP requests into events that trigger those serverless functions. I'll share some top tips for solid API design – both from a technical HTTP standpoint and with developer experience firmly in mind. After this session, you'll be building and iterating on first-class APIs and microservices, and developers will be clamouring to use them.

Implementing Serverless PHPPresented at Nomad PHP, December 2017

Serverless applications have a number of benefits and JavaScript is the most common language to write serverless functions in. Why not PHP? In this talk, I will discuss how I implemented first class PHP support into the Apache OpenWhisk platform. We’ll start by looking at OpenWhisk’s architecture and what happens when you invoke a function. Then, I’ll show you how I implemented the PHP support and walk though some example PHP serverless actions.

Purchase a video of this course at NomadPHP.