BRIEFS logo BRIEFS

Episode 24 - ReflectionBasedAbstractFactory Overview

02/07/2017 , 2m, 44s

In this episode, we’re talking about how to do rapid application prototyping and development with Zend Framework, by using the ReflectionBasedAbstractFactory.

If you’ve not heard of it, it makes Zend Framework more Laravel-like, by (largely) avoiding the need to create factories to instantiate classes. I’m sure you’ll agree that this represents a MASSIVE time saver.

It’s an excellent addition to Zend ServiceManager, one I’m sure will quickly gain a lot of traction.

Grab a warm beverage, and come find out more about it!

Further Reading

Questions/Comments/Suggestions

Tweet me at @zfmastery

Episode 23 - FactoryCreator and ConfigDumper - Overview

01/27/2017 , 2m, 48s

In this episode, I’m talking, broadly, about the two latest tutorials on Master Zend Framework; those being:

These tutorials begin the exploration of some excellent new features in the latest version of Zend ServiceManager 3.2.0. What’s more, Gary Hockin, one of the core developers behind these changes, shared some interesting tidbits about where tooling’s headed in Zend ServiceManager as well.

So, grab a warm beverage, and come find out more!

Further Reading

Questions/Comments/Suggestions

Tweet me at @zfmastery

Episode 22 - How To Use Forked Repositories In Composer

01/27/2017 , 2m, 29s

In this episode, we continue on the journey of Composer discovery, discussing the recent tutorial How To Use Forked Repositories In Composer, which dug deep into how to use forked repositories with Composer.

This is a very compelling part of Composer, one which can make your development life a breeze — if you let it.

Not sure why you might?

Have you ever submitted a patch to a repository which your application relies on, but, because that patch is vital to the uptime of your application, you can’t wait for it to be reviewed and merged into the next release?

In times like these, it’s fair to want them to move faster than they normally would, so that you don’t have to wait for the normal review, merge, and release cycles.

So, grab a warm beverage, and come find out more!

Further Reading

Questions/Comments/Suggestions

Tweet me at @zfmastery

Episode 21 - How To Automate Projects Using Composer Scripts

12/07/2016 , 2m, 31s

In this episode, we continue on the journey of Composer discovery, discussing the latest tutorial on Master Zend Framework, which dives deep into the scripts section of composer.json.

Not heard of the scripts section? In a nutshell, it:

  • Lets you automate all the things Stops you having to remember commands with stacks of command line switches, options, and configurations

You can even stack commands together to make your life even easier!

Grab a warm beverage, and come find out more!

Further Reading

Questions/Comments/Suggestions

Tweet me at @zfmastery

Episode 20 - The Composer Command-Line Essentials

11/29/2016 , 2m, 36s

In this episode, let’s look at one of the most essential tools in Zend Framework’s (and PHP’s) wider ecosystem - Composer. I’m sure you’ve heard of and used it.

But how well do you really know it? Do you just know composer install, update, and require, and some of the composer.json configuration? Or do you really know it?

In this series, you’re going to take your skills to the next level; starting with the command-line.

Grab a warm beverage, and come find out more!

Further Reading

Questions/Comments/Suggestions

Tweet me at @zfmastery

Episode 19 - Have YOUR Say

11/22/2016 , 2m, 46s

In this episode, I’m stepping back a bit from the usual flow and turning the mic over to you. I’m keen to find out exactly what you want to learn about Zend Framework, what the one feature is that you’re keen to know about.

If there’s some way in which I can help you learn more effectively, more deeply, I’d love to know.

Grab a warm beverage, and come find out more!

Questions/Comments/Suggestions

Tweet me at @zfmastery

Episode 18 - How To Simplify Expressive Configuration with Interop-Config

11/16/2016 , 2m, 30s

In this episode, I'm back, talking about the excellent package Interop-Config by Sandro Keil. Interop-Config helps ensure that you have a valid configuration for your code. It can provide default options, as well as enforce mandatory options, ensuring that it has a well laid out structure, and is easy to understand.

Grab a warm beverage, and come find out more!

Questions/Comments/Suggestions

Tweet me at @zfmastery

Further Reading

Episode 17 - How To Build a Docker Test Environment

09/27/2016 , 2m, 40s

In this episode, I'm really excited to continue on with the Developing with Docker series and show how to run tests in the environment which we've created.

Grab a warm beverage, and find out more.

Questions/Comments/Suggestions

@zfmastery

Further Reading

Episode 16 - Whoops, I Forgot The Error Handler

09/20/2016 , 2m, 41s

In this episode, we’re talking about errors, exceptions, and the Whoops error handler, commonly used in Zend Expressive projects.

Specifically, I’m talking about what happens when you forget to enable it, and the confusion which that can cause.

If you’re experiencing errors, such as HTTP 500s, and wondering why no information is appearing in your logs, perhaps you forgot to enable or configure the Whoops error handler.

Grab a warm beverage, and find out more.

Questions/Comments/Suggestions

@zfmastery

Further Reading

Episode 15 - A Small Apology...

09/13/2016 , 1m, 36s

This isn't a long episode (not that they ever are). But in this episode, I'm giving a small apology for the recent quietness on the blog, with a bit of background as to why.

In short, computers are great — when they work. Gladly, things appear to be back to normal now. So it’s onwards and upwards my friends!

Questions/Comments/Suggestions

@zfmastery

Episode 14 - Announcing The Zend\Db Deep Dive Course

09/07/2016 , 2m, 28s

After many months of hard work, Zend\Db Deep Dive is ready!

SQL’s long been a part of modern web applications, especially those created using PHP.

But SQL’s not a skill that sits at the top of most developers key skills list. Nor is it one that we’re often itching to learn.

So I created this course to help bridge the gap. If you know the basics of SQL, but want to do it in an object-oriented, reusable, flexible, and maintainable way, then this is the course for you!

In this episode, I’m sharing a bit about it, why the course was created, and what you can get out of it.

Have a listen and check out the course.

Questions/Comments/Suggestions

@zfmastery

Episode 13 - Thanks For The Docker Support

09/06/2016 , 2m, 29s

The recent Docker tutorial has gained a lot of traction — especially in the wider community.

But it couldn’t have been done without the support of those far wiser and learned than myself.

So, in this episode, I’m giving a special shout out to the people that helped make the tutorial happen

…plus a little bit more.

Questions/Comments/Suggestions

@zfmastery

Episode 12 - How To Build a Local Development Environment Using Docker

08/30/2016 , 2m, 50s

Ever wanted to create a local development, without a lot of hassle? In this episode, I'm giving further insight in to the recent tutorial about building local development environments using Docker.

Docker is a tool that I — genuinely — have come to love, every bit as much as my enthusiasm in the episode shows.

If you've been having issues with setting up a local development environment, simply, quickly, and effectively, then this is an episode you don't want to miss.

For more information, check out the following links:

Questions/Comments/Suggestions

@zfmastery

Episode 11 - How To Use Laravel’s Eloquent ORM with Zend Expressive

08/22/2016 , 2m, 59s

Ever thought Eloquent and Expressive would go together like Ebony and Ivory?

I’m guessing the answer’s likely no. But, they can - if that’s your cup of tea, and you’re looking for a change from Zend\Db or Doctrine.

In this episode, I share why I decided to see if they’d fit in the recent tutorial.

For more information, check out the following links:

Questions/Comments/Suggestions

@zfmastery

Episode 10 - Downloading Files in Zend Expressive

08/16/2016 , 2m, 40s

In this episode, I give further background on the recent tutorial which covered the basics of downloading files in Zend Expressive.

Whilst downloading files can be a common part of creating web-based applications, people have mentioned that they’ve had trouble getting started doing so in Zend Expressive.

So I wanted to give yet more information, in addition to the tutorial, to help out.

Many thanks to @acelayaa and @haritk for the technical discussions and feedback.

For more information, check out the following links:

Questions/Comments/Suggestions

@zfmastery

Episode 9 - How To Simplify Zend Expressive Configuration with ConfigProviders

08/10/2016 , 2m, 25s

Given Zend Framework’s design and very flexible nature, it can be easy to end up with a bloated global configuration, if we’re not careful. This episode follows up the recent tutorial on ConfigProviders.

In it, I provide further background the ConfigProviders tutorial, on why ConfigProviders can help reduce configuration complexity, and maintainability.

For more information, check out the following links:

Questions/Comments/Suggestions

@zfmastery

Episode 8 - Zend Expressive Routers (Aura.Router)

04/18/2016 , 2m, 34s

In this episode, I’m giving a quick overview of one of Zend Expressive’s two, non-default, routing packages - Aura Router. Part of the Aura project, which is an independent collection of libraries, and originally designed for PHP 5.4 by Paul M Jones (@pmjones). Aura is, in the words of the repository:

Powerful and flexible web routing for PSR-7 requests.

It's an excellent package, sporting a range of powerful features, including: route groups, route caching, custom matching rules, and the ability to generate paths from routes.

For more information, check out the following links:

Questions/Comments/Suggestions

@zfmastery

Episode 7 - Zend Expressive’s Default Router - FastRoute

04/14/2016 , 2m, 46s

In this episode, I’m giving a quick overview of Zend Expressive’s default routing package - FastRoute. FastRoute, as the documentation says:

Provides a fast implementation of a regular expression based router

Written by Nikita Popov, or nikic on Twitter and GitHub, it’s both a simple and uncomplicated, yet extremely fast and highly performant routing package. It's one worthy of being the default routing package for the Zend Expressive standalone installer.

To find out more information on it, check out these key links:

Questions/Comments/Suggestions

@zfmastery

Episode 6 - Understanding the Zend Expressive Directory Structure

04/11/2016 , 2m, 39s

In this episode, I’m stepping through the standard directory structure, common to all Zend Expressive applications setup using the skeleton application and installer. It's a good discussion about what comes by default, and what each directory contains.

Questions/Comments/Suggestions

@zfmastery

Episode 5 - How to Configure Zend Expressive Applications

04/07/2016 , 2m, 51s

With Zend Expressive, you can build all kinds of middleware-based applications, such as APIs, websites, single page applications, even extremely large and sophisticated applications.

In this episode, I show you four key ways in which you can configure your expressive applications.

These are:

  • Basic routing configuration
  • Using a container
  • Using a Configuration-Driven Container
  • Hybrid Container and Programmatic Creation

To find out more information on it, check out these key links:

Questions/Comments/Suggestions

@zfmastery

Episode 4 - Why is Interoperability GREAT!

04/04/2016 , 2m, 59s

In this episode I'm talking about a key benefit of PSR-7, one I hinted at in episode 2 & 3, one which I’m really excited about — interoperability.

Merriam-Webster defines interoperability as:

The ability of a system to work with or use the parts or equipment of another system

So why is that a good thing? Have a listen and find out.

Episode 3 - What is PSR-7?

03/31/2016 , 2m, 54s

In this episode, I’m looking at PSR-7, the second of two core components which Zend Expressive is built on. Zend Framework team lead, Matthew Weier O'Phinney describes it as:

a set of standard HTTP message interfaces so that we can create an ecosystem in which PHP developers can create re-usable middleware that they can share.

The PSR site describes it as:

common interfaces for representing HTTP messages as described in RFC 7230 and RFC 7231, and URIs for use with HTTP messages as described in RFC 3986.

To find out more information on it, check out these key links:

Questions/Comments/Suggestions

@zfmastery

Episode 2 - What is Middleware?

03/28/2016 , 2m, 59s

Today, I'm talking about one of the two core concepts behind Zend Expressive - Middleware. But what is Middleware? Here's a quick definition:

Middleware, in the context of software applications, is a layer that sits somewhere in the middle, between a request and response. Applications built around a middleware foundation are able to insert functionality in what can be thought of as a series of blocks, blocks which don’t necessarily need to know about one another, nor have any relevance to those which come before, nor those which come after. The blocks are stacked in a particular order and can either pass the current request on to the next one in the chain, or change the request, based on what happens during the processing of that block, changing the dispatched request.

To find out more information on it, check out these key links:

Questions/Comments/Suggestions

@zfmastery

Episode 1 - Getting Started

03/26/2016 , 2m, 35s

This is the prelude, where you'll find out what the show's about, what you can expect, and what's coming up in future episodes.

In a nutshell, it's:

  • A bi-weekly, roughly 3 minute, show
  • About all things Zend Framework, especially Zend Framework 3
  • Gives you all the latest updates, changes, and events in the world of Zend Framework and the wider ecosystem

Stay tuned to learn all there is about Zend Framework!

Questions/Comments/Suggestions

@zfmastery