PHP / Magento Dev Blog

  • Publikacje
  • O autorze
  • Kontakt

Kurs Gita #1 – model danych: blobs, trees, commity, refs

  • 0
Henryk Tews
środa, 06 maja 2026 / Opublikowano w Git

Większość programistów używa Gita jak czarnej skrzynki: coś wpisujesz, coś się zapisuje, historia jakoś działa. Dopóki coś nie pójdzie nie tak. Żeby Git przestał być magią – zacznij od zrozumienia, co naprawdę siedzi w katalogu .git/. Cztery typy obiektów: blob, tree, commit, tag. Tyle. Reszta to konsekwencje.

(więcej…)

Magento 2.4.9 – oficjalne wsparcie PHP 8.5, co się zmieniło i jak migrować

  • 0
Henryk Tews
poniedziałek, 04 maja 2026 / Opublikowano w Magento 2, PHP

Magento 2.4.9 wyszło z oficjalnym wsparciem PHP 8.5. Przez ostatnie miesiące testowałem RC na projektach klientów – teraz jest stable i można planować migracje. Pipe operator, readonly dziedziczenie, nowe array functions – wszystkie PHP 8.5 features są teraz pierwszoklasowymi obywatelami w kodzie modułów Magento. Przeglądam co się faktycznie zmieniło w rdzeniu, co trzeba zaktualizować w własnym kodzie i jak wygląda ścieżka upgrade dla istniejących projektów.

(więcej…)

AI workflow 2026 – 2 lata później, co działa, co nie, Claude 200k w praktyce

  • 0
Henryk Tews
wtorek, 21 kwietnia 2026 / Opublikowano w PHP

W 2024 napisałem pierwszy wpis o AI w pracy PHP developera. Minęły dwa lata i obraz zmienił się radykalnie. Nie chodzi już o pytanie „czy używać AI” – chodzi o to jak wbudować narzędzia w workflow żeby nie traciły czasu a go oszczędzały. Po dwóch latach codziennego użycia mam precyzyjny obraz co działa, co nie działa i jak zorganizować pracę żeby wyciągnąć maksimum bez polegania na narzędziu więcej niż powinno.

(więcej…)

OpenSearch 3.x vector search – embeddingi przez Ollama, k-NN, hybrid search

  • 0
Henryk Tews
środa, 08 kwietnia 2026 / Opublikowano w Magento 2

OpenSearch 3.x przyniósł dojrzałe wsparcie dla k-NN (k-Nearest Neighbors) i vector search – fundamentu wyszukiwania semantycznego. Zamiast dopasowania słów kluczowych („buty sportowe”), możesz teraz wyszukiwać po znaczeniu – klient wpisuje „coś do biegania w górach” i dostaje trafne produkty bez dopasowania słów kluczowych. Pokazuję jak zintegrować to z Magento 2 przez własny moduł, bez Adobe Commerce SaaS.

(więcej…)

Interpreter w PHP – własna gramatyka reguł rabatowych, parser, drzewo wyrażeń

  • 0
Henryk Tews
wtorek, 17 marca 2026 / Opublikowano w PHP, Wzorce projektowe

Interpreter to wzorzec GoF który pozwala zdefiniować gramatykę dla prostego języka i zbudować interpreter który przetwarza wyrażenia w tym języku. Brzmi akademicko, ale ma bardzo konkretne zastosowania: reguły rabatowe konfigurowane przez operatorów bez zmian kodu, wyrażenia filtrujące produkty, warunki widoczności komponentów w CMS. Buduję od zera mini-interpreter reguł promocyjnych w PHP.

(więcej…)

AI-assisted optymalizacja SQL – LLM + EXPLAIN + Blackfire, 5x przyspieszenie

  • 0
Henryk Tews
wtorek, 03 marca 2026 / Opublikowano w Magento 2, PHP

Przez lata diagnostyka wolnych zapytań SQL w Magento 2 wyglądała tak: slow query log, EXPLAIN, długie wpatrywanie się w plan zapytania. W 2026 mam nową warstwę: wklejam EXPLAIN output i schemat tabeli do LLM i dostaję sensowne sugestie indeksów i przepisania zapytania w kilka sekund. Nie zastępuje rozumienia SQL, ale dramatycznie przyspiesza cykl diagnoza-hipoteza-weryfikacja. Pokazuję workflow na realnym przykładzie z projektu Magento 2.

(więcej…)

Hyvä zaawansowane wzorce – Alpine.js Store, eventy, lazy loading, reużywalne komponenty

  • 0
Henryk Tews
wtorek, 17 lutego 2026 / Opublikowano w Magento 2

Podstawy Hyvä – szablony PHTML z Alpine.js, Tailwind, eventy przez CustomEvent – opisałem w 2024. Po kilku latach wdrożeń mam zebrany zestaw wzorców które powtarzają się w zaawansowanych projektach: kompozycja wielu komponentów Alpine.js, komunikacja między izolowanymi widgetami, lazy loading danych przez Magento REST API i wzorzec store’u dla globalnego stanu koszyka. Pokazuję te wzorce z kodem.

(więcej…)

PHP 9.0 pierwsze RFC – co zostanie usunięte, typed arrays dyskusja, timeline

  • 0
Henryk Tews
wtorek, 03 lutego 2026 / Opublikowano w PHP

PHP 9.0 jest planowane na koniec 2027 lub 2028 – jeszcze dużo czasu, ale RFC proces już się toczy. Pierwsze propozycje trafiły na wiki.php.net i listę internals w Q4 2025. Dla PHP developera który ma duże projekty w produkcji to właśnie teraz jest czas żeby zobaczyć co trzeba będzie zmienić. Przeglądam co jest potwierdzone do usunięcia, co jest dyskutowane i jaka jest ogólna filozofia tej wersji major.

(więcej…)

Service Contracts po 8 latach – antypatterns, SearchCriteria bez limitu, testowanie

  • 0
Henryk Tews
wtorek, 20 stycznia 2026 / Opublikowano w Magento 2

Service Contracts to fundament który odróżnia Magento 2 od poprzedniej wersji. Interfejsy z przestrzeni Api\, repositories, search criteria – w teorii czyste i eleganckie, w praktyce pełne pułapek które widzę regularnie w code review. Przez osiem lat zebrałem zestaw zasad których przestrzegam i antypatternów których unikam. Czas to zebrać w jedno miejsce.

(więcej…)

Trendy 2026 – PHP 8.5 w Magento, PHP 9.0 sygnały, FrankenPHP, AI tooling Q1

  • 0
Henryk Tews
wtorek, 06 stycznia 2026 / Opublikowano w PHP

Nowy rok zaczynam tradycyjnym przeglądem trendów. 2025 był rokiem pipe operatora i konsolidacji Hyvä. 2026 zapowiada się jako rok PHP 8.5 w Magento, pierwszych RFC pod PHP 9.0 i dalszego dojrzewania AI tooling w codziennej pracy developera. Bez przepowiadania przyszłości – tylko to co aktualnie widać w projektach, społeczności i na listach mailingowych php-internals.

(więcej…)

  • 1
  • 2
  • 3
  • 4
  • Publikacje
  • O autorze
  • Kontakt

© 2026 Created by

GÓRA
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 Zawsze aktywne
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.
  • Zarządzaj opcjami
  • Zarządzaj serwisami
  • Zarządzaj {vendor_count} dostawcami
  • Przeczytaj więcej o tych celach
Zobacz preferencje
  • {title}
  • {title}
  • {title}