๐Ÿ‡ต๐Ÿ‡ฑ https://xitter.cf/t.co/HerX32NWvo ๐Ÿ‡ฌ๐Ÿ‡ง https://xitter.cf/t.co/m6h4mNhOBh | Self-educated specialist: PHP, CI/CD, QA automation, Docker, Gitlab and more ๐Ÿ˜Ž. Member of @PHPCSFixer team ๐Ÿชถ.

Joined April 2022
I am excited to announce that I joined @usoftware_ as a Senior Software Engineer and will provide services for @Printify in a Developer Enablement team ๐Ÿคฉ! Looking forward for this new, great adventure - wish me luck ๐Ÿคžโ˜บ๏ธ. blog.codito.dev/2025/07/prinโ€ฆ
9
1
1
25
1,773
Greg Korba ๐Ÿ› ๏ธ๐Ÿ›น Codito retweeted
Lot of #PHP snark going around right now from folks who've either never written software, or never done it in PHP (in the last 20 years). I've architected, designed and hand-coded copious amounts of software in Java/Spring/Hibernate, .Net/C# Entity Framework and PHP/Symfony/Doctrine, applying very similar patterns and better practices of completely stack-agnostic concepts such as: - Test-Driven Development (and given half-day and full-day hands-on live-coding workshops at conferences worldwide) - Onion/Hexagonal Architecture - Domain-Driven Design - Data Mapper ORMs Beyond workshops, I have spoken on these topics at conferences worldwide as well. I might argue that I am not completely devoid of clue when it comes to these stacks' capabilities. In fact, I have hired, coached and cross-trained engineers across these 3 stacks. And I can assure you PHP shines within these paradigms, with an extremely vibrant, mature and robust ecosystem of Application Frameworks, Security Frameworks and Tools, and Open-Source Software Components and Libraries. PHP is not WordPress. WordPress is not PHP. If you care about quality software, PHP is a great home for you. So is Java. So is C#. So are other languages. If you suck at software you'll suck in any stack. If you're good, each stack has strengths you can play to. NOW let's talk about security. This vulnerability, is the very first RCE to this level in PHP's history. It was reported back in August. AI did help. A lot. (Wiz claims one researcher did in a week what would previously have taken a team months) Previous PHP RCEs had limited attack surfaces: - 2024 - Windows CGI Only - 2019 - One specific nginx setup - 2012 - CGI only None of which applied to reasonably-better practice typical Linux + Nginx + php-fpm deployments. This right here was ... unique, I think even across any stack. The only language-runtime equivalent to it was probably Windows IIS Code Red. That's not to say other stacks didn't have framework-level vulnerabilities with devastating impacts, if memory needs refreshed: Ruby โ€” Rails CVE-2013-0156: every Rails app, default config, pre-controller, botnet-exploited. The strongest analogue in any stack. Java โ€” Struts 2 CVE-2017-5638 (Equifax). Log4Shell needed the app to log attacker input; Spring4Shell needed WAR-on-Tomcat + JDK 9+ + POJO binding. Node โ€” React2Shell CVE-2025-55182 (Dec 2025, CVSS 10, CISA KEV): default create-next-app exploitable, but Express/Fastify/Nest untouched. .NET โ€” MS10-070 padding oracle (2010) leaked web.config/machineKey on every ASP (dot NET) site; RCE was a derived second step. Kestrel/ASP.NET Core has never had an RCE. Look ... let's drop the snark. LLM-driven vulnerability research and breaching frameworks are about to humble the absolute heck out of all of us. They already have. If you think your stack is not at risk, think again.
45
83
16
383
23,489
Greg Korba ๐Ÿ› ๏ธ๐Ÿ›น Codito retweeted
If all the govs shutting down servers for a PHP update, all the hosters & enterprises terrified by the vuln, gave $100k, or just $50k a year to the PHP Foundation, things could look very differently. Go, make your employer sponsor *today* thephp.foundation/sponsor/ #php #phpc @ThePHPF
2
113
9
226
13,460
Probably the absolutely worst part of required checks in @github is inconsistency in what UI displays & what jobs' names actually look like... It depends on whether job comes from local, raw workflow or from reusable one, so you either have "<workflow> / <job>" or just "<job>".
I just hate @github approach for required checks (configured in settings). Conditional checks is one thing, but for repositories managed with #IaaC (#Terraform) this leads to code split, as required checks have to be defined outside of the repo where they run. Easy to forget.
1
134
Combine this with IaaC, and you need to go through "PR โ†’ Atlantis plan โ†’ approval โ†’ Atlantis apply" workflow multiple times, because you can verify whether it works only when Terraform changes are applied. What an awful experience ๐Ÿ™„.
1
41
Great discussion and problem/advantage storming about teaching juniors in AI times with @ziobrando at @KanDDDinsky ๐Ÿ˜Š. A lot of interesting thoughts!
1
110
I proposed discussion about Code Quality in AI-driven development at @KanDDDinsky's OpenSpace (unconference). Meet me at Einstein II room at 12:15 and share your thoughts ๐Ÿ˜Š.
1
115
Greg Korba ๐Ÿ› ๏ธ๐Ÿ›น Codito retweeted
That's exactly what you are doing when you are agent-maxxing, but also paying zero actual attention to any of it ๐Ÿคท
Word of the Day: MULTIPASKING (Finnish) - doing many things at the same time, all badly; โ€˜paskaโ€™ is Finnish for โ€˜shitโ€™.
1
2
128
For next 3 days I am at Berlin, attending @KanDDDinsky conference. If you're also here and would like to talk, reach me out ๐Ÿ˜Š. Happy learning! โ€“ at Berlin, Germany
2
120
I was today's years old when I found out that `shivammathur/setup-php` action did not have Release Immutability enabled - not anymore! Starting from next release, immutability will be there, so pinning action by tag won't be prone to malicious attacks ๐Ÿ˜Š. github.com/shivammathur/setuโ€ฆ
2
166
I was today years old when I found out that Psalm defaults to 1(!!) CPU when it detects CI environment ๐Ÿคฏ. Basically, if you run it on Github Actions, you have to opt-in for parallelism and reduce analysis time. It's such a waste of everyone's time! github.com/vimeo/psalm/issueโ€ฆ
1
1
259
I am going to @KanDDDinsky in Berlin for the first time this year. Who will I be able to meet there ๐Ÿ‘€?
1
140
Don't much time for learning recently, but I at least maintain the streak. Huge milestone!
1
146
Piฤ™kny start sezonu, ale najwaลผniejsze jest bym taki widok ujrzaล‚ po 34 kolejce ๐Ÿ˜! To byล‚oby coล› wspaniaล‚ego... ๐Ÿคž @GornikZabrzeSSA @Podolski10
80
I am wondering why this really nice #GitHub feature is available only for Copilot's review comments, not for regular users' comments ๐Ÿค”. I really like it, it provides meaningful feedback.
1
150
Who said code review can't be fun too ๐Ÿ˜†?
6
258
Is it only me, or the need to explicitly run `brew update` before `brew upgrade ...` is an awful DX? For example, I work with `gh` tool and I see there's a new version of it, so I run Brew upgrade, and I end up with the same version... only to call update and upgrade again ๐Ÿ™„.
1
1
194
Nothing is impossible! We spent 2 weeks on travelling across the Europe by car (6500km!), visited 6 countries, saw many beautiful places, had a lot of fun and collected lifelong memories ๐Ÿฅฐ. It was tough, we came back exhausted, but it was totally worth it ๐Ÿ˜. #vacation #eurotrip
6
494
Has anyone worked with Stacked Pull Requests in Github already ๐Ÿค”? I mean the native feature (now in public beta). This is something that I've been using for years, handled manually (`rebase --onto` FTW), and I am curious what is the DX with GH's feature. docs.github.com/en/pull-requโ€ฆ
1
158
Done with Claude's help, reviewed by Claude, but the "meat" is purely my experience ๐Ÿ’ช๐Ÿ….
3
263
Hello Rฤซga, my old friend โค๏ธ! This year the weather is soooooooo nice ๐Ÿ˜. It's my last day here, tomorrow I fly back to Poland, so I am going to enjoy #FYUL's summer event to the fullest this evening!
1
2
255
But the go-karts were probably even better as we went all-in with my Polish friends ๐Ÿ˜…. I started at 3rd position and finished 1st, overtaking my friends once, and other drivers several times ๐Ÿฅฐ๐Ÿ˜. Leading the race is really demanding, my friend sat on my tail all the time ๐Ÿซจ.
1
55
Goodbye Rฤซga ๐Ÿฅฒ! See you next time โค๏ธ.
36