Developing software in the Real World

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.

Serverless APIs in SwiftPresented at muCon, November 2017

Serverless systems allow us to concentrate solely on our code and let the provider deal with infrastructure issues such as scaling and routing. Serverless is best known for responding to events, however it is also an excellent choice for APIs and microservices. In this talk I looked at how to use Apache OpenWhisk to implement APIs using the Swift programming language.

Protect Your API With OAuth2Presented at Code.Talks, September 2017

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.

Serverless APIs in SwiftPresented at APIDays, September 2017

Serverless systems allow us to concentrate solely on our code and let the provider deal with infrastructure issues such as scaling and routing. Serverless is best known for responding to events, however it is also an excellent choice for APIs and microservices. In this talk I looked at how to use Apache OpenWhisk to implement APIs using the Swift programming language.

Deployment within a traditional IT environmentPresented at PHPSW user group, August 2017

Building line-of-business web applications for clients with traditional IT departments brings its own set of challenges when it comes to DevOps. In particular, the IT department adds additional constraints that you may not see in more forward-thinking companies. Rob Allen explores these complexities and shares some solutions he and his team came up with in order to use modern development practices in nontraditional environments. You’ll learn how CI tools with appropriate scripting enable reliable delivery of a quality product on IBM i and Windows. Rob also covers the organizational and technical challenges encountered when IT departments are not used to developers having a say in the server environment and shows you why it’s worth spending time getting them on board.