php[architect] — April 2016

I’m excited to see the Drupal and PHP communities building bridges to collaborate (“Getting off the island” as Larry Garfield likes to say) and also learn from each other. This month, we’ll look at how the Drupal project has embraced tools and techniques like object-oriented programming and Composer.

Drupal 8 Module Development

Drupal is one of the most popular and most used open-source content management systems in the world. It has released a stable version for 8, which can be used on production servers. In this article, I explain how to develop a complete module for version 8. by Nicola Pignatelli

Keep Your Drupal Composed

Have you ever thought, “Legacy software… Oh, how we wish Composer could manage you…”? I thought that was the case for Drupal 7 until I scratched beyond Composer’s surface and found a plethora of tools waiting to prove me wrong. In this article, we will learn how to use custom installers, our own private Packagist repository, and scripts to install Drupal into a project and update it when modules and themes are updated. Keep Drupal Composed? Yeah, we’ll be able to do that… by Luis Cruz

It is a frequent topic of discussion whether open-source software (Drupal is under GPL) is not secure because it is open source. Some people worry that if a source is “open,” publicly available, and accessible, malicious hackers can find vulnerabilities to exploit. Some think private or closed-source applications would prevent these threats. In this article, I’ll review the actions the Drupal project has taken to improve security and handle vulnerabilities. by Cathy Theys

Living Documentation: Generating Documentation from Source Code

Writing documentation can be boring, and even good documentation falls out of date easily over time. This article will demonstrate an approach to generating documentation from source code, so that it is easier to write and keep up to date. by Carl Vuorinen

Education Station: PhpStorm Intentions for Improved Code Quality

Are you as productive as you could be? Are you as efficient with your IDE as you’d like to be? Are you as effective at implementing features as you need to be? Odds are, the answers are no, no, and no. This month, I show you how to leverage PhpStorm’s Intentions to write better, more efficient, and more effective code. by Matthew Setter

Leveling Up: Learning a New Framework

Many of us know our preferred framework or platform of choice very well. When faced with an upgrade, a platform evolution, or a new task that requires looking into and learning a new framework, the prospect can be a bit daunting. Whether you have to learn a new framework or platform to keep current on your day-to-day job or just because you love learning, I’ve got a few tips I hope will help make your journey a little easier. by David Stockton

Community Corner: Community Leaders

This month’s article is written by my good friend Mr. Brandon Savage. Brandon is an active member of the PHP community, an instructor in object-oriented programming in PHP When you think of a “community leader,” what do you typically see in your mind? by Cal Evans

Security Corner: Securing Legacy Applications—Part 2

Last month, I talked about legacy applications and provided some general “quick hit” tips to help you secure your application. I’m going to continue the same theme this month and offer a few more helpful hints you can use immediately. You’ll notice as I go through these points that they all have something in common—they’re relatively generic. Legacy applications are a completely different beast when it comes to the mishmash of technologies, development practices, and naming conventions. Unfortunately, this also means that there’s no way to really effectively secure it without taking a good look at how it’s doing things. by Chris Cornutt

Performance vs Scalability

This month, I want to discuss the differences between the Performance of an application, versus the Scalability of said application. Because I keep finding far too often that these terms are being used interchangeably. Of course while they are related, they are definitely not the same thing. by Eli White