Note di Matteo


Ottobre 2026

So basically, today PHP got two critical bugs that let anyone run code on your server without even logging in, which is bad, and then the details leaked before the patch was even out, which is worse, and it works on WordPress and MediaWiki and Magento and Joomla and Laravel, and Censys says like 1.5 million servers are running a version with no fix, so the NSA was like "take your system offline," and the FBI was like "take your system offline," and CISA and the UK and CERT-EU were all like "take your system offline," and then the Prime Minister of Japan, the actual Prime Minister, posted at 5:55 in the morning telling 48.8 million people to take their system offline, so everyone took their system offline, like the Dutch cybersecurity agency took its own website offline, and the Dutch parliament went offline, and the Port of Rotterdam went offline, and Finland and France and Denmark started pulling government sites, and Wikipedia went down, and http://Archive.org went down, and Asana and GOG and Something Awful went down, and the University of Vienna's webmail went down for some reason, and that's just PHP. Because GitLab also dropped a CVSS 10.0, which is the highest score they give out, for a bug that's been there since 2014, so that's every self-hosted GitLab for twelve years, and then LiteLLM 1.107.0 got hijacked and shipped a credential stealer and a remote access trojan in every single wheel and the Docker images, including latest, and you didn't even have to import it, just installing it was enough, and it's the second time this year, and then Railway paused every deployment on the entire platform because someone got into the environment variables, so now everyone has to rotate every secret they've ever stored there, and TiDB Cloud said someone was walking around inside with stolen credentials for basically a month and an extortion group says they took 10.6 terabytes, and Zeabur got breached for the second time in two months and is just shutting down, like the whole company, and Node.js patched remote code execution and a TLS bypass, and CISA says Plex is being actively exploited, and someone took over 300 Tor exit relays to steal SSH passwords, and SafePay ransomware has hit over 600 critical infrastructure orgs, and India's biggest bank filed a data loss incident, and Japan has been in an official state of emergency in cyberspace since October 9, which honestly explains the 5:55 AM post. Oh, and eMudhra, a certificate authority that's issued over 60 million certificates, whose entire job is proving websites are who they say they are, was supposed to be using private keys that are random numbers over a hundred digits long, and one of them was 4. Just 4. And the others were like 66 and 237. Anyway, it's Wednesday.

(@fiveoutofnine)

#649 /
22 ottobre 2026
/
09:03
/ #security

Le istituzioni e gli accordi europei in un diagramma di Eulero:

(di Rob Hoeijmakers, da Threads)

#648 /
21 ottobre 2026
/
14:48
/ #dataviz#eu

I think good products carry something of the people who make them. Their experience, what they care about, and how they think things should work. You might not know who those people are, but you can feel their perspective in the product.

Karri Saarinen, CEO di Linear, in Someone behind the software.

#647 /
19 ottobre 2026
/
10:26
/ #ai


JPEG XL vs AVIF for web use-cases. Confronto tra AVIF e JPEG XL con gli encoder attuamente disponibili. AVIF vince quasi sempre per conversione lossy, JPEG XL vince quasi sempre per lossless.

#645 /
17 ottobre 2026
/
10:11
/ #browser

Spaceship

Spaceship (brand secondario di Namecheap) ora vende i domini at cost, senza obbligo di usare i loro servizi o nameserver:

#644 /
16 ottobre 2026
/
14:23
/ #domini


Il tizio che ha installato un registratore in una sala conferenze di OpenAI è stato trovato tramite ChatGPT:

A chatbot account tied to Alfozan’s spouse, which shared identifiers with his own account, submitted prompts between Sept. 24 and Sept. 30 about building, installing, obscuring, and remotely accessing a recording device, prosecutors said. Queries included how to “build a continuous audio recorder” and “encrypt the SD card,” prosecutors claimed. On Sept. 27 and 28, the account asked about the specific device that was later found, including its unique MAC address.

Reminder della inesistente privacy dei chatbot AI, no matter what they say.

#642 /
14 ottobre 2026
/
09:24
/ #ai#privacy


I took a break this summer from paying attention to AI. I thought that when I came back, I'd feel left behind. But when I came back, I realized that nothing has really changed.

There's new models, there's new techniques, there's new agents. But in the end, making great products, increasing revenue, and building the business—it's still hard.

It's clear the tools are getting better, you can do more, you can do it faster. But I think the more important question is: are we actually making better things with these tools? Are our teams getting better with these tools?

I don't think that answer is clearly yes.

There's a lot of emphasis now on toolmaking and using tools and building systems. But I think in the end, as product people, our job is to make something great.

Lenny Rachitsky, CEO di Linear.

#640 /
8 ottobre 2026
/
14:23
/ #ai#business

working at a higher level of abstraction has always required understanding the lower level ones, I don't think coding agents changes this

Thariq Shihipar, engineer @ Anthropic.

#639 /
8 ottobre 2026
/
14:22
/ #ai#dev

the craft of writing software is dead

many people really loved the craft of writing software and realized that the quality of software products was a partial derivative of the quality of the codebase. people would go out of their way to only work for founders who understood this and made this core to their companies. [...]

In this new age of ai agents, I couldn't be more excited that I can build products faster and at a higher quality than I ever could before. [...] everyone has been given superpowers! [...]

on the flip side, it feels dissociative to know that the craft of writing software itself is dead, after spending close to two decades doing it. [...]

I've had my last debate over linting, my last conversation about how many weeks we should spend cleaning up tech debt, my last PR where I wrote every character by hand, and my last bug fix that took hours of reading through thousands of lines manually to find the one line with no tests that broke things.

and so I empathize with the mathematicians who have lost the craft of mathematics that defined their working hours, their passion, and for many, their identities.

yes, most of the work they did, as viewed by outsiders, was a means to an end: to get the solution! but they, like software engineers, have lost part of the craft that felt core to the work.

Ben Williams, founder di Hansel.so.

#638 /
8 ottobre 2026
/
14:21
/ #ai#dev

Building Git infrastructure for agent-scale development. GitHub sta essenzialmente riscrivendo il sistema di storage delle repository git con un'architettura simile a quella di Cursor Origin, che prevede di separare il compute dallo storage. Si sposta quindi la repository in object storage (Azure Blob Storage nel caso di GitHub), si mettono davanti dei worker che svolgono il ruolo di cache in lettura, e un sistema distribuito per coordinare le modifiche.

Il vantaggio è la scalabilità "infinita" (almeno in lettura). Questo sistema sostituirà Spokes, che invece richiede 5 fileserver assegnati a ogni repository (per ridondanza) che servono sia letture e scritture (con 3-phase commit) con grandi limitazioni di prestazioni nel caso di repository molto trafficate.

#637 /
8 ottobre 2026
/
14:16
/ #git#github


Connection-Allowlist

C'è una nuova alternativa più semplice alla Content Security Policy (CSP), ancora sperimentale e per ora un'iniziativa di Chrome essenzialmente. Un esempio (header di risposta HTTP):

Connection-Allowlist: ("https://api.example.com/*" response-origin)

via Web Weekly 200

#635 /
7 ottobre 2026
/
09:46
/ #web-dev

initial-scale

TIL non serve più mettere initial-scale=1.0 nei documenti HTML:

<meta name="viewport" content="width=device-width, initial-scale=1.0">

È un relitto del passato per supportare meglio il cambio orientamento su mobile, ma ora non è più utile.

via Web Weekly 200

#634 /
7 ottobre 2026
/
09:43
/ #web-dev


State of Devs 2026

Dal questionario State of Devs 2026:

  • "AI tools have had a positive impact overall on my mental state" -> il 45% dice no
  • "Which emotions best describe how you currently feel about the tech industry?" -> 52% exhausted

via Web Weekly 200

#632 /
7 ottobre 2026
/
09:35
/ #ai#dev

Stack Overflow Developer Survey 2026

Il developer survey annuale di Stack Overflow registra gli effetti dell'AI sulla qualità del lavoro:

Well, it ain’t what it used to be. This year, we’re finding survey respondents are less happy in their work—the numbers are showing less happy folks and more unhappy ones. All that innovation and uncertainty can make it tough to feel comfortable in your job.

La fiducia negli output dell'AI è ancora fortemente dipendente dalla verifica dell'output ed è maggiore con task piccoli (per fortuna):

#631 /
6 ottobre 2026
/
17:32
/ #ai#dev

SemiAnalysis ha analizzato gli abbonamenti Anthropic vs OpenAI. Quanto valgono per costo API equivalente:

Per quantità di token:

Ovviamente fa differenza se un task richiede più o meno token (OpenAI dice spesso di essere più efficiente) e quale sia il margine sul prezzo API.

#630 /
6 ottobre 2026
/
13:20
/ #ai#anthropic#openai

Domani alle 20:00 l'ICANN pubblicherà la lista di candidature per le nuove gTLD. Sono 1616 (altre 47 non hanno pagato la fee di 227mila dollari in tempo).

#629 /
6 ottobre 2026
/
13:19
/ #domini

The future depends on wisdom that Silicon Valley lacks. Wisdom about how to handle dangerous technology and, more fundamentally, wisdom about what it means to care for people. This moment needs a degree of humility that isn’t natural for people who have succeeded through their extreme confidence.

David Robinson, ex safety @ OpenAI in I Quit OpenAI Because Its Culture Is Broken.

#628 /
5 ottobre 2026
/
14:54
/ #ai

Questa cosa di occuparmi di Ucraina mi rende meno tollerante con le cose che ascolto in Italia. Prima di partire ho sentito un commentatore in tv dire che «dovremmo dare le armi all’Ucraina soltanto se accettasse di trattare». L’implicazione era che quei matti degli ucraini non vogliono negoziare la pace. Non c’era un contraddittorio in studio, quindi questa cosa è stata fatta passare come se fosse verosimile. È soltanto un esempio fra tanti.

Facciamolo qui su Outpost il contraddittorio. L’Ucraina soltanto quest’anno ha proposto alla Russia cinque cessate il fuoco: a marzo, aprile, maggio, giugno e settembre. Quattro sono stati respinti, l’unico che è stato accolto dai russi è stato quando c’erano gli inviati di Trump a Kyiv e valeva solo per Kyiv (del resto sarebbe stato imbarazzante se i russi avessero dronato per errore il genero di Donald Trump). Inoltre nel 2026 gli ucraini hanno proposto, di nuovo per cinque volte, un incontro in campo neutro tra il presidente Zelensky e Putin. Anche queste proposte sono state ignorate.

Mentre sto scrivendo queste righe un drone russo ha colpito una scuola a Kyiv, età degli studenti dai 7 ai 18 anni. Non si è fatto male nessuno perché tutti erano scesi con gli insegnanti nel rifugio. Guardo il video: il drone ha centrato la facciata della scuola. Dal punto di vista militare un bombardamento così non ha alcun senso. Persino i russi sanno che se ammazzano decine di bambini ucraini mentre sono nelle loro classi in un mattino chiaro di settembre non ottengono nulla se non reazioni inferocite. Ma anche se avessero colpito quella scuola per sbaglio, è ovvio che accettano senza farsi troppi problemi il rischio di far saltare in aria edifici pieni di civili.

Ieri, mercoledì 30 settembre, hanno lanciato contro le città ucraine 473 droni, ciascuno con la sua bella testata esplosiva da novanta chilogrammi.

Ho chiuso il paragrafo e sento un grosso botto, un missile della contraerea ucraina ha fatto esplodere in cielo un drone russo che stava attaccando la centrale termica Tets-5. Vabbè, ci siamo capiti, l’andazzo è questo.

Daniele Raineri in Outpost, dall'Ucraina.

#627 /
1 ottobre 2026
/
22:30
/ #mondo

Mi state dicendo che dipende da me? Mi state dicendo che se muoio è colpa mia? È perché non ho combattuto abbastanza, mi sono arresa? Ma a cosa, di grazia, mi sarei arresa? Alle mie cellule, al mio corpo, a me stessa? Come faccio a combattere contro me stessa? Che razza di guerra sarebbe quella di una persona contro una malattia potenzialmente mortale? Io, a mani nude, contro un cancro? Contro una malattia autoimmune, un virus letale? Io contro il morso di un serpente? Servirà un antidoto, contro il morso di un serpente, o no?

Pensate che il vaiolo sia stato debellato dalla forza del pensiero dei malati di vaiolo? Che si siano messi in cerchio e concentrati moltissimo? Che abbiano cantato una nenia apotropaica? Pensate che i bambini che morivano di polmonite o di un’infezione quando non esistevano gli antibiotici, quelli che a migliaia muoiono ancora oggi dove gli antibiotici non ci sono — nei Paesi poveri, nei Paesi in guerra, sotto embargo — muoiano perché non combattono abbastanza?

Cioè: chi muore è stato scarso in battaglia? I migliori vivono, i peggiori muoiono? Ma veramente? Non avete dunque mai visto nessuno affrontare una malattia? Perché questo si fa con le malattie: si affrontano. Ci si affida a chi sa cosa bisogna fare e lo si fa.

Dove si è perso, il bandolo di questo ragionamento elementare, mi domando. Quando è che abbiamo smesso di credere che a combattere le malattie sono i medici, la medicina, i farmaci, benissimo anche quelli alternativi se funzionano purché funzionino. Favolose le erbe o l’ipnosi, se bastano, ma quando non bastano servono penicillina e cortisone. Serve un intervento chirurgico e qualcuno che lo sappia fare. Serve un trapianto, se un organo non funziona più. Non combatti contro il tuo rene. Non stai in trincea contro il tuo pancreas.

L’unica battaglia da fare è una battaglia collettiva, non individuale: è la battaglia per pretendere che siano investite le massime risorse in ricerca scientifica. Che i ricercatori siano pagati dignitosamente, assunti e non graziati per decenni con borse di studio da poche centinaia di euro, che siano messi in condizione di lavorare in questo Paese e non di espatriare.

La battaglia da fare, non da soli ma tutti insieme, è quella per la sanità pubblica: che ci siano i soldi, quanti ne servono e non sempre meno, ogni anno di meno. Che ci siano abbastanza infermieri e operatori sanitari e locali e macchinari per rispondere al bisogno di tutti. Che non sia per i ricchi, la salute. Questa è la battaglia. È una battaglia politica che dovrebbe chiamare alla rivolta di popolo, ma invece.

Concita de Gregorio in Altro che guerrieri, quella per la salute è una battaglia collettiva, su la Repubblica.

#626 /
1 ottobre 2026
/
21:00