php[architect] logo

Want to check out an issue? Sign up to receive a special offer.

Warp Driven Development

July 2020

Code is not an end in-and-of-itself. We write code to solve problems. However, there are multiple paths to get from here to there. How do you know you’re headed in the right direction when you start a project? This month, we look at applying event-driven design, getting started with test-driven development, putting your stakeholder’s needs in the driver’s seat when presenting, and more

Event-Driven Design with Drift PHP

By Marc Morera

In the past few years, you’ve probably heard about event-driven design at conferences, meetups, or even blogs. These words can have different meanings even in the same language, but in the end, a more direct way of explaining it is, “Don’t ask; tell.” Let someone tell you something has changed instead of asking once and again, and meanwhile, relax and keep doing your job with what you already have.

Getting Started With Test-Driven Development

By Scott Keck-Warren

As developers, we spend a large portion of our time testing code we’ve just written. In a traditional testing cycle, we write some code and manually test it until it’s error-free, but how do we know it will be error-free a year from now? Embracing Test-Driven Development (TDD) allows us to quickly build a suite of automated tests, which improves the maintainability and reliability of our code.

The Zen of Ego-Free Presenting

By Laura Foley

Sometimes, it’s all you can do to stay awake during presentations. But when you’re listening to a great public speaker, it’s as if you’re the only person in the audience. This article will help you create those powerful connections at your next presentation.

PHP Puzzles: Random Loot

By Sherri Wheeler

In our last issue, we looked at multiple solutions for the Fibonacci math problem. We saw a common recursion gotcha when one of our solutions caused PHP to timeout on modest inputs. We then took a more fun direction and presented a problem from game development: randomizing the quality of loot generation. Let’s look at loot quality and then pose another game related puzzle.

Education Station: Writing Concise Code

By Chris Tankersley

There is a huge emphasis put on the code maintainability, and for a good reason. The programming industry is rife with what we like to term “legacy code,” which boils down to code that solves a business problem, but we, as the current maintainers, do not understand. No language is safe from this problem.

The Workshop: Twig, Bulma, and CodeIgniter 4

By Joe Ferguson

Last month, we covered getting started with a brand new CodeIgniter 4 project and explored the framework. We explained installation, routing, controllers, and built some models and migration to exercise the basics of working with a database. This month we’re focusing on the frontend of our CodeIgniter 4 example project by implementing a PHP template engine and the Bulma CSS framework.

Sustainable PHP: We Got Robbed

By Edward Barnard

Modern PHP software is well capable of large projects. We, therefore, need to approach architecture and design thoughtfully. That observation, unfortunately, runs at odds with our current “agile” methodologies. Here, we take a look at what went wrong and how it got that way. We’ll see the solution is “obvious.”

Security Corner: Information Tokenization

By Eric Mann

Any system dealing with human users collects some information about those users. That information is private and needs to be kept secure. The most effective way to do so is to avoid its storage in the first place, i.e., by tokenizing the data.

Community Corner: PHP 8 Release Managers: Interview with Sara Golemon and Gabriel Caruso, Part 1

By Eric Van Johnson

I’ve been contributing to Community Corner for a few months, so you would know by now that I am not a journalist and that I love PHP. I love coding with it, talking to people about it, and meeting new people involved with it. I’ve had the opportunity to speak with a lot of fantastic people, from Community Organizers to Internals contributors, but this month is probably the highlight for me as I sat down to speak with Sara Golemon and Gabriel Caruso, the two Release Managers of PHP 8.0.

finally{}: The Dangers of Intellectual (Sounding) Arguments

By Eli White

OK, I’ll admit that’s a weird title to start with, but bear with me for a bit. I want to talk about a problem that I see happening not only in daily life (with COVID-19) but also in the tech communities for decades. It is the application of several fallacies in a discussion, that manifest themselves as well thought-out, intellectual points of debate. When in the end, they are based on false assertions but are hidden behind the wall of intellectual debate.

Leave a comment

Use the form below to leave a comment: