February 2014

Drupal 8 leverages a number of new libraries, including a slew from the Symfony 2 project. As stand-alone components, each one does an awesome job of making some part of building web applications easier. Taken together, they provide a solid, rational framework that Drupal 8 uses to manage complicated tasks like routing and dependency injection. Don't worry if that sounds overwhelming, we'll start simple so you can unwrap the onion layers and fully appreciate each component before we dive too deep.

Below are the next 5 videos in our Drupal 8 Developer prep series. We explore what Symfony is, and work our way into learning the first component we need when building an application with Symfony.

(FREE!) What Symfony is and the difference between a CMS and a framework - 2:41

If you’ve heard anything about Drupal 8, you’ve probably heard a bit about Symfony2. Symfony is a full-fledged framework that powers a lot of big sites out there (much like Drupal). Drupal incorporates several Symfony components, allowing us to leverage some mature code without re-inventing the wheel.

Building a simple example script and illustrating its flaws - 3:19

Throughout this section on Symfony, we’ll be using fairly simple example pages to demonstrate the advantages of refactoring to use various Symfony components. With this first ‘Hello, world’ script, we can identify several problems that are easily addressed by Symfony.

Refactoring our code, and how character encoding works - 5:21

In this video, we do our best to address the issues we identified with our initial script to get a sense of the direction we’d take.

How to incorporate the Http Foundation Symfony component to add object orientation to our simple script - 5:00

Now that we’ve seen how to tackle some of the problems with our initial script, we’re in a position to appreciate what the Http Foundation component has to offer. In this video, we rebuild our script using the Request and Response classes which come with the component.

How the Request and Response classes work - 3:18

Having seen Request and Response, we dive into the paradigm of thinking about our page in terms of the two part process of a client request-ing something from the server, and then respond-ing with something the client expects.

(FREE!) What Semantic Versioning is and how to use it - 1:25

Without a set of rules to govern how projects are versioned, it's difficult to figure out what a particular version change implies. Semantic Versioning sets a solid standard for versioning that most Packagist-based projects support. Here we walk through the details.

What happens during 'composer install' and how the download is structured - 2:55

In this video, we take a look at the files that got added to our project when we ran 'composer install'. After watching the OOP videos and getting a sense of how the PSR-0 standard works, the structure will probably look very familiar.

How to use Composer's autoloader and use a package in our code - 1:56

Now that we've gotten our files with composer, we can use them in a real project! In this simple project, we use the fun Inflector library to multiply rodents.

A quick look at how Drupal 8 uses Composer - 1:39

Now that you've seen Composer in action, we take a gander at Drupal 8's composer.json file to see what kinds of packages are getting included.

How to look for packages, and how Packagist is like a module repository for PHP - 1:48

Wrapping up our Composer coverage, in this video we look at how to find PHP packages on Packagist, and draw some parallels between Packagist and the Drupal module repository. Basically, if you like sharing your code, Packagist and Composer pave the way to sharing with an even broader community.

(FREE!) How Composer and Packagist work together to help manage reusable PHP components - 1:39

The evolution of Composer and Packagist as a way to centralize the download and management of PHP libraries for any project is a huge boon. With a single file, you can set up which libraries you want to download and which versions you will be using. In this video we explain exactly why it's so useful.

How to install Composer on a Mac or Linux and what a .phar file is - 3:13

Before we use Composer, we need to install it. Here we walk through the process for Mac and Linux users and briefly explain what a Phar file is (hint: It's like a Zip file that can contain an entire PHP application)

How to install Composer in Windows - 1:23

In this video, we walk through installing Composer on a Windows machine.

How to set up our Composer example folder and set up a basic Composer project - 2:21

Now that we have Composer, we have thousands of vetted PHP libraries at our fingertips. Mwaaahahaha! Before we go too crazy, we're going to set up a simple application that includes a single package from the popular Doctrine library that Drupal 8 leverages as well.

How JSON (JavaScript Object Notation) and our composer.json file work - 1:31

JSON has become a useful standard for structuring arrays of data in a portable way. In this video we explain the basic structure of a .json file and the specific structure of a composer.json file.

BuildAPatch winner announced!

Congratulations to Marc Drummond for contributing several patches over this last week and winning a free year membership to BuildAModule! Thank you to everyone else who participated, we got a number of great patches submitted, and we hope to do this again before too long. Keep up the good work!

MegaPage is Back!

And better than ever. Just go to the Complete Video Index to check it out. The video collections and chapters are now collapsible (something many people have been requesting for a long time) and of course you get get all the benefits of the latest updates to the BuildAModule video player, like the ability to hide the transcript, quickly select a playback speed, playlist support and more.

Videos are coming down the pikes

I’m hard at work on a new set of videos on how Drupal leverages Symfony2 components that we’ll start releasing in the next couple of weeks, so keep an eye out. These will be a lot of fun and will be a great opportunity to bump up your programming skills in general as well and get a better idea of what’s under the hood with Drupal 8.

Add to playlist

Add to , or

Add to new playlist:

Add to playlist
This is a member-only feature
But, it's easy to become a member

Add to cart:

Contact us

Below are the supported keyboard shortcuts for our video player.

Start / stop video
Go to next video
Go to previous video
Increase or decrease player speed by 20%
Skip ahead or go back by 15 seconds
Jump to a percentage (2 is 20%, for example)
Toggle full screen
Videos Pricing More Search
BuildAModule Logo Icon BuildAModule Logo Icon
Become a member!
1 month
6 months
10% off
12 months
20% off
All memberships come with the following:
24 / 7 access to the entire 1800+ video library
An innovative video player with a rolling transcript
Extensive Drupal and cross-platform training
A thorough and thoughtful training style
Progress tracking
Take notes on specific video sections
Intuitive multi-user management
How many users?
Go solo with a single user, or give multiple team members access through one account and get discounts by bundling multiple users into a single membership.