php[architect] logo

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

Packing Up PHP

August 2023

August: the end of summer, back to school for some, harvest month for others, an ending and a beginning all in one month. It’s a good time to reflect on your overall PHP development—habits you’ve worked to break and new ones you’re trying to adopt. PHP Architect’s goals are to provide the latest information from professionals in the field. Doing so allows our readers to constantly refresh their skills to weed out the things that aren’t working and ‘try on’ some new approaches. It’s a literal, personal update that goes beyond the screen.

RFC: Where To Start

By Frank Wallen

If you have been following the progress of PHP since version 5.6, even 7.4, you know there have been a lot of changes. How does that work? How does that happen? How do I get involved? To get you started on your way, let’s understand what an RFC is: *Request for Comments*. That doesn’t really explain a lot, but it’s the beginning of the discussion on a new implementation, change, or feature added or made in the underlying PHP engine by the internals team. This is the place where *all* of those discussions begin.
by Frank Wallen

Have you tried turning it off and…being bored?

By Beth Tucker Long

*When work gets hectic, we push harder at a frantic pace. We work overtime to get everything done. We plow through patches and tickets, slowly chipping away at the mountain of work before us. We know what needs to be done, but what if there’s a better way?*
by Beth Tucker Long

Convention over Configuration: Anti-Patterns in Laravel

By Matt Lantz

There are often various threads of people ranting on Twitter and other social platforms about anti-patterns and the chaos they produce in applications. In a classic developer argument manner, their arguments are often anecdotal and rife with emotionally driven opinions over conclusive pros and cons arguments. Laravel, like any other code and framework, is filled with highly opinionated code; you buy into some of the opinions or avoid them. Laravel itself is not immune to anti-patterns, nor does it distinctively encourage developers to avoid common ones. However, there are common anti-patterns that Laravel developers can avoid while still utilizing the framework conventionally.
by Matt Lantz

Bubble Sorting

By Oscar Merida

We’ve escaped the maze(s)! On to new subjects, lets explore sorting and the different ways we have to put things in order. We’ll start with the first one I remember writing in Turbo Pascal.
by Oscar Merida

Software Archaeology – Part 1

By Chris Tankersley

Imagine discovering an ancient city, its paths and alleys winding, its structures fascinating, and its history a mystery. You are here by your own accord, but your guides have disappeared. You have no map. You know where you need to go but have no idea how to get there. It is intriguing, and you take your first steps into the city. >Now, replace the city with a vast, complex PHP codebase you have never seen. The excitement, curiosity, and intricate puzzles remain the same. For developers, this happens all of the time. Whenever any of us get a new codebase, no matter how well the codebase is “documented”, there are always questions. No matter how many coworkers you have, the codebase hides secrets that you must suss out. >Welcome to the world of Software Archeology—a practice that marries exploration, detective work, and technical prowess.
by Chris Tankersley

Small Changes

By Maxwell Ivey

Small changes have significant effects on your disabled audience. I really appreciate the opportunity to share my experiences with you. And I hope we can help developers and adaptive tech users better understand each other.
by Maxwell Ivey

Create Observability, Part 3: Rewrite Business Process

By Edward Barnard

Last month we looked at flowcharting as a way of capturing and communicating “tribal knowledge”. This month, as we rewrite a business process, we’ll use a flowchart to document the new business process. We needed to fix the business process before we could fix the code.
by Edward Barnard

Vulnerability Management 101

By Eric Mann

Every piece of published code will eventually suffer a vulnerability. Recognizing this truth is the first step to establishing a vulnerability management program.
by Eric Mann

Rector Refactoring

By Joe Ferguson

This month we’re covering the use of Rector, a tool for automatic code refactoring in PHP. We’ll explain how to configure and use Rector to improve code quality, remove dead code, and enforce coding style. We’ll also cover examples of how Rector can be used to refactor code in a real-world application, Snipe-IT.
by Joe Ferguson

Fantastic SDKS and How To Build Them

By Steve McDougall

I have been integrating with external APIs for longer than I can remember, and I often end up frustrated and want to look for alternative solutions. Stick with me as we look at some challenges and even explore how they can be fun to build.
by Steve McDougall

How I Learned to Stop Worrying: A Pragmatic Approach to JavaScript Memory Management

By Rahul Kumar

Have you ever felt overwhelmed by the complexity of memory management in JavaScript? Between closures, event handlers, and variable scoping, it can feel like there are a million ways your app might start leaking memory without you realizing it. But memory management in JavaScript doesn’t have to be complicated. In fact, if you follow a few simple, pragmatic principles, you’ll be well on your way to building stable apps with clean memory usage.
by Rahul Kumar

Leave a comment

Use the form below to leave a comment: