Given the popularity of the Singleton design pattern, how comes that some developers decry it as an “anti-pattern”? Can it really be that bad?
This article explains the rationale of why it can indeed be that bad and provides alternative approaches that should be used instead.

OOP makes use of access modifiers to control the accessibility of methods and properties. This is what allows you to use the concept of encapsulation, so that you have a public interface that consumers of your code can develop against, as well as a private implementation that needs to be treated as a black box from the outside.

Having all of your methods and properties be public generally defeats the purpose of using OOP in the first place, as most of the benefits depend on the concept of encapsulation in some form or other.

What would it take for WordPress to reach a next big milestone of accounting for 51% of the web? Here’s a hypothetical long-term roadmap as a thought experiment, targeting enterprise clients as the next big audience to tackle.

In a previous instalment, we identified the Config file as being a promising tool to map data reusable code to project-specific code. In this third article, we’ll examine what our Settings page example looks like if we do indeed make use of such a Config file.

While the consensus is to use exceptions instead of errors, there is very little information on how to structure and manage them in a larger codebase. In this article, I want to talk about the way I currently set them up and use them in PHP, in the hopes to spark some discussion on the topic and get further feedback.

Naming is a hugely important factor to consider and directly influences how effective my work is and how much I enjoy it. It forces you to think about the very nature of things. This article discusses the PHP convention of adding the suffix “Interface” to your interfaces.

WordPress Philosophy seems to indicate that all design decisions are ultimately run by the user base to get a “democratic” voting of what changes to implement or reject. However, the reality is far from that. Is WordPress missing a “voting” system?