
Follower of Jesus. Python tools developer at @Microsoft and core CPython developer. Australian living in Scotland. My own opinions only
Scotland, UK
Joined July 2007
- Tweets21.9K
- Following698
- Followers3K
- Likes17.1K
Pinned Tweet
Not that I need or deserve it more than anyone else, but if you've ever wanted to send me money, now you can!
github.com/sponsors/zooba
As long as I'm employed, I'll likely pass along any sponsorship to those who need it more.
I had some fun writing it though. Worth reading 😁
"Ofcom's response... is to expand the law."
The slope is showing its slipperiness much quicker than I expected. Are they afraid they're going to lose their supportive MPs at the next election or something?
Steve Dower retweeted
Some stats on #php2shell. In the 10 hours before it was publicly announced, across the @Cloudflare network we saw thousands of attempts to exploit it. That jumped to tens of thousands in the 45 minutes post announcement, hundreds of thousands within 2 hours, and millions now.
"Can hackers actually get in?"
Security:
"Potentially yes."
CEO:
"Without a password?"
Security:
"Yes."
CEO:
"Then why do WE need passwords?"
😂😂😂
Security called me at 6:12 AM today.
"Patch every PHP server immediately."
I asked what happened.
"Two critical vulnerabilities. Remote code execution. No authentication required."
Cool.
How many PHP servers do we have?
According to inventory: 12
According to reality:
Nobody knows.
We found one running WordPress.
Three running old internal tools.
One under someone's desk.
Two inside vendor appliances.
A forgotten employee directory from 2016.
And a server named:
PHP-OLD-DO-NOT-TOUCH
Naturally, that one runs payroll exports.
Then we found a PHP 5.6 box.
I asked who owned it.
The documentation said:
BRIAN.
Brian left in 2019.
We called Brian.
He said:
"Oh wow, that's still running?"
Excellent.
By 8 AM, leadership joined the incident call.
CEO:
"Can hackers actually get in?"
Security:
"Potentially yes."
CEO:
"Without a password?"
Security:
"Yes."
CEO:
"Then why do WE need passwords?"
Not the lesson.
Finance asked if we could wait until the weekend to patch because downtime affects revenue.
Security explained that the alternative was letting strangers execute code on our servers.
Finance asked for a cost comparison.
At 9:17, someone suggested temporarily taking the vulnerable websites offline.
Marketing refused.
"Our campaign is live."
So for the next hour, the company officially decided maintaining a landing page for 20% off webinar registration was more important than preventing remote server takeover.
We finally patched everything we could find.
Then our scanner discovered another PHP server.
Hostname:
TEMP-PHP-2014
Uptime:
4,512 days.
Nobody knows what it does.
Nobody owns it.
Nobody can shut it down.
But every time we block network access, the warehouse stops printing shipping labels.
Security has classified it as critical infrastructure.
It is running PHP 5.4.
The vulnerability has existed longer than half our employees.
The emergency patch took four hours.
Finding out what PHP actually runs took eleven.
The internet isn't held together with code.
It's held together with servers everyone is afraid to turn off.
Steve Dower retweeted
Oh, you aren’t updating your dependencies every hour? Well, too bad, you are vulnerable
Oh, you are updating your dependencies every hour? Well, too bad, you are somehow also vulnerable
Steve Dower retweeted
Remember all that shit @OpenAI and @AnthropicAI got on HN etc. for switching to httpx2 which used OS certificates, instead of bundling them...
Now looks like a very prescient decision from @marcelotryle to make the change in httpx2, and the labs etc. for adopting it.
Steve Dower retweeted
Ofcom Concedes Defeat in the 4chan Case
prestonbyrne.com/2026/10/20/…
Oh how nice, the students have booked out the entire Louvre for an educational excursion.
Oh, did they leave out some context and let me misunderstand their post? Surely not...
Watching this makes you liable to pay the TV license in the UK, by the way.
Stick to delayed repeats.
📺 Big news! @BBCNews is now streaming live on YouTube in the UK and U.S.
YouTube is the home for high-quality, trusted news: in the first half of 2026 alone, viewers watched over 18 billion hours of news content on the platform. By using @YouTube's live tools, iconic broadcasters like the BBC can build deep, authentic rapport, bringing global communities together to learn, discuss, and follow history as it happens.
Readers added context they thought people might want to know
This comes as part of a wider move to expand the license fee charter. An upcoming government white paper will recommend Britons be forced to fund the BBC if they use YouTube, Netflix, Amazon or Disney Plus
independent.co.uk/news/uk/politi…
Steve Dower retweeted
PowerToys worthy? Dev Storage Manager - currently a prototype. What is taking space, make a dev drive in 2 clicks, benchmark builds, move caches, ...
Would love thoughts.
Stressing POC, UX is still a mess but scans my computer in ~4 seconds with over 1.4 million files
Steve Dower retweeted
Wait until they hear about UK Government interference.
Andy Burnham becomes first PM to confirm Russian interference in Brexit referendum
@campbellclaret and @RoryStewartUK's exclusive interview with @andyburnham on tomorrow's episode of Leading is out in full at midnight.
It seemed like the X algorithm got an update, a lot of smaller accounts making it into my feed with more positive comments.
Turns out a massive bot farm was taken out at the same time. Coincidence?
Steve Dower retweeted
Python 3.15.0 was just released!
To celebrate, I'm doing 15 days of Python 3.15.
Each week day, I'll write about a new Python 3.15 feature.
We'll cover lazy imports, the new built-ins, the DX improvements, some new stdlib niceties, and MUCH more.
I'll collect my posts here 👇
Steve Dower retweeted
Python 3.15 is out! 🐍🎉
A few of my favorite new features:
• UTF-8 default encoding on Windows (boring but big)
• profiling.sampling!
• lazy import json
• [*x for x in nested]
• sentinel()
• frozendict
• pprint(data, expand=True)
More 👇
youtu.be/OD0QObnCZmA
































