PHP / Magento Dev Blog

  • Publikacje
  • O autorze
  • Kontakt

2025 summary – pipe operator in prod, Hyvä mainstream, AI tooling mandatory, 120 posts

by Henryk Tews / Tuesday, 30 December 2025 / Published in Magento 2, PHP

2025 was the year PHP and Magento development changed gear. PHP 8.5 shipped with the pipe operator, Hyvä became the undisputed default for new Magento projects, AI tools graduated from experimental to mandatory, and the blog reached 120 posts. A retrospective of what actually mattered this year.

PHP in 2025 – the pipe operator changes how we write code

<?php

// The single change that went into the most files in 2025:
$result = $items
    |> array_filter(..., fn($i) => $i['active'])
    |> array_map(..., fn($i) => $i['price'])
    |> array_sum(...);

// This is not just syntactic sugar - it changes how you design pipelines.
// Functions are now composable in the same natural order as the data flow.
// I found myself splitting larger methods into small named functions specifically
// because they compose cleanly with the pipe operator.

Magento ecosystem in 2025

Area State at start of 2025 State at end of 2025
Frontend Hyvä ~60% of new projects Hyvä ~80%, Luma rare in new work
PHP version 8.3 dominant, 8.4 new 8.4 dominant, 8.5 RC late year
Search OpenSearch becoming standard OpenSearch universal, ES gone
AI tooling Useful for senior devs Used by everyone, every day
FrankenPHP Experimental, Magento incompatible Better, Magento workarounds exist
Magento version 2.4.7 current 2.4.8 current, PHP 8.4 supported

AI tooling – from useful to mandatory

What changed in AI tooling during 2025:

1. Context windows: 200K tokens became common
   - Can now send an entire Magento module for review
   - "Explain what this module does" is now reliable

2. Cursor IDE became mature
   - Multi-file refactoring that actually works
   - Understanding of project structure, not just single files

3. Local models (Ollama) caught up for coding tasks
   - Qwen2.5 Coder 32B rivals cloud models for PHP
   - Privacy-safe for NDA projects

4. The failure modes are now well understood:
   - Hallucinated Magento APIs: always verify against source
   - Version-specific code errors: specify the exact version
   - Security code: never trust AI output, always review manually

5. Workflow that emerged:
   - AI for scaffolding (5-10 min → 30 sec)
   - AI for tests (30 min → 5 min)
   - AI for documentation (tedious → instant)
   - Human for architecture, business logic, security

10 posts that resonated most in 2025

  • CQRS + Event Sourcing – the architecture series generated the most discussion
  • Hyvä vs Luma benchmark – concrete numbers finally in one place
  • PHP 8.5 pipe operator confirmed – highest single-day traffic of the year
  • Prod to dev migration with GDPR anonymisation – most practical post of the year
  • GraphQL batch loading (N+1 fix) – most bookmarked
  • AI tools honest assessment – most shared
  • OpenTelemetry in DDEV – most useful for debugging
  • Specification pattern – most “why didn’t I know this earlier” feedback
  • Extension Attributes with batch loading – highest return visit rate
  • PHP 8.5 RC1 pipe operator in practice – most code examples copied

By the numbers – 6.5 years of blogging

Year Posts Key PHP Key Magento
2018 2 PHP 7.2 Magento 2.2
2019 10 PHP 7.4 Magento 2.3
2020 12 PHP 8.0 Magento 2.4
2021 12 PHP 8.1 MSI, GraphQL
2022 20 PHP 8.2 GoF series
2023 24 PHP 8.3 Hyvä adoption
2024 24 PHP 8.4 Magento 2.4.8
2025 16 PHP 8.5 Hyvä mainstream

Plans for 2026

The blog continues at 2 posts per month. Topics confirmed for Q1: PHP 9.0 RFC details as they emerge, Magento 2.4.9 when it ships, deeper Hyvä component patterns, and a series on AI-assisted code review workflows. The same principle as always: technical, code-first, no fluff.

Summary

2025 was a year of consolidation and maturation. The PHP ecosystem has never been in better shape – modern type system, excellent tooling, strong frameworks. Magento 2 found its frontend answer in Hyvä. AI tools became part of the daily workflow, with well-understood limitations. The fundamentals remain: types, tests, patterns, performance. Happy new year – 2026 will be interesting.

About Henryk Tews

What you can read next

Strategy pattern in PHP – and how Magento 2 uses it in pricing
Xdebug – configuration, PHPStorm, debugging Magento plugins
PHP 7.2 – object type hint, sodium instead of mcrypt, deprecations

© 2026 Created by

TOP
Zarządzaj zgodą
Aby zapewnić jak najlepsze wrażenia, korzystamy z technologii, takich jak pliki cookie, do przechowywania i/lub uzyskiwania dostępu do informacji o urządzeniu. Zgoda na te technologie pozwoli nam przetwarzać dane, takie jak zachowanie podczas przeglądania lub unikalne identyfikatory na tej stronie. Brak wyrażenia zgody lub wycofanie zgody może niekorzystnie wpłynąć na niektóre cechy i funkcje.
Funkcjonalne Always active
Przechowywanie lub dostęp do danych technicznych jest ściśle konieczny do uzasadnionego celu umożliwienia korzystania z konkretnej usługi wyraźnie żądanej przez subskrybenta lub użytkownika, lub wyłącznie w celu przeprowadzenia transmisji komunikatu przez sieć łączności elektronicznej.
Preferencje
Przechowywanie lub dostęp techniczny jest niezbędny do uzasadnionego celu przechowywania preferencji, o które nie prosi subskrybent lub użytkownik.
Statystyka
Przechowywanie techniczne lub dostęp, który jest używany wyłącznie do celów statystycznych. Przechowywanie techniczne lub dostęp, który jest używany wyłącznie do anonimowych celów statystycznych. Bez wezwania do sądu, dobrowolnego podporządkowania się dostawcy usług internetowych lub dodatkowych zapisów od strony trzeciej, informacje przechowywane lub pobierane wyłącznie w tym celu zwykle nie mogą być wykorzystywane do identyfikacji użytkownika.
Marketing
Przechowywanie lub dostęp techniczny jest wymagany do tworzenia profili użytkowników w celu wysyłania reklam lub śledzenia użytkownika na stronie internetowej lub na kilku stronach internetowych w podobnych celach marketingowych.
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
Zobacz preferencje
  • {title}
  • {title}
  • {title}