Category: Patterns & Practices

8 Tips for Improving Bootstrap Accessibility

A few years ago, I wrote about my experiences on developing a Bootstrap version 3 project to be fully accessible for people with disabilities. This focussed mostly on how accessible it is in terms of front-end design. (It didn’t cover accessibility in terms of screen readers, as that’s a whole other story.) While I...

Let’s Compare: RunCloud vs Forge vs ServerPilot

When your website or web application has outgrown your shared hosting account, it is time to move it to the cloud, or into a virtual private server (VPS). Nowadays, VPS providers offer better value in terms of CPU and RAM resources than the shared hosting counterparts. However, I can recall when I wanted to move my web...

Rapid Enterprise App Development with Zend Expressive

If you’ve ever done a Zend Framework quick start, you’ve probably never worked in Zend Framework. The quick start has historically been anything but quick, and it’s easy to lose interest and move on to the next thing. Zend Expressive greatly improves upon this experience with the wizard driven compos...

ReactJS in PHP: Writing Compilers Is Easy and Fun!

I used to use an extension called XHP. It enables HTML-in-PHP syntax for generating front-end markup. I reached for it recently, and was surprised to find that it was no longer officially supported for modern PHP versions. So, I decided to implement a user-land version of it, using a basic state-machine compiler. It se...

Are Bitwise Operators Still Relevant in Modern PHP?

Many of you probably scratched your heads reading this title. “Bitwhat?” In this article, we’ll look at what bitwise operators are, and whether or not their use is still relevant in this modern age of computing. Example Use Case I’d been trying to really understand bitwise operators for a long ...

What Are the Workflows of Prominent PHP Community Members?

Workflow refers to both the process and the tools that are used in this process. Almost every developer comes up with a process of creating and finalizing the project deliverables. This process is implemented through a set of tools that the developer comes up with through trial and error. Once a workflow has been perfe...

Re-Introducing PHPUnit – Getting Started with TDD in PHP

There are a lot of PHPUnit posts on our site already (just check the tag), but it’s been a while since we’ve actually introduced people to it, and the tool has evolved significantly since then. This article aims to re-introduce the tool in a modern way, to a modern audience, in a modern PHP environment R...

How to Write JavaScript-Style Test Watchers in PHP

I didn’t start out writing tests for my code. Like many before and since, my “testing” was to write code and refresh the page. “Does it look right?”, I’d ask myself. If I thought so, I’d move on. In fact, most of the jobs I’ve had have been with companies who don’t ...

Re-Introducing Eloquent’s Polymorphic Relationships

You’ve probably used different types of relationships between models or database tables, like those commonly seen in Laravel: one-to-one, one-to-many, many-to-many, and has-many-through. But there’s another type of relationship that’s not so common: polymorphic. So what is a polymorphic relationship? ...

The Theory of Constraints in PHP

I had been reading The Phoenix Project, a great novel about IT (you read that right), which presents day to day IT and devops problems at a large Amazon-like company in a way which makes mortals understand the complexities and chaos of 21st century technology. Without giving away any spoilers, at one point in the book ...