Note di Matteo


17 marzo 2026


Pulp.info e DMARC

Davide Marra di Pulp Podcast dice che non gli hanno risposto alle email di invito:

Il dominio mittente pulp.info ha le email in hosting su Google Workspace:

❯ dig pulp.info MX +short
5 alt1.aspmx.l.google.com.
1 aspmx.l.google.com.
5 alt2.aspmx.l.google.com.
10 alt4.aspmx.l.google.com.
10 alt3.aspmx.l.google.com.

Per cui dovrebbe esserci un record SPF per autorizzare Google Workspace a inviare email da quel dominio:

❯ dig pulp.info TXT +short
"v=spf1 include:spf.webapps.net ~all"
"google-site-verification=EYlW2K4aQg6ksmXcCNCcFMUN85ebneJDbSW8NhJRXbs"

Ma in realtà il record autorizza solo spf.webapps.net, che fa capo a Register.it, dove il dominio è registrato.

Vediamo se almeno c'è una firma DKIM personalizzata, che salverebbe la situazione nell'ambito dell'allineamento DMARC. Il selettore proposto di default da Google nella admin console è google, quindi cerchiamo il relativo record DNS che dovrebbe contenere la chiave pubblica DKIM:

❯ dig google._domainkey.pulp.info TXT
; <<>> DiG 9.20.20 <<>> google._domainkey.pulp.info TXT
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 45823
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
[...]

Non c'è (NXDOMAIN). Vediamo se c'è comunque DMARC:

❯ dig _dmarc.pulp.info TXT
; <<>> DiG 9.20.20 <<>> _dmarc.pulp.info TXT
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 13037
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
[...]

Non c'è. Beh, forse l'email è finita in spam... :)

#386 /
17:41
/ #email

16 marzo 2026

DNS-PERSIST-01: A New Model for DNS-based Challenge Validation. C'è un nuovo tipo di challenge di autorizzazione nel protocollo ACME per l'emissione e rinnovo dei certificati TLS. Permette di verificare la proprietà di un dominio con un record DNS persistente, da impostare una volta con validità infinita. Normalmente si usa un record TXT _acme-challenge con un token con validità associata all'ordine del certificato. Il nuovo metodo dns-persist-01 permette invece di autorizzare uno specifico account ACME, opzionalmente con una data di scadenza:

_validation-persist.example.com. IN TXT (
  "letsencrypt.org;"
  " accounturi=https://acme-v02.api.letsencrypt.org/acme/acct/1234567890"
)
#385 /
15:07
/ #security

15 marzo 2026

Alexa mi manda una notifica su Amazon Echo, che dice: "c'è un articolo in offerta nel tuo carro".

(altro capolavoro di Amazon parte 3)

#384 /
10:14
/ #amazon

14 marzo 2026

Altro capolavoro di Amazon: «in caso di sovraccarico delle feci»

#383 /
21:02
/ #amazon

13 marzo 2026


L'esperimento di rilancio di Digg è stato sospeso dopo due mesi. La morte di Internet.

When the Digg beta launched, we immediately noticed posts from SEO spammers noting that Digg still carried meaningful Google link authority. Within hours, we got a taste of what we'd only heard rumors about. The internet is now populated, in meaningful part, by sophisticated AI agents and automated accounts. We knew bots were part of the landscape, but we didn't appreciate the scale, sophistication, or speed at which they'd find us. We banned tens of thousands of accounts. We deployed internal tooling and industry-standard external vendors. None of it was enough. When you can't trust that the votes, the comments, and the engagement you're seeing are real, you've lost the foundation a community platform is built on.

This isn't just a Digg problem. It's an internet problem. But it hit us harder because trust is the product.

#381 /
23:07
/ #internet


Claude Code riscrive chardet ("Python character encoding detector") con prestazioni 48 volte superiori alla versione precedente. La licenza open source cambia da LGPL a MIT perché è un rewrite totale. È un lavoro indipendente oppure un lavoro derivato? La questione si ripresenterà sempre più spesso.

Last week, Dan Blanchard, the maintainer of chardet—a Python library for detecting text encodings used by roughly 130 million projects a month—released a new version. Version 7.0 is 48 times faster than its predecessor, supports multiple cores, and was redesigned from the ground up. Anthropic's Claude is listed as a contributor. The license changed from LGPL to MIT.

Blanchard's account is that he never looked at the existing source code directly. He fed only the API and the test suite to Claude and asked it to reimplement the library from scratch. The resulting code shares less than 1.3% similarity with any prior version, as measured by JPlag. His conclusion: this is an independent new work, and he is under no obligation to carry forward the LGPL.


12 marzo 2026

Ho sempre rifiutato la retorica della battaglia, della lotta, della guerra contro la malattia, qualsiasi essa sia. Per un motivo molto semplice. Prima o poi, come nel mio caso, si perde. La retorica della lotta implica, tra le possibilità, che chi perde non ha lottato abbastanza. Il solo pensiero mi sembra offensivo e non lo voglio neanche discutere.

Luca Conti (1975-2026)

#378 /
13:30

11 marzo 2026

Humans create the need for systems. Models excel with context, but humans define evolution.

Shao-Qian Mah, ricercatore OpenAI nel team Codex, da How Codex is built (The Pragmatic Engineer)

#377 /
21:07
/ #ai

Ecco con grande ritardo la timeline del "bando" per l'assegnazione delle nuove gTLD. L'ultima volta era successo nel 2012.

  • Dal 30 aprile al 12 agosto si potranno presentare le candidature, la relativa documentazione e il pagamento di 227mila dollari per la TLD proposta.
  • La lista sarà resa pubblica probabilmente prima di ICANN 87 (17 ottobre).
  • Per 14 giorni dal Reveal Day le candidature potranno essere modificate sostituendo TLD con TLD di riserva pre-comunicate nel caso in cui si voglia evitare di competere con altre candidature.
  • Intorno a febbraio 2027 terminerà poi il periodo per le obiezioni.

Da lì in poi non ho capito bene ma ci sono altri passaggi per risolvere le contese, che possono durare anche molti anni. Tutt'ora alcune gTLD del 2012 non sono state formalmente assegnate.

#376 /
14:47
/ #domini

❯ dig ospedaleniguarda.it NS +short
blasco.ospedaleniguarda.it.
vasco.ospedaleniguarda.it.
dns2.fastweb.it.

LOL. Blasco e Vasco.

#375 /
11:26
/ #dns

10 marzo 2026

Un mio commento sul Post in risposta all'articolo Per le intelligenze artificiali i PDF sono un problema, che si basa sul nulla:

L'articolo solleva il problema sbagliato. L'OCR serve solo se il contenuto è stato rasterizzato o è frutto di scansione, che non è la normalità (fuori dalla PA italiana almeno).

Il formato PDF resta però comunque problematico perché non contiene concetti come "paragrafo di testo", "pié di pagina" o "tabella" ed è quindi molto difficile associare le singole parole/righe di testo (solitamente leggibili senza OCR) al flusso della pagina. In casi complessi come pagine a più colonne servono una miriade di euristiche per provare a ricostruire il testo correttamente, perché non c'è legame tra gli elementi.

Non è un problema risolvibile al 100% ma è comunque in gran parte superato e negli ultimi 3 anni è spuntata diversa ricerca e molti nuovi strumenti anche open source per attaccare il problema.

Detto questo, del presunto "obiettivo di lungo termine" di sostituire il formato PDF sinceramente non trovo traccia e non ne ho mai sentito parlare pur avendo realizzato sistemi AI che ingeriscono PDF. A prova della tesi l'articolo menziona solo questa startup israeliana completamente sconosciuta nel settore, il cui sito sembra indicare che sia semplicemente una piattaforma cloud (a cui non ci si può nemmeno iscrivere), più che un formato di file. Di cosa stiamo parlando?


Ente Paste è un servizio di condivisione di testo end-to-end encrypted. Il destinatario può vedere il testo decriptato solo una volta ed entro 24 ore. Utile per condividere chiavi segrete, ecc.

L'URL condivisibile (es. https://paste.ente.io/QTPD2AV2QE#3xLlEBKwnlCZ) contiene l'ID del paste (QTPD2AV2QE) e la chiave (3xLlEBKwnlCZ) per decifrare il testo. Il server non vede la chiave perché è un hash fragment/anchor: tutto quello che viene dopo il cancelletto non viene mai inviato al server dai browser.

Una volta aperta la pagina il testo cifrato viene eliminato dal server:

#373 /
20:14

8 marzo 2026

C'è un bug in Claude Desktop legato agli scheduled task (nuova feature appena lanciata) che manda il codice in loop infinito:

Users with scheduled tasks in Claude Cowork or Claude Code who are in a timezone that observed daylight saving time last night were affected by an infinite loop. When the app tried to locate tasks scheduled during the “skipped” hour, it couldn’t resolve them and got stuck.

Ho l'istinto di dire che è proprio un bug da vibe coding, ma in realtà lavorare con le date e i fusi orari è fonte di numerosi bug da quando la programmazione esiste.

#372 /
23:37
/ #ai#claude

The third era of AI software development

Un grafico di Cursor sull'uso degli agenti AI in confronto alla funzione Tab (che mi viene da chiamare "vecchia", eppure esiste da meno di 4 anni) nello sviluppo di software:

A conferma della recente percezione che tra l'autunno e l'inverno 2025/2026 c'è stato un (incredibile) cambio di passo nello sviluppo software con l'AI.

#371 /
23:24
/ #ai

You are responsible for where you choose to run your workloads. AWS will give you Availability Zones. They will give you Regions. They will even give you cross-region replication. What they will not give you is a missile defense system. That's not in the pricing calculator.

Multi-AZ is designed to survive a power failure or a network partition. It is not designed to survive a geopolitical crisis. These are not the same failure mode.

Corey Quinn (da LinkedIn via The Pragmatic Engineer)

#370 /
23:21

Non vi farei riscrivere la Costituzione neanche se foste bravi (ma non lo siete)

Quindi la questione è molto semplice: il governo Meloni mi ha chiesto un favore, e io al governo Meloni rispondo NO.

Senza entrare nel merito della questione?

No, perché dovrei? Non me ne intendo. (Dopodiché sì, mi conoscete, probabilmente nei prossimi 15 giorni entrerò nel merito della questione, non riuscirò a farne a meno). Ma non sono obbligato a diventare un esperto di carriere e di alte corti. Non è quello che si chiede a me come cittadino. Mi si chiede un atto di fiducia nei confronti di una maggioranza di governo, ora per favore guardatela.

Leonardo Tondelli in Non vi farei riscrivere la Costituzione neanche se foste bravi (ma non lo siete)

#369 /
23:18
/ #italia

6 marzo 2026

FFmpeg at Meta: Media Processing at Scale. Meta spiega come usa FFmpeg per l'elaborazione di più di un 1 miliardo di video al giorno, e di come hanno smesso di usare un fork interno dopo aver integrato l'encoding parallelo e la generazione di metriche real-time (in-loop decoder) nella versione open source. Meta mantiene comunque delle patch per il supporto agli encoder hardware ASIC proprietari, ma restando in sync con ffmpeg open source.

#368 /
21:20
/ #meta#video