2026-03-25

Programmare senza limiti… o senza capire?

Cosa succederebbe se fossimo costretti a far funzionare il codice con metà della memoria, rendendolo due volte più veloce e riducendone ad un decimo il traffico di rete?

La prima reazione sarebbe probabilmente il panico. Poi, però, inizierebbe la parte interessante: cominceremmo a guardare il programma con occhi diversi, a mettere in discussione aspetti prima scontati e ad indagare gli angoli più nascosti del sistema. Raggiungere tutti gli obiettivi prefissati potrebbe risultare impossibile, ma sarebbe comunque sorprendente constatare quanto potenziale fosse rimasto inutilizzato.

Le persone che scrissero i primi videogiochi ed i primi sistemi operativi vivevano sotto questo tipo di pressione ogni singolo giorno. L'hardware non lasciava loro alcun margine per essere vaghi su come funzionasse qualcosa, così svilupparono una relazione estremamente intima con il loro mezzo. Da quella relazione nacquero alcuni dei software più geniali mai scritti. Proprio grazie alla "difficoltà".

Noi abbiamo ereditato macchine molto più veloci e memoria più economica, questo è ovviamente un bene. Eppure da qualche parte lungo la strada abbiamo smesso di porci quelle domande scomode. Credo che ci sia qualcosa di prezioso da recuperare in quell'atteggiamento.

Forse oggi siamo ad un nuovo punto di svolta. Con l'arrivo dei grandi modelli linguistici, programmare sta diventando sempre più assistito e, in molti casi, anche più superficiale: è facile produrre prototipi che funzionano, molto più difficile capire davvero perché funzionano o quanto siano efficienti. Il rischio è che emerga una generazione di programmatori sempre meno consapevoli dei meccanismi profondi delle macchine su cui lavorano.

Ovviamente potrebbe accadere anche il contrario: questi strumenti potrebbero liberarci dal lavoro più meccanico e permettere ai programmatori migliori di concentrarsi proprio sulla creazione di software più ingegnoso. Il futuro dipenderà probabilmente da quale delle due strade decideremo di imboccare.

2026-03-16

Un caso reale di compromissione di una casella Outlook, analisi e raccomandazioni operative

Recentemente ci siamo trovati ad affrontare un episodio piuttosto complesso relativo alla casella di posta elettronica di un cliente. Il comportamento osservato inizialmente poteva essere interpretato come un normale tentativo di phishing o spam, ma l'analisi tecnica ha mostrato che la situazione era più articolata.

Ogni email ricevuta nella casella veniva automaticamente sostituita con un messaggio di estorsione (il classico schema di sextortion scam), contenente richieste di pagamento in criptovaluta ed affermazioni false riguardo a presunti accessi a webcam, documenti personali e cronologia di navigazione.

La particolarità del caso era che qualsiasi email in arrivo veniva modificata: anche messaggi di prova inviati da account diversi arrivavano correttamente per pochi istanti e poi venivano sostituiti con il medesimo testo fraudolento.

Un ulteriore elemento significativo era la comparsa periodica di messaggi nella cartella Bozze, che venivano poi spostati nella Posta in arrivo. Questo indicava chiaramente che un processo con accesso alla mailbox stava creando nuovi messaggi e sostituendo quelli originali.

Dopo diverse ore di analisi, incluse verifiche sugli header SMTP, controlli delle impostazioni di sicurezza e revoche progressive delle sessioni, il problema è stato risolto revocando tutte le sessioni attive e disconnettendo completamente gli accessi alla casella, interrompendo così l'attività dell'attaccante.

L'episodio offre alcuni spunti utili sia in termini di prevenzione sia di gestione operativa di incidenti simili.

2026-03-09

L'abbiamo sempre avuto, bastava conoscere la parola magica

Windows nasconde da anni un piccolo paradosso: tutti usano Esplora file per copiare cartelle pesanti, poi si lamentano perché è lento, si incarta, sembra riflettere sul senso della vita… ed intanto nel sistema c'è già Robocopy, uno strumento integrato pensato proprio per fare copie serie.

Non è nuovo, non è bello, non è pubblicizzato, non ha i bottoncini rassicuranti delle interfacce moderne, ma fa una cosa molto apprezzata da chi programma: lavora.

Microsoft lo documenta come comando integrato per copiare file e directory, con opzioni avanzate e supporto al multi-threading tramite `/MT`, che consente di velocizzare parecchio i trasferimenti in molti scenari.

La parte quasi comica è che molti utenti cercano utility esterne, benchmark, tutorial arcani e forse anche conforto spirituale, senza sapere che la soluzione era già lì, preinstallata, in attesa dentro il prompt come un vecchio amministratore di sistema che non parla molto ma risolve i problemi.

Robocopy è particolarmente utile quando i file sono tanti, le directory profonde o il trasferimento deve essere più affidabile del classico trascina-e-prega.

Un esempio vale più di mille parole

robocopy "C:\Sorgente" "D:\Destinazione" /E /MT:16 /R:5 /W:5 

Copia tutto, incluse le sottocartelle, usa 16 thread e riprova 5 volte in caso di errore.

Due opzioni "salvavita":

  • /Z (restartable mode): se salta la connessione di rete o la corrente, la copia riprende da dove si era fermata, senza ricominciare da zero;
  • /LOG: utile per chi deve certificare che la copia sia andata a buon fine (compliance / backup).

2026-03-02

Spegnimento di emergenza, funzione nascosta che può salvare il PC bloccato

Cominciamo con una domanda retorica: avete mai sperimentato il blocco completo di Windows? :-)

In questi casi, il gesto più istintivo è tener premuto il tasto di alimentazione e forzare lo spegnimento. Eppure...

Windows include una funzione di emergenza, pensata proprio per queste situazioni!

Cos'è lo spegnimento di emergenza di Windows

Lo spegnimento di emergenza è una funzione integrata in Windows che consente di forzare l'arresto del sistema in modo più controllato rispetto al reset fisico.

Non è una funzione visibile nei menu classici ed è proprio per questo che molti utenti non ne conoscono l'esistenza.

È pensata per i casi in cui:

  • il sistema operativo non risponde più;
  • il desktop è bloccato;
  • le normali opzioni di spegnimento non sono accessibili;
  • forzare l'arresto hardware potrebbe aumentare il rischio di errori o perdita di dati.

Come attivare lo spegnimento di emergenza

La procedura è semplice, ma va eseguita solo quando necessario:

  • premere Ctrl + Alt + Canc;
  • nella schermata che compare, tener premuto Ctrl;
  • cliccare sull'icona di spegnimento in basso a destra;
  • apparirà la finestra di spegnimento di emergenza;
  • premere OK per confermare.

A questo punto Windows tenterà un arresto immediato, saltando i normali processi di chiusura.

Spegnimento normale vs spegnimento di emergenza

Lo spegnimento normale chiude programmi e servizi in modo ordinato, salva le impostazioni di sistema; è la modalità consigliata nella vita quotidiana.

Lo spegnimento di emergenza interrompe immediatamente i processi e non garantisce il salvataggio dei dati. Va usato solo in caso di blocco totale, non è "un'alternativa veloce" ma uno strumento di emergenza.

Quali rischi considerare prima di usarlo

Lo spegnimento di emergenza non è privo di rischi:

  • perdita di file non salvati;
  • corruzione temporanea del file system;
  • necessità di controlli automatici al riavvio.

Proprio per questo non va usato come abituale alternativa al classico spegnimento.

Tipicamente vi si può ricorrere quando:

  • il sistema è "congelato";
  • non si possono chiudere programmi né riavviare normalmente.

In tutti gli altri casi, meglio attendere o provare una chiusura ordinaria.