• Archive The Mutator Package

    Why We’re Saying Goodbye to Mutators The Mutator package, while well-intentioned, has become a source of unnecessary complexity in our development workflow. What started as an attempt to create a flexible data transformation system has instead created a maze of interfaces, adapters, and callbacks that obscure the true intent of our code. The Problem with Mutators Our current Mutator pattern introduces: A Better Path: Event-Driven Mutations Instead of wrestling with complex Mutator interfaces, we’re embracing a more intuitive approach: Simple, Direct Event Transformations class UserRegisteredEvent implements Event { private string $email; private string $name; public function setEmail(string $email): self {…

  • Pitch: Remove Core Package Completely

    The heart of the nomadic approach is that your code should be free to travel and adapt, like a digital nomad who can work from anywhere. The existence of a core package actually contradicts this fundamental principle. Here’s why: The solution is to break down the core package into focused, independent tools that developers can use as needed. Each piece should solve a specific problem in making code more portable, without creating dependencies on PHPNomad itself. Think of PHPNomad more like a travel guide than a destination. It should show you how to write code that can travel well, not…

  • Alex Standiford

    Ripped off a bandaid today. Finally got around to properly tagging all PHPNomad packages, and setting all of them up in Packagist. Currently at 40 repositories, so I needed to get ahead of this before it got out of hand.

  • Alex Standiford

    Just Ohio, saying “we can be everything to everyone!”

  • Alex Standiford

    I’m a bad singer, but it doesn’t mean that I don’t enjoy singing. So I do. With headphones. Up high. So I can be loud, and not hear myself sing. It’s great! I feel good, and don’t have to subject myself to the sounds coming out of my mouth-hole.

    And then I got Airpods, and sometimes I forget conversation awareness is on, and I feel like it’s Apple’s way of silently judging me by bringing to light just how I sound to the rest of the world 😭

  • Proposed New Facade Pattern That Supports Multiple Containers

    Current Implementation PHPNomad currently uses a Facade pattern implemented through abstract classes to provide static access to services. Facades serve two primary purposes: The current implementation requires: Challenges Architectural Limitations Impact on PHPNomad’s Core Philosophy The current Facade implementation conflicts with PHPNomad’s goal of writing truly portable code. By relying on global state and single container context, we limit the ability for code to be truly “nomadic” and run anywhere. Proposed Solution New Facade Pattern Instead of using abstract classes and global state, we propose a new pattern that: Implementation Details class LoggerFacade { use WithFacadeCapability; protected static function getRequiredType():…

  • Alex Standiford

    I got it in the air. 10mph winds. I seriously think this is my perfect Ohio kite. Hits that Goldilocks zone between a 4D and a Quantum. 😍 it’s a Kitty Hawk Kite edition Nexus and I’m in love.

  • Alex Standiford

    IT CAME! IT FINALLY CAME!

  • Alex Standiford

    Okay ClickUp, I see you. I like this!

  • Re-Acquainting Myself With Being A Visionary

    Re-Acquainting Myself With Being A Visionary

    Between late night binges playing Phasmophobia, I’ve been doing a lot of “future work” lately. Thinking about Novatorius, Siren, and what it all means. How does it all connect to my beliefs, and my life, and what’s the purpose of all of it.

Alex
Alex
@alex@www.alexstandiford.com

Founder of Novatorius & creator of Siren Affiliates. WordPress engineer and partnership advocate helping businesses grow with flexible incentive programs.

4,919 posts
61 followers