A new module version deployed to production caused a 500 error across the whole shop. DI compilation ended with an error about a missing interface. The problem was a constructor signature change without updating di.xml. Fix time: 1 hour.
Customers were losing their cart contents and getting logged out randomly during shopping. The problem intensified on weekends with high traffic. Fix time: 2 hours.
Xdebug 3 changed the configuration approach – instead of many directives, one option xdebug.mode controls all behaviour. Combining Xdebug 3, DDEV and PHPStorm gives a complete environment: step debugger with breakpoints, a profiler generating cachegrind files, and coverage reports for PHPUnit. I show the configuration from scratch and how to analyse profiler results in PHPStorm and QCacheGrind.
Custom forms in the shop stopped working after a Magento update. “Invalid Form Key” error in logs. Custom AJAX endpoints threw CSRF exceptions on every request. Fix time: 2 hours.
Store implementation is a one-time cost. Maintenance is an ongoing cost – and one of the most frequently overlooked in e-commerce budget planning. Business owners who focus exclusively on implementation cost are often surprised by what appears on invoices in subsequent years.
The admin panel timed out when trying to open the orders list. 30-second timeout. The database contained 500,000 orders accumulated over 5 years. Fix time: 3 hours.
This is one of the harder questions in e-commerce: an existing store is not working as it should. It is slow, hard to manage, does not integrate well with systems. Is it better to rewrite from scratch or refactor? Both options have their advocates and both can be the right answer – depending on context.
A B2B shop was charging 23% VAT to customers from Germany and France who provided EU VAT numbers. Under the reverse charge principle, VAT should be 0% for EU businesses with a VAT number. The problem generated customer complaints and tax risk. Fix time: 8 hours.
After moving the shop to HTTPS, product images and CSS stylesheets stopped loading in Chrome. The console showed hundreds of Mixed Content errors. The shop looked broken. Fix time: 1 hour.
Dijkstra’s algorithm is a classic shortest path algorithm for weighted graphs with non-negative weights. It runs in O((V + E) log V) with a priority queue, where V is the number of vertices and E the number of edges. Practical applications include routing, GPS navigation, recommendation systems and network optimisation. I show a PHP implementation with a priority queue and two real usage examples.
