Mark Shust (@MarkShust) header
Mark Shust (@MarkShust) profile picture

I explain how PHP + Magento actually work under the hood, after 25+ years of shipping code. I simplify the complex.

Cleveland, OH
Joined June 2008
Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)Photo by Mark Shust (@MarkShust)
If you patched PHP yesterday, you're not done yet 🚨 php2shell started with an error every PHP dev has seen a thousand times: "Allowed memory size of 134217728 bytes exhausted" Here's what actually went wrong, and what the update didn't fix 👇
8
27
2
238
95,634
You deployed, flushed the Magento cache, and the OLD code is still running 😵‍💫 That's because the cache actually running your PHP isn't a Magento cache, and cache:flush never touches it. Here's what's really going on 👇
1
1
265
Do this after every production deploy: - reload PHP-FPM after the code lands - symlink deploys: pass $realpath_root as SCRIPT_FILENAME in nginx - check OPcache settings from a web request, not php -i - then run bin/magento cache:flush, you need both cleared
1
48
Love this quote: "The best thing a human being can do is to help another human being know more." -- Charlie Munger
4
251
It’s very clear to me that programmers/developers that want to stay in this field will need to become systems engineers. It’s architectural judgement, process, orchestration, and documentation all the way down.
1
1
4
358
I’ve honestly been really struggling with determining what to teach moving forward, as the “writing code aspect” is now largely solved. But I’m starting to gain clarity on the areas that devs could really struggle with when it comes to shipping code within an automated pipeline.
48
I built an app that automatically creates on-brand YouTube videos from raw, unedited clips. Here's a video that was created from a raw 65 min 40GB video file. I uploaded a cam video, a screencast video, and an audio file -- and this is what came out the other end w/ZERO edits:
1
1
5
711
The app also automatically makes shorts from long-form videos, and natively formatted (not just cropped-down long-forms). Here's one (it generated 5, of which 3 were very good): nitter.gq/MarkShust/status/21150…
Marko is now FASTER than Laravel 🚀 A well-known Magento + PHP dev ported their Laravel 13 app to Marko, then benchmarked both: - 1.2-1.3x more req/s - ~2/3 the CPU per req - half the memory - 6x faster CLI start On 0.8.5 it was 2x slower. Now they're moving their site over.
1
47
Here's the original YouTube video btw, which took me 6+ hours to edit. I think the automatically-edited one is objectively better: youtube.com/watch?v=P_1TtSBQ…
47
Marko is now FASTER than Laravel 🚀 A well-known Magento + PHP dev ported their Laravel 13 app to Marko, then benchmarked both: - 1.2-1.3x more req/s - ~2/3 the CPU per req - half the memory - 6x faster CLI start On 0.8.5 it was 2x slower. Now they're moving their site over.
2
1
1
5
860
If you looked at Marko back in April and moved on, it's time for another look. Docs: shu.st/zkbhbU Repo: shu.st/LLbE25
82
Join 11,000+ PHP + Magento devs before tomorrow morning to get: - how php2shell actually broke PHP (no C required) - the fix step most devs skipped after patching - what to hunt for once you've patched 🥷 Get the newsletter at macade.my/dHEPH7
2
268
Anyone interested in utilizing Cloudflare tunnels for your dev projects? You don’t need Tailscale, Ngrok, etc. and can gain more flexibility -- and it’s cheaper (~free).
2
1
328
Enjoy the weekend devs, ...it's time to relax!
1
314
Patched PHP this week? Great. That closes the door... but it doesn't kick out anyone who already got in 🥷 If your server was public and unpatched, here's how worried to be and what to rotate 👇
5
3
40
13,453
I write a newsletter about how PHP and Magento ACTUALLY WORK, simplified to its core. Releases, security alerts, something explained under the hood, plus a take of my own. Get it at: macade.my/ScNkuR
1
1
976
Missed the first part? Here's what php2shell actually broke, and the hardening steps to do first 👇 nitter.gq/MarkShust/status/21132…
If you patched PHP yesterday, you're not done yet 🚨 php2shell started with an error every PHP dev has seen a thousand times: "Allowed memory size of 134217728 bytes exhausted" Here's what actually went wrong, and what the update didn't fix 👇
518