<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Windows on Melabit</title>
    <link>https://static.233.196.69.159.clients.your-server.de/it/tags/windows/</link>
    <description>Recent content in Windows on Melabit</description>
    <generator>Hugo</generator>
    <language>it</language>
    <lastBuildDate>Sat, 09 Aug 2025 06:00:00 +0000</lastBuildDate>
    <atom:link href="https://static.233.196.69.159.clients.your-server.de/it/tags/windows/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Addio dc, benvenuta luka: una nuova calcolatrice RPN da Terminale</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2025/08/09/addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/</link>
      <pubDate>Sat, 09 Aug 2025 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2025/08/09/addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/</guid>
      <description>&lt;p&gt;La &lt;em&gt;Notazione Polacca Inversa&lt;/em&gt; (o RPN, dall&amp;rsquo;inglese Reverse Polish Notation) è un modo per eseguire operazioni matematiche senza usare le parentesi. Negli anni ‘70-80 l&amp;rsquo;RPN fu resa popolare da Hewlett-Packatd (HP), che l&amp;rsquo;utilizzò in &lt;a href=&#34;https://www.hpmuseum.org/rpnvers.htm&#34;&gt;tutte le sue calcolatrici&lt;/a&gt; scientifiche e finanziarie.&lt;/p&gt;&#xA;&lt;p&gt;Con le calcolatrici della rivale Texas-Instruments, che usavano le parentesi, era facile perdere il conto di quante parentesi si erano aperte o chiuse, cosa che costringeva spesso a reinserire l’intera espressione dal principio. Chi usava una calcolatrice RPN non aveva questi problemi, anche se doveva superare un piccolo scoglio iniziale per abituarsi alla nuova notazione.&lt;/p&gt;&#xA;&lt;p&gt;Oggi le calcolatrici &lt;em&gt;fisiche&lt;/em&gt; sono poco usate, e quasi tutti preferiscono utilizzare un&amp;rsquo;app sul telefono o sul computer. Ma c&amp;rsquo;è ancora qualche &lt;em&gt;nerd&lt;/em&gt; impenitente che non si arrende all&amp;rsquo;interfaccia grafica e si ostina ad usare il Terminale. Perché? Ad esempio, perché è molto più facile inserire numeri e operazioni complicate con la tastiera, che &lt;em&gt;premere&lt;/em&gt; i tasti di vetro di una calcolatrice virtuale.&lt;/p&gt;&#xA;&lt;h4 id=&#34;premessa&#34;&gt;Premessa&lt;/h4&gt;&#xA;&lt;p&gt;Se avete fretta e non volete sobbarcarvi la lettura di questo lungo articolo, troverete tutte le informazioni che vi servono in &lt;a href=&#34;https://macintelligence.org/post/2025-07-24-ma-non-per-calcolo/&#34;&gt;questo post&lt;/a&gt;, sintetico ma come sempre brillante, su &lt;a href=&#34;https://macintelligence.org/&#34;&gt;Quickloox&lt;/a&gt;, uno dei blog di riferimento per chi è appassionato del mondo Apple.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/Gemini_Generated_Image_72y1t072y1t072y1.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Immagine generata da &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 12px; border-color: #03a87c; background-color: #defef6; padding: 1em; color:black; font-size:100%;&#34;&gt;&#xA;&lt;h4 id=&#34;un-po-di-storia&#34;&gt;Un po&amp;rsquo; di storia&lt;/h4&gt;&#xA;&lt;p&gt;La Polonia ci ha dato Niccolò Copernico, Fryderyk Chopin, Joseph Conrad, Marie Curie, Arthur Rubinstein, Stanislaw Lem. Ma ci ha dato anche Jan Lukasiewicz, un logico matematico (e filosofo) che cent&amp;rsquo;anni fa inventò una notazione matematica che non faceva uso di parentesi.&lt;/p&gt;&#xA;&lt;p&gt;In questa &lt;em&gt;notazione polacca&lt;/em&gt; tutti i simboli di operazione ( \( + \), \( - \), \( \times \), \( / \) ) precedono i numeri a cui si applicano. Lo stesso vale più in generale per le funzioni matematiche, come \( \sqrt{} \), \( \sin \), \( \cos \), \( \exp \) (dette &lt;em&gt;operatori&lt;/em&gt;) e i numeri o le variabili (dette &lt;em&gt;operandi&lt;/em&gt;) su cui agiscono.&lt;/p&gt;&#xA;&lt;p&gt;Ad esempio, una operazione come \( 3 + 4 \), in notazione polacca viene scritta \( + \ 3 \ 4 \), mentre \( (5 + 2) \times (5 - 2) \) diventa \( \times + 5 \ 2 - 5 \ 2 \).&lt;/p&gt;&#xA;&lt;p&gt;Per molti anni questa è rimasta solo una idea un po&amp;rsquo; bislacca, perché il vantaggio di non usare le parentesi non sembrava compensare a sufficienza la notazione inusuale e più difficile da leggere.&lt;/p&gt;&#xA;&lt;p&gt;Poi alla fine degli anni &amp;lsquo;50, John McCarthy rispolverò la notazione polacca  (o &lt;em&gt;prefissa&lt;/em&gt;) per il &lt;a href=&#34;https://twobithistory.org/2018/10/14/lisp.html&#34;&gt;LISP&lt;/a&gt;, uno dei linguaggi di programmazione più influenti di tutti i tempi,&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; sviluppato con l&amp;rsquo;obiettivo di essere applicato allo sviluppo di programmi nell&amp;rsquo;ambito della nascente intelligenza artificiale.&lt;/p&gt;&#xA;&lt;p&gt;La notazione prefissa, infatti, non solo semplificava notevolmente la scrittura dell&amp;rsquo;interprete LISP, ma permetteva anche di rappresentare allo stesso modo sia il codice che i dati, una cosa utilissima per un linguaggio finalizzato a rendere in computer &lt;em&gt;intelligente&lt;/em&gt;. Ma meglio non divagare troppo.&lt;/p&gt;&#xA;&lt;h4 id=&#34;notazione-polacca-inversa&#34;&gt;Notazione polacca inversa&lt;/h4&gt;&#xA;&lt;p&gt;Ma la vera svolta avviene invertendo l&amp;rsquo;ordine fra operandi ed operatori, cioè scrivendo &lt;em&gt;prima&lt;/em&gt; i numeri e &lt;em&gt;poi&lt;/em&gt; le operazioni da eseguire, per cui \( 3 + 4 \) diventa \( 3 \ 4 \ + \) e \( (5 + 2) \times (5 - 2) \) diventa \( \ 5 \ 2 + 5 \ 2 - \times \).&lt;/p&gt;&#xA;&lt;p&gt;Questa &lt;a href=&#34;https://en.wikipedia.org/wiki/Reverse_Polish_notation&#34;&gt;&lt;em&gt;notazione polacca inversa&lt;/em&gt;&lt;/a&gt; (RPN) viene scoperta e riscoperta per almeno tre volte in vent&amp;rsquo;anni, ma diventò popolare solo all&amp;rsquo;inizio degli anni &amp;lsquo;60 quando Friedrich Bauer, inventore del concetto di &lt;a href=&#34;https://en.wikipedia.org/wiki/Stack_%28abstract_data_type%29&#34;&gt;&lt;em&gt;stack&lt;/em&gt;&lt;/a&gt; e uno degli sviluppatori dell&amp;rsquo;&lt;a href=&#34;https://en.wikipedia.org/wiki/ALGOL&#34;&gt;ALGOL&lt;/a&gt;, e Edsger Dijkstra, famoso per la soluzione del &amp;ldquo;problema del cammino minimo&amp;rdquo; e per mile altre cose, ripresero in mano il concetto, perché permetteva di ridurre l&amp;rsquo;accesso alla memoria, che nei computer dell&amp;rsquo;epoca era scarsa e lenta, e di eseguire tutte le operazioni in un&amp;rsquo;area di memoria bene definita (lo &lt;em&gt;stack&lt;/em&gt;) e per questo più facile da manipolare.&lt;/p&gt;&#xA;&lt;p&gt;I vantaggi dell&amp;rsquo;RPN per eseguire i calcoli matematici erano così evidenti che HP la utilizzò in praticamente &lt;a href=&#34;https://www.hpmuseum.org/rpnvers.htm&#34;&gt;tutte le sue calcolatrici&lt;/a&gt; scientifiche e finanziarie, almeno fino all&amp;rsquo;inizio degli anni &amp;lsquo;90. Solo con lo sviluppo di memorie più capienti e di display molto più grandi divenne possibile visualizzare e modificare facilmente l&amp;rsquo;intera operazione impostata &amp;ndash; e non più solo l’ultimo numero inserito &amp;ndash; rendendo così meno necessario l’uso dell&amp;rsquo;RPN.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;br/&gt;&#xA;&lt;h4 id=&#34;una-calcolatrice-nel-terminale&#34;&gt;Una calcolatrice nel Terminale&lt;/h4&gt;&#xA;&lt;p&gt;Chi vuole usare una calcolatrice tradizionale nel Terminale di macOS o di Linux ha una scelta pressoché obbligata: &lt;code&gt;bc&lt;/code&gt;, il &lt;a href=&#34;https://en.wikipedia.org/wiki/Bc_%28programming_language%29&#34;&gt;&lt;em&gt;basic calculator&lt;/em&gt;&lt;/a&gt;, presente in UNIX dal 1975, 50 anni filati. La versione attuale, disponibile su Linux e macOS, è stata completamente riscritta, ma quella originale era solo una interfaccia per &lt;code&gt;dc&lt;/code&gt; (&lt;a href=&#34;https://en.wikipedia.org/wiki/Dc_%28computer_program%29&#34;&gt;&lt;em&gt;desk calculator&lt;/em&gt;&lt;/a&gt;), una delle più antiche utility presenti in UNIX e più vecchia persino del C.&lt;/p&gt;&#xA;&lt;p&gt;E &lt;code&gt;dc&lt;/code&gt; era&amp;hellip; una calcolatrice RPN. Una scelta che confermava l’intuizione di HP: la notazione RPN era più efficiente e più semplice da implementare, e quindi ideale anche per i computer dalle risorse limitate degli anni ’70.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Oggi l&amp;rsquo;RPN non è più una scelta quasi obbligata dalle limitazioni hardware, ma direi una scelta motivata soprattutto dalla &lt;em&gt;pigrizia&lt;/em&gt;. Perché, una volta che si è spesa una mezz&amp;rsquo;oretta per imparare ad usarla, si scopre che è davvero molto più comodo eseguire i calcoli con questa notazione piuttosto che con quella tradizionale.&lt;/p&gt;&#xA;&lt;p&gt;E poi forse c&amp;rsquo;è anche un certo gusto per andare controcorrente: in un mondo in cui tutti si uniformano ai dettami degli &lt;em&gt;influencer&lt;/em&gt; (veri o presunti) sui social, usare una calcolatrice RPN diventa un modo per distinguersi, per sentirsi fuori dal coro, quasi una dichiarazione di indipendenza intellettuale.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;dc&lt;/code&gt; è ancora presente in Linux e macOS e può essere tranquillamente usata dal Terminale, ma è una bella fatica, i suoi cinquant&amp;rsquo;anni si sentono (e si vedono) tutti. I risultati delle operazioni non si vedono, a meno di non &lt;em&gt;stamparli&lt;/em&gt; sullo schermo con &lt;code&gt;p&lt;/code&gt;. Nemmeno lo stack si vede, a meno di non chiederlo esplicitamente con &lt;code&gt;f&lt;/code&gt;. I numeri negativi si indicano con l&amp;rsquo;underscore &lt;code&gt;_&lt;/code&gt; e non con il normale &lt;code&gt;-&lt;/code&gt;, per cui \( - 4 \) si scrive \( \_4 \). E così via.&lt;/p&gt;&#xA;&lt;p&gt;Ma da oggi c&amp;rsquo;è &lt;code&gt;dc2&lt;/code&gt; o meglio, &lt;code&gt;luka&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;h4 id=&#34;la-calcolatrice-rpn-del-xxi-secolo&#34;&gt;La calcolatrice RPN del XXI secolo&lt;/h4&gt;&#xA;&lt;p&gt;E sì, perché da qualche settimana abbiamo a disposizione una nuova calcolatrice RPN per il Terminale di macOS di Linux, chiamata inizialmente &lt;a href=&#34;https://github.com/mastro35/dc2&#34;&gt;&lt;code&gt;dc2&lt;/code&gt;&lt;/a&gt;, in omaggio alla veneranda calcolatrice ormai ultracinquantenne.&lt;/p&gt;&#xA;&lt;p&gt;Però &lt;code&gt;dc2&lt;/code&gt; sapeva troppo di una riscrittura dell&amp;rsquo;originale, mentre questo è un progetto completamente nuovo, scritto da zero in &lt;code&gt;C&lt;/code&gt;. Meritava quindi un nome tutto suo, &lt;a href=&#34;https://github.com/mastro35/luka&#34;&gt;&lt;code&gt;luka&lt;/code&gt;&lt;/a&gt;, in omaggio a Jan Lukasiewicz, l&amp;rsquo;inventore della &lt;em&gt;notazione polacca&lt;/em&gt; (si veda il riquadro qui sopra).&lt;/p&gt;&#xA;&lt;p&gt;Rispetto a &lt;code&gt;dc&lt;/code&gt;, &lt;code&gt;luka&lt;/code&gt; è davvero di un&amp;rsquo;altro secolo, e si vede appena si inizia a provarla. È interattiva, mostra in ogni momento il contenuto dello stack, ha la storia delle operazioni eseguite, le variabili, un help sintetico ma completo in linea, una pagina di manuale cristallina (ce ne fossero tante altre così!).&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/luka-example.png&#34; alt=&#34;&#34;&gt;&lt;br&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/luka-help.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;E poi &lt;code&gt;luka&lt;/code&gt; è fatta in Italia. In tempi in cui si esalta l’identità nazionale per i motivi più futili, è bello vedere qualcosa che merita davvero di essere valorizzato.&lt;/p&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/luka-credits.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Il programma in questo momento ha un piccolo &lt;em&gt;bug&lt;/em&gt; legato alla visualizzazione dell’history, ma l&amp;rsquo;autore macina il codice molto più velocemente di quanto io macini le parole, per cui è più che probabile che il bug sarà corretto al più presto (vacanze permettendo).&lt;/p&gt;&#xA;&lt;h4 id=&#34;evoluzione-del-codice&#34;&gt;Evoluzione del codice&lt;/h4&gt;&#xA;&lt;p&gt;Lo sviluppo di &lt;code&gt;dc2&lt;/code&gt;/&lt;code&gt;luka&lt;/code&gt; è stato rapidissimo. Dietro al progetto c&amp;rsquo;è Davide Mastromatteo, noto fra i suoi &lt;em&gt;amici di penna&lt;/em&gt; come @mastro35 e autore dell&amp;rsquo;ottimo blog &lt;a href=&#34;https://thepythoncorner.com/&#34;&gt;The Python Corner&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In pochi giorni Davide è passato dalla versione 0.1.0, perfettamente funzionale ma con una interfaccia utente ancora acerba,&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-010.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-010-help.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;alla versione 0.2.0, con una vista dello stack molto più chiara, la possibilità di usare gradi e radianti e di cambiare il formato di rappresentazione dei numeri, nonché con un help più compatto.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-020.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-020-help.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;La versione 0.3.0 ha introdotto l&amp;rsquo;&lt;em&gt;history&lt;/em&gt; delle operazioni eseguite e un help ancora rivisto,&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-030.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-030-help.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;mentre la versione 0.4.0, che è coincisa con il cambio di nome del programma, ci ha portato le variabili e parecchi nuovi comandi da tastiera, come si può vedere nelle prime immagini di questo articolo.&lt;/p&gt;&#xA;&lt;h4 id=&#34;usare-luka&#34;&gt;Usare luka&lt;/h4&gt;&#xA;&lt;p&gt;Installare &lt;code&gt;luka&lt;/code&gt; sul Mac o su Linux è un attimo, almeno &lt;a href=&#34;https://www.melabit.com/it/2014/04/29/homebrew-software-per-il-mac-fatto-in-casa/&#34;&gt;per chi usa &lt;code&gt;homebrew&lt;/code&gt;&lt;/a&gt; (e chi non lo usa dovrebbe iniziare a farlo subito)&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;brew install mastro35/homebrew-mastro35/luka&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Altrimenti basta scaricare l&amp;rsquo;&lt;a href=&#34;https://github.com/mastro35/luka/releases&#34;&gt;ultima release&lt;/a&gt; del codice sorgente, scompattarla ed eseguire&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;make clean &amp;amp;&amp;amp; make&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;dal Terminale, ovviamente dopo essersi &lt;a href=&#34;https://melabit.com/it/2018/01/30/script-per-tutti-i-giorni-ricapitoliamo/&#34;&gt;spostati nella directory&lt;/a&gt; che contiene il codice sorgente.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Inutile dire che chi ha installato &lt;code&gt;make&lt;/code&gt; e un compilatore C su Windows, potrà compilare &lt;code&gt;luka&lt;/code&gt; anche su questo sistema operativo.&lt;/p&gt;&#xA;&lt;p&gt;Dimenticavo: presto arriveranno i pacchetti per Linux, in formato  &lt;code&gt;deb&lt;/code&gt; e &lt;code&gt;rpn&lt;/code&gt; e, chissà, magari anche &lt;code&gt;aur&lt;/code&gt;. E forse anche un installatore per Windows.&lt;/p&gt;&#xA;&lt;p&gt;Sull&amp;rsquo;uso vero e proprio della calcolatrice c&amp;rsquo;è poco da dire. Chi conosce già l&amp;rsquo;RPN si troverà a suo agio, e ci metterà pochissimo ad usare &lt;code&gt;luka&lt;/code&gt;  al meglio. Chi non conosce l&amp;rsquo;RPN magari avrà voglia di provarla, per toccare con mano quanto sia più comodo eseguire un calcolo appena appena complicato con una calcolatrice RPN piuttosto che con una normale calcolatrice algebrica.&lt;/p&gt;&#xA;&lt;p&gt;Di guide all&amp;rsquo;RPN ce ne sono a iosa, purtroppo sono tutte orientate a &lt;a href=&#34;https://hansklav.home.xs4all.nl/rpn/&#34;&gt;spiegarne l&amp;rsquo;uso con una calcolatrice fisica&lt;/a&gt;, come le ormai mitiche HP &lt;em&gt;vintage&lt;/em&gt;, oppure con le emulazioni grafiche per Android o iOS.&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Rispetto a queste guide ci sono alcune differenze da considerare. La principale è che, non avendo i tasti fisici, &lt;code&gt;luka&lt;/code&gt; (ma anche &lt;code&gt;dc&lt;/code&gt;) richiede che si prema ogni volta &lt;code&gt;ENTER&lt;/code&gt; per inserire un numero o una funzione. Anche alcuni nomi di funzioni sono diversi, così come i comandi per gestire lo stack o per salvare e recuperare le variabili. Ad esempio &lt;code&gt;luka&lt;/code&gt; usa &lt;code&gt;store&lt;/code&gt; e &lt;code&gt;load&lt;/code&gt; per le variabili, mentre le calcolatrici fisiche o emulate usano dei tasti denominati in genere &lt;code&gt;STO&lt;/code&gt; e &lt;code&gt;RCL&lt;/code&gt; (ma se l&amp;rsquo;autore legge questo articolo forse cambierà idea 😂). Ma, a parte questi dettagli, la logica di fondo non cambia.&lt;/p&gt;&#xA;&lt;p&gt;Da parte mia, ho provato in tutti i modi a far andare &lt;code&gt;luka&lt;/code&gt; in crash, e non ci sono mai riuscito. Ho provato a fargli calcolare il fattoriale di numeri assurdamente grandi o piccoli, a dividere per zero, ad eseguire il famigerato \( 0 / 0 \) e poi a calcolare il reciproco del risultato. Ma niente, imperturbabile mi ha sempre dato il risultato esatto. Insomma, la qualità c&amp;rsquo;è.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusioni&#34;&gt;Conclusioni&lt;/h4&gt;&#xA;&lt;p&gt;Provare &lt;code&gt;luka&lt;/code&gt; non costa niente. Si installa (e disinstalla) in pochi secondi, funziona su macOS, Linux e, per chi vuole, anche su Windows. I risultati che produce sono esatti (e questa è la cosa che conta di più). Lo sviluppatore è bravo ed aperto ai suggerimenti. Insomma, è uno strumento ideale per chi vuole eseguire dei calcoli dal Terminale.&lt;/p&gt;&#xA;&lt;p&gt;Certo, è uno strumento di nicchia, destinato a pochi utenti sofisticati che apprezzano la notazione RPN e non hanno paura del Terminale. Ma proprio per questo ha un fascino tutto suo.&lt;/p&gt;&#xA;&lt;p&gt;E poi, vuoi mettere la bellezza di vedere un programma che evolve davanti ai nostri occhi, magari &lt;a href=&#34;https://github.com/mastro35/luka/issues&#34;&gt;partecipando allo sviluppo&lt;/a&gt; con suggerimenti o critiche?&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Ed uno dei pochi linguaggi di programmazione, assieme a &lt;a href=&#34;https://www.melabit.com/it/2024/10/06/70-anni-di-fortran-piu-o-meno/&#34;&gt;FORTRAN&lt;/a&gt; e COBOL, ad essere ancora vivo e vegeto.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Non a caso, uno dei linguaggi di programmazione più efficienti in assoluto è il FORTH, che si basa sullo stack e sull&amp;rsquo;uso dell&amp;rsquo;RPN.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;Come, non avete nemmeno &lt;code&gt;make&lt;/code&gt;? Allora correte ad installare &lt;code&gt;homebrew&lt;/code&gt;!&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;Per quest&amp;rsquo;ultimo consiglio senza riserve &lt;a href=&#34;https://apps.apple.com/it/app/pcalc-lite/id300311831&#34;&gt;PCalc Lite&lt;/a&gt; o meglio ancora la versione &lt;em&gt;full&lt;/em&gt; &lt;a href=&#34;https://apps.apple.com/it/app/pcalc/id284666222&#34;&gt;Pcalc&lt;/a&gt;, che costa quanto un panino e una minerale al bar. In alternativa &lt;a href=&#34;https://apps.apple.com/it/app/wp-34s/id620255094&#34;&gt;WP 34s&lt;/a&gt;, che riesce a compattare tutto in una sola schermata, oppure &lt;a href=&#34;https://apps.apple.com/it/app/i41cx/id292619450&#34;&gt;i41CX&lt;/a&gt;, perfetta per chi a suo tempo sognava di averla.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>50 anni di Microsoft</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2025/04/04/50-anni-di-microsoft/</link>
      <pubDate>Fri, 04 Apr 2025 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2025/04/04/50-anni-di-microsoft/</guid>
      <description>&lt;p&gt;Piaccia o non piaccia  Microsoft è il più grande produttore di software al mondo, ed è riuscita, in modi più o meno puliti, a far installare i suoi prodotti sulla stragrande maggioranza dei computer del pianeta.&lt;/p&gt;&#xA;&lt;p&gt;Oggi Microsoft compie 50 anni, e sembra ieri quando i due fondatori, Bill Gates e Paul Allen, assicurarono Ed Roberts di avere pronto un &lt;a href=&#34;https://www.gatesnotes.com/meet-bill/source-code/reader/microsoft-original-source-code&#34;&gt;interprete BASIC per il suo Altair 8800&lt;/a&gt;, il primo computer davvero personale, senza aver mai visto né l&amp;rsquo;Altair né il processore 8080 che lo faceva funzionare.&lt;/p&gt;&#xA;&lt;p&gt;Qualche anno dopo, i due &lt;em&gt;dimenticarono&lt;/em&gt; di dire a Tim Paterson, l&amp;rsquo;autore di QDOS (Quick and Dirty Operating System, ovvero il Sistema Operativo [fatto in modo] Veloce e Sporco) per il processore 8086, che avevano promesso ad IBM un &lt;a href=&#34;https://www.pcmag.com/news/the-rise-of-dos-how-microsoft-got-the-ibm-pc-os-contract&#34;&gt;sistema operativo per il suo imminente Personal Computer&lt;/a&gt;, che era basato proprio su quel processore. Così acquisirono i diritti di QDOS da Paterson per un tozzo di pane, lo ribattezzarono MS-DOS e lo licenziarono a IBM, catapultando Microsoft (e sè stessi) nell&amp;rsquo;olimpo dell&amp;rsquo;informatica e dei profitti.&lt;/p&gt;&#xA;&lt;p&gt;E poi ci sono state le copiature smaccate dell&amp;rsquo;interfaccia utente di Windows (vero Apple?), le pratiche quasi intimidatorie con le aziende che utilizzavano Windows in licenza e l&amp;rsquo;uso di Internet Explorer come strumento per eliminare la concorrenza degli altri sistemi operativi. E poi ancora le cause legali, il ritiro di Bill Gates, le pagliacciate di Steve Ballmer, il flop cosmico di Vista, quello altrettanto cosmico di Windows 8.&lt;/p&gt;&#xA;&lt;p&gt;Ma oggi è il compleanno e si festeggia, per cui facciamo i buoni e alziamo i calici.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-04-04-50-anni-di-microsoft/clink-glasses.jpeg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Immagine generata dall&amp;rsquo;IA di &lt;a href=&#34;https://designer.microsoft.com/image-creator&#34;&gt;Microsoft Designer&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;Però, anche se oggi si fa festa, una domanda a quelli di Microsoft non posso non fargliela.&lt;/p&gt;&#xA;&lt;p&gt;State festeggiando mezzo secolo di storia, siete famosi in tutto il sistema solare, e certo i soldi non vi mancano. Come è possibile che per celebrare un anniversario come questo non siate riusciti ad ingaggiare uno straccio di artista capace di disegnare degli &lt;a href=&#34;https://unlocked.microsoft.com/50th/&#34;&gt;sfondi migliori di questi&lt;/a&gt;?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-04-04-50-anni-di-microsoft/Microsoft_50th_Solitaire_Light_4k.jpg&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-04-04-50-anni-di-microsoft/Microsoft_50th_Windows_Light_4k.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;P.S. Ma anche chi usa solo lo smartphone può rifarsi gli occhi con &lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-04-04-50-anni-di-microsoft/GmV5M6rWkAACeJ2.jpg&#34;&gt;questo&lt;/a&gt;, o &lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-04-04-50-anni-di-microsoft/GmV5NsCa8AQtzph.jpg&#34;&gt;questo&lt;/a&gt;, o anche &lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-04-04-50-anni-di-microsoft/GmV5Ptea8AMPRCh.jpg&#34;&gt;questo&lt;/a&gt;, e perfino &lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-04-04-50-anni-di-microsoft/GmV5Repa8AQTKaV.jpg&#34;&gt;questo&lt;/a&gt;.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Da melabit a melabit: sviluppare un sito in Jekyll</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2025/03/01/da-melabit-a-melabit-sviluppare-un-sito-in-jekyll/</link>
      <pubDate>Sat, 01 Mar 2025 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2025/03/01/da-melabit-a-melabit-sviluppare-un-sito-in-jekyll/</guid>
      <description>&lt;p&gt;Dopo la&lt;a href=&#34;https://melabit.com/it/2025/02/11/da-melabit-a-melabit-jekyll-installazione-e-configurazione-di-base/&#34;&gt; prima parte&lt;/a&gt; dedicata all&amp;rsquo;installazione e alla configurazione iniziale di Jekyll, con questa seconda parte di note commentate si entra nel vivo dello sviluppo di un sito in Jekyll a partire da un tema già pronto. Sviluppare da zero un tema per Jekyll, invece, va molto oltre le mie competenze, ma del resto chi è in grado di farlo non ha bisogno di leggere queste notarelle.&lt;/p&gt;&#xA;&lt;h4 id=&#34;cosa-vogliamo&#34;&gt;Cosa vogliamo?&lt;/h4&gt;&#xA;&lt;p&gt;Per prima cosa dobbiamo avere una idea chiara di come dovrebbe essere il sito dal punto di vista grafico e quali funzioni deve supportare. Vogliamo un blog personale con un semplice elenco di post? Vogliamo un sito più elaborato stile rivista? Vogliamo un sito vetrina per presentare la nostra attività o un progetto specifico? Vogliamo un sito fotografico o di documentazione?&lt;/p&gt;&#xA;&lt;p&gt;Una volta chiarite le &amp;ldquo;specifiche&amp;rdquo; del sito, facciamo un giro su &lt;a href=&#34;http://jekyllthemes.org/&#34;&gt;questo sito&lt;/a&gt; di temi per Jekyll, oppure su &lt;a href=&#34;https://jekyll-themes.com/&#34;&gt;questo&lt;/a&gt;, o su &lt;a href=&#34;https://jekyllthemes.io/&#34;&gt;questo&lt;/a&gt;, o infine su &lt;a href=&#34;https://jamstackthemes.dev/ssg/jekyll&#34;&gt;questo&lt;/a&gt; (non posso distinguerli per nome, perché si chiamano tutti Jekyll Themes). I più pazienti potranno scorrerli uno ad uno, gli altri preferiranno selezionate la tipologia di sito che gli interessa e guardare solo quei temi. In ogni caso, è bene prendere nota di quelli che ci piacciono di più e provate i siti demo, quando ci sono. È bene essere aperti, magari troviamo un tema interessante che esce fuori dalle specifiche, meglio segnarsi anche quello.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;come-è-fatto-un-tema&#34;&gt;Come è fatto un tema&lt;/h4&gt;&#xA;&lt;p&gt;A questo punto non resta che provare. Per evitare di essere generico, descriverò l&amp;rsquo;installazione del tema &lt;a href=&#34;https://github.com/wowthemesnet/mundana-theme-jekyll&#34;&gt;Mundana&lt;/a&gt; che, guarda caso, è quello che ho usato per &lt;a href=&#34;https://melabit.com/posts/it&#34;&gt;melabit.com/posts/it&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Ma, proprio come Mundana, la maggior parte dei temi non &lt;em&gt;gem-based&lt;/em&gt; di Jekyll si installa clonando il suo &lt;em&gt;repository&lt;/em&gt; su GitHub oppure scaricando un file compresso (nel qual caso, tutto la parte qui sotto relativa a &lt;code&gt;git&lt;/code&gt; può essere saltata a piè pari). In entrambi i casi, ciò che installiamo è sia il tema che il sito vero e proprio, perché in Jekyll non c&amp;rsquo;è una separazione netta fra grafica e contenuti.&lt;/p&gt;&#xA;&lt;p&gt;La prima cosa da fare è installare &lt;code&gt;git&lt;/code&gt; sul computer. Su macOS è installato di default, ma è sempre una versione un po&amp;rsquo; datata, e comunque come &lt;a href=&#34;https://melabit.com/it/2025/02/11/da-melabit-a-melabit-jekyll-installazione-e-configurazione-di-base/&#34;&gt;dicevo la volta scorsa&lt;/a&gt;, è sempre meglio separare i &lt;em&gt;tool&lt;/em&gt; di sistema da quelli che usate per lo sviluppo. Del resto, con &lt;a href=&#34;https://melabit.com/it/2014/04/29/homebrew-software-per-il-mac-fatto-in-casa/&#34;&gt;Homebrew&lt;/a&gt; ci vogliono pochi secondi, basta eseguire&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ brew install git&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;e avremo l&amp;rsquo;ultima (o quasi) versione di &lt;code&gt;git&lt;/code&gt; installata sul Mac.&lt;/p&gt;&#xA;&lt;p&gt;Con Linux non è molto diverso, ma questa volta dovremo usare l&amp;rsquo;installatore dei pacchetti per la distribuzione in uso, per cui eseguiamo uno dei comandi qui sotto&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sudo apt install git&#xA;$ sudo dnf install git&#xA;$ sudo pacman -S git&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;a seconda che usiamo Debian/Ubuntu, Fedora/CentOS, Arch, o uno degli infiniti derivati.&lt;/p&gt;&#xA;&lt;p&gt;Come dicevo, l&amp;rsquo;installazione di Mundana avviene clonando il suo repository,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ git clone https://github.com/wowthemesnet/mundana-theme-jekyll.git&#xA;Cloning into &amp;#39;mundana-theme-jekyll&amp;#39;...&#xA;remote: Enumerating objects: 324, done.&#xA;remote: Total 324 (delta 0), reused 0 (delta 0), pack-reused 324 (from 1)&#xA;Receiving objects: 100% (324/324), 4.12 MiB | 24.52 MiB/s, done.&#xA;Resolving deltas: 100% (116/116), done.&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;oppure scaricando ed espandendo il file &lt;code&gt;zip&lt;/code&gt; del progetto.&lt;/p&gt;&#xA;&lt;p&gt;Gli sviluppatori suggeriscono di fare il prima un &lt;em&gt;fork&lt;/em&gt; sul nostro account GitHub e poi di clonare da lì. Secondo me ha senso se vogliamo contribuire al codice, altrimenti mi sembra un passaggio inutile. E comunque, chi sa cos&amp;rsquo;è un &lt;em&gt;fork&lt;/em&gt; non ha bisogno di altre istruzioni.&lt;/p&gt;&#xA;&lt;p&gt;Una volta finita l&amp;rsquo;installazione, possiamo spostarci nella directory di Mundana e curiosare un po&amp;rsquo; in giro (per maggior chiarezza, tutti i nomi delle directory finiscono con uno &lt;code&gt;/&lt;/code&gt;).&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ cd  mundana-theme-jekyll&#xA;% ls -nhp&#xA;total 72&#xA;-rw-r--r--   1 501  20   398B Feb 12T19:58:00 404.html&#xA;-rw-r--r--   1 501  20   510B Feb 12T19:58:00 Gemfile&#xA;-rw-r--r--   1 501  20   1.7K Feb 12T19:58:00 Gemfile.lock&#xA;-rw-r--r--   1 501  20   2.0K Feb 12T19:58:00 README.md&#xA;-rw-r--r--   1 501  20   1.7K Feb 12T19:58:00 _config.yml&#xA;drwxr-xr-x  11 501  20   352B Feb 12T19:58:00 _includes/&#xA;drwxr-xr-x   6 501  20   192B Feb 12T19:58:00 _layouts/&#xA;drwxr-xr-x  11 501  20   352B Feb 12T19:58:00 _pages/&#xA;drwxr-xr-x  20 501  20   640B Feb 12T19:58:00 _posts/&#xA;drwxr-xr-x   5 501  20   160B Feb 12T19:58:00 assets/&#xA;-rw-r--r--   1 501  20   149B Feb 12T19:58:00 docker-compose.yml&#xA;-rw-r--r--   1 501  20   9.2K Feb 12T19:58:00 index.html&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;La directory di Mundana contiene due file di &lt;em&gt;servizio&lt;/em&gt; di &lt;code&gt;RubyGems&lt;/code&gt;, &lt;code&gt;Gemfile&lt;/code&gt; e &lt;code&gt;Gemfile.lock&lt;/code&gt;, oltre al file &lt;code&gt;docker-compose.yml&lt;/code&gt; che serve solo se usiamo Jekyll all&amp;rsquo;interno di un container Docker (cosa che qui non interessa). Tutto il resto fa capo a Jekyll.&lt;/p&gt;&#xA;&lt;p&gt;Le pagine statiche del sito vanno messe nella cartella &lt;code&gt;_pages&lt;/code&gt;, mentre tutti i contenuti dinamici, cioè quelli che vengono modificati di frequente come i post di un blog, vanno in &lt;code&gt;_posts&lt;/code&gt;. Il contenuto delle pagine statiche e dei post può essere scritto indifferentemente sia in &lt;code&gt;html&lt;/code&gt; che in &lt;code&gt;Markdown&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;La cartella &lt;code&gt;_layouts&lt;/code&gt; contiene i file che generano le parti principali del sito, come le pagine statiche e quelle dei post o la barra laterale, mentre la cartella &lt;code&gt;_includes&lt;/code&gt; contiene delle porzioni di codice che possono essere incluse nelle diverse pagine, più o meno come se fossero delle funzioni di libreria.&lt;/p&gt;&#xA;&lt;p&gt;Queste quattro cartelle, che iniziano tutte con un &lt;em&gt;underscore&lt;/em&gt; &lt;code&gt;_&lt;/code&gt;, vengono elaborate dal motore di Jekyll, che le usa per costruire le pagine html vere e proprie del sito statico.&lt;/p&gt;&#xA;&lt;p&gt;L&amp;rsquo;ultima cartella &lt;code&gt;assets&lt;/code&gt;, invece, è dedicata ai contenuti del sito che non vengono elaborati dal motore di Jekyll, come i file &lt;code&gt;css&lt;/code&gt; che specificano tutti i dettagli dell&amp;rsquo;aspetto grafico del sito, i file &lt;code&gt;JavaScript&lt;/code&gt; necessari per svolgere certe funzioni che richiedono interattività,&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; e tutte le immagini del sito. Quando Jekyll genera un sito questa cartella viene copiata così com&amp;rsquo;è e il sistema crea automaticamente i link ai vari file.&lt;/p&gt;&#xA;&lt;p&gt;Infine, il file &lt;code&gt;_config.yml&lt;/code&gt; contiene tutti i parametri di configurazione del sito, fra cui il nome e la descrizione del sito, il link al logo o alla favicon, i plugin necessari per generare il sito, i parametri di paginazione, o l&amp;rsquo;elenco dei file e delle cartelle di servizio che non devono essere elaborati da Jekyll. Il file  &lt;code&gt;_config.yml&lt;/code&gt; può diventare piuttosto lungo e complesso, qui sotto per semplicità faccio vedere solo una piccola parte del file &lt;code&gt;_config.yml&lt;/code&gt; di default di Mundana.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;# Site&#xA;name: &amp;#39;Mundana&amp;#39;&#xA;description: &amp;#39;Mundana is a free Jekyll theme for awesome people like you, Medium like.&amp;#39;&#xA;logo: &amp;#39;assets/images/logo.png&amp;#39;&#xA;favicon: &amp;#39;assets/images/favicon.ico&amp;#39;&#xA;baseurl: &amp;#39;/mundana-theme-jekyll&amp;#39;&#xA;&#xA;[...]&#xA;&#xA;# Plugins&#xA;plugins: &#xA;  - jekyll-feed&#xA;  - jekyll-sitemap&#xA;  - jekyll-paginate&#xA;  - jekyll-seo-tag&#xA;  &#xA;[...]&#xA;&#xA;# Paginate&#xA;paginate: 10&#xA;&#xA;# Exclude metadata and development time dependencies (like Grunt plugins)&#xA;exclude: [README.markdown, package.json, grunt.js, Gruntfile.js, Gruntfile.coffee, node_modules]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Già che ci siamo, semplifichiamoci il lavoro futuro con una piccola modifica al file &lt;code&gt;_config.yml&lt;/code&gt;, sostituendo la riga &lt;code&gt;baseurl: &#39;/mundana-theme-jekyll&#39;&lt;/code&gt; con &lt;code&gt;baseurl: &#39;&#39;&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Dimenticavo, anche i plugin (e le relative dipendenze) sono anch&amp;rsquo;essi delle &lt;a href=&#34;https://melabit.com/it/2025/02/11/da-melabit-a-melabit-jekyll-installazione-e-configurazione-di-base/&#34;&gt;&lt;em&gt;gemme&lt;/em&gt; di Ruby&lt;/a&gt; e non sono installati di default, per cui ci tocca farlo con&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ rm Gemfile.lock&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;che serve per evitare di avere conflitti quando Ruby ci propone di installare plugin più recenti di quelli riportati nel file &lt;code&gt;Gemfile.lock&lt;/code&gt;. Subito dopo,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ bundle install&#xA;[...]&#xA;Fetching gem metadata from https://rubygems.org/............&#xA;Resolving dependencies...&#xA;Fetching jekyll-paginate 1.1.0&#xA;Installing jekyll-paginate 1.1.0&#xA;Fetching jekyll-sitemap 1.4.0&#xA;Installing jekyll-sitemap 1.4.0&#xA;Bundle complete! 4 Gemfile dependencies, 39 gems now installed.&#xA;Bundled gems are installed into `[...]/.gems`&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;che installa i plugin veri e propri (e rigenera automaticamente il file &lt;code&gt;Gemfile.lock&lt;/code&gt; con le versioni appena installate dei vari plugin).&lt;/p&gt;&#xA;&lt;h4 id=&#34;mettiamo-di-nuovo-jekyll-alla-prova&#34;&gt;Mettiamo di nuovo Jekyll alla prova&lt;/h4&gt;&#xA;&lt;p&gt;A questo punto non ci rimane che mettere di nuovo Jekyll alla prova, ma questa volta con il tema che abbiamo installato.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ bundle exec jekyll serve --host=0.0.0.0&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Il sito verrà rigenerato rapidamente e potrà essere visto all&amp;rsquo;URL &lt;code&gt;http://localhost:4000&lt;/code&gt; della nostra macchina reale, oppure all&amp;rsquo;URL della macchina virtuale o del server cloud che stiamo usando, sempre utilizzando la porta &lt;code&gt;4000&lt;/code&gt; (per i server cloud l&amp;rsquo;URL ha una etichetta del tipo &lt;code&gt;reverse DNS name&lt;/code&gt; o simili).&lt;/p&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-03-01-da-melabit-a-melabit-sviluppare-un-sito-in-Jekyll/jekyll-mundana-default.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Rispetto ai semplici temi &lt;em&gt;gem-based&lt;/em&gt; &lt;a href=&#34;https://melabit.com/it/2025/02/11/da-melabit-a-melabit-jekyll-installazione-e-configurazione-di-base/&#34;&gt;visti nell&amp;rsquo;articolo precedente&lt;/a&gt; Mundana è chiaramente un&amp;rsquo;altra cosa.&lt;/p&gt;&#xA;&lt;p&gt;Qui la struttura del sito è molto più efficace: in cima vengono mostrati gli ultimi quattro post con le relative immagini, al centro spicca in grande evidenza un post con uno sfondo contrastante (ad esempio l&amp;rsquo;ultimo pubblicato) e, più in basso, tutti gli altri post sono disposti in ordine cronologico inverso. A fianco, una barra laterale ospita i post che desideriamo mettere in risalto.&lt;/p&gt;&#xA;&lt;p&gt;Ora basterebbe sostituire i post preconfezionati di Mundana con i propri, aggiungere le immagini, fare due o tre modifiche al file &lt;code&gt;_config.yml&lt;/code&gt; e in pochi minuti si avrebbe il sito pronto da mettere online, con tutti i post già organizzati in tante pagine belle ordinate (&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-03-01-da-melabit-a-melabit-sviluppare-un-sito-in-Jekyll/jekyll-mundana-with-my-posts.png&#34;&gt;come si può vedere qui&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;h4 id=&#34;il-tema-di-default-non-basta&#34;&gt;Il tema di default non basta&lt;/h4&gt;&#xA;&lt;p&gt;Un tema ben fatto è molto comodo e, come abbiamo appena visto, permette di andare online rapidamente e con pochissimo sforzo. Ma non è detto che così com&amp;rsquo;è riesca a soddisfare le esigenze di tutti.&lt;/p&gt;&#xA;&lt;p&gt;Io ad esempio volevo realizzare un sito multilingua in italiano e in inglese, una funzionalità che Mundana non supporta di default.&lt;/p&gt;&#xA;&lt;p&gt;Inoltre volevo che la &lt;code&gt;Home&lt;/code&gt; del sito mostrasse un riassunto degli ultimi post con le miniature delle immagini di testa, ma senza che queste apparissero nelle &lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-03-01-da-melabit-a-melabit-sviluppare-un-sito-in-Jekyll/jekyll-mundana-single-post.png&#34;&gt;pagine dei singoli post&lt;/a&gt;. Mundana gestisce correttamente la prima richiesta, ma non la seconda.&lt;/p&gt;&#xA;&lt;p&gt;Un altro problema riguarda la &lt;a href=&#34;https://www.seozoom.it/paginazione-siti-web-ottimizzazione-tecniche-seo/&#34;&gt;paginazione&lt;/a&gt;: quella di default è bella, ma mostra un&amp;rsquo;unica striscia orizzontale di link a tutte le pagine generate. Quando queste sono troppe, la striscia si allarga a dismisura, finendo per sovrapporsi ad altri elementi grafici della pagina o per uscire dai margini del browser.&lt;/p&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-03-01-da-melabit-a-melabit-sviluppare-un-sito-in-Jekyll/jekyll-mundana-pagination.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Infine, Mundana supporta di default il sistema di commenti &lt;a href=&#34;https://disqus.com/&#34;&gt;Disqus&lt;/a&gt;, ma io preferivo una soluzione gestita &lt;em&gt;in casa&lt;/em&gt;, evitando di appoggiarmi a servizi di terze parti che possono cambiare le regole di utilizzo o, peggio, cessare di esistere da un giorno all&amp;rsquo;altro.&lt;/p&gt;&#xA;&lt;h4 id=&#34;al-lavoro&#34;&gt;Al lavoro!&lt;/h4&gt;&#xA;&lt;p&gt;Premetto che tutto il codice del tema modificato è disponibile su GitHub, all&amp;rsquo;URL &lt;a href=&#34;https://github.com/sabinomaggi/mundana-theme-jekyll-multilang&#34;&gt;https://github.com/sabinomaggi/mundana-theme-jekyll-multilang&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h5 id=&#34;paginazione&#34;&gt;Paginazione&lt;/h5&gt;&#xA;&lt;p&gt;Cominciamo dalla paginazione. A partire dalla versione 3 di Jekyll (ora siamo alla 4.4.1), la paginazione è gestita dal &lt;a href=&#34;https://jekyllrb.com/docs/pagination/&#34;&gt;plugin &lt;code&gt;jekyll-paginate-v2&lt;/code&gt;&lt;/a&gt;. In Mundana, il codice di paginazione è integrato nel file &lt;code&gt;index.html&lt;/code&gt; ed è molto semplice, tanto da dare problemi quando il numero di pagine del sito cresce.&lt;/p&gt;&#xA;&lt;p&gt;Io ho spostato la paginazione in &lt;code&gt;_includes/custom/paginator.html&lt;/code&gt;,&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; facendo in modo che i link puntassero solo ad una parte delle pagine disponibili: quelle immediatamente intorno alla pagina corrente, la prima e l&amp;rsquo;ultima pagine e una pagina intermedia calcolata in base alla distanza della pagina corrente dalla prima (o dall&amp;rsquo;ultima). In questo modo la paginazione funziona correttamente anche in finestre molto strette o sui dispositivi mobili.&lt;/p&gt;&#xA;&lt;p&gt;Sul codice c’è poco da dire: partendo dalla pagina corrente vengono determinati tutti gli altri elementi della paginazione, generando dinamicamente il codice HTML di ciascun link. Tutta la logica del codice è in &lt;a href=&#34;https://shopify.github.io/liquid/&#34;&gt;&lt;code&gt;Liquid&lt;/code&gt;&lt;/a&gt;, che è il linguaggio di &lt;em&gt;templating&lt;/em&gt; usato da Jekyll. La sintassi di Liquid è un po’ astrusa e obbliga a fare qualche giochetto con le variabili, ma l’importante è che alla fine tutto funzioni.&lt;/p&gt;&#xA;&lt;p&gt;Secondo me, la parte più interessante del codice è la prima riga, che serve per cambiare dinamicamente le stringhe di testo in base alla lingua in uso. Ma questo ci porta alla prossima sezione.&lt;/p&gt;&#xA;&lt;h5 id=&#34;supporto-multilingue&#34;&gt;Supporto multilingue&lt;/h5&gt;&#xA;&lt;p&gt;Jekyll può gestire i siti multilingua tramite il &lt;a href=&#34;https://github.com/untra/polyglot&#34;&gt;plugin &lt;code&gt;jekyll-polyglot&lt;/code&gt;&lt;/a&gt;, che però non &lt;em&gt;comunica&lt;/em&gt; bene con il plugin di paginazione &lt;code&gt;jekyll-paginate-v2&lt;/code&gt;,&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt; per cui mi serviva un&amp;rsquo;altra soluzione.&lt;/p&gt;&#xA;&lt;p&gt;Polyglot è facilissimo da usare, basta aggiungere il plugin sotto la voce relativa nel file di configurazione &lt;code&gt;_config.yml&lt;/code&gt; e definire due nuove variabili con tutte le lingue che ci interessano.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;[...]&#xA;&#xA;# Plugins&#xA;plugins: &#xA;  [...]&#xA;  - jekyll-polyglot&#xA;&#xA;[...]&#xA;&#xA;# Polyglot&#xA;languages: [en, it, de, fr]&#xA;default_lang: en&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;A questo punto basta definire la lingua di ciascun post, aggiungendo nel suo &lt;a href=&#34;https://jekyllrb.com/docs/front-matter/&#34;&gt;&lt;em&gt;front matter&lt;/em&gt;&lt;/a&gt; la variabile &lt;code&gt;lang:&lt;/code&gt; (ad esempio, &lt;code&gt;lang: en&lt;/code&gt; o &lt;code&gt;lang: it&lt;/code&gt;) e il gioco è fatto.&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 12px; border-color: #03a87c; background-color: #defef6; padding: 1em; color:black; font-size:100%;&#34;&gt;&#xA;Il &lt;code&gt;front matter&lt;/code&gt; di Jekyll è un blocco di metadati in formato &lt;code&gt;YAML&lt;/code&gt; inserito all&#39;inizio di un file Markdown (&lt;code&gt;.md&lt;/code&gt;) o HTML (&lt;code&gt;.html&lt;/code&gt;). &#xA;&lt;p&gt;Il front matter è racchiuso tra tre trattini (&lt;code&gt;---&lt;/code&gt;) e serve a fornire informazioni su quella pagina o post, come il titolo, la lingua, il layout, e per personalizzare il comportamento delle pagine. Ad esempio:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;---&#xA;title: &amp;#34;Benvenuto&amp;#34;&#xA;layout: default&#xA;permalink: /it/&#xA;lang: it&#xA;---&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Quando Jekyll elabora il sito, utilizza il front matter per:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;definire il template utilizzare per la visualizzazione del sito (&lt;code&gt;layout: default&lt;/code&gt;).&lt;/li&gt;&#xA;&lt;li&gt;personalizzare l&amp;rsquo;URL associato alla pagina (&lt;code&gt;permalink: /it/&lt;/code&gt;).&lt;/li&gt;&#xA;&lt;li&gt;impostare delle variabili specifiche per quel file, da usare nei layout e nei temi (&lt;code&gt;lang: it&lt;/code&gt;).&#xA;Se una data pagina o post contiene nel front matter la variabile &lt;code&gt;lang:it&lt;/code&gt;, Polyglot potrà utilizzare questa variabile per applicare contenuti o stili specifici per la versione italiana del sito.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;L&amp;rsquo;idea quindi era quella di emulare a mano il comportamento di &lt;code&gt;polyglot&lt;/code&gt;. La prima cosa che ho fatto è stata definire nel file &lt;code&gt;_config.yml&lt;/code&gt; due variabili analoghe a quelle usate da Polyglot,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;#--- Custom localization variables ---&#xA;# Polyglot does not work well with Paginate-v2&#xA;# define these two variables instead&#xA;locales: [en, it]&#xA;default_locale: en&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;e aggiungere nel &lt;em&gt;front matter&lt;/em&gt; di ciascuna pagina o post una variabile che in analogia con le variabili definite in &lt;code&gt;_config.yml&lt;/code&gt;_ può essere &lt;code&gt;locale: en&lt;/code&gt; oppure &lt;code&gt;locale: it&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Per semplificare la gestione delle due lingue ho creato, all&amp;rsquo;interno della cartella principale &lt;code&gt;_posts&lt;/code&gt;, due sottocartelle &lt;code&gt;en&lt;/code&gt; e &lt;code&gt;it&lt;/code&gt; dove inserire i post nelle rispettive lingue (in questo modo, aggiungere con &lt;code&gt;sed&lt;/code&gt; la variabile &lt;code&gt;locale&lt;/code&gt; giusta è una questione di pochi secondi).&lt;/p&gt;&#xA;&lt;p&gt;Fatto questo, ho sfruttato una caratteristica specifica di Jekyll che, quando trova un file che nel nome contiene un indicatore di lingua, lo considera un&amp;rsquo;altra versione del file originale (senza indicatore), con sue variabili specifiche definite nel front matter.&lt;/p&gt;&#xA;&lt;p&gt;In altri termini, se ho un file &lt;code&gt;index.html&lt;/code&gt; che contiene tutto il codice necessario per costruire la pagina &lt;code&gt;Home&lt;/code&gt; del sito e poi creo un secondo file &lt;code&gt;index_it.html&lt;/code&gt; vuoto, ad eccezione del front matter in cui è definita la variabile &lt;code&gt;locale: it&lt;/code&gt;, questo file &lt;code&gt;index_it.html&lt;/code&gt; erediterà tutto il contenuto di &lt;code&gt;index.html&lt;/code&gt; ma utilizzerà il valore della variabile &lt;code&gt;locale&lt;/code&gt; per adattare la pagina alla lingua italiana. Questo meccanismo è spiegato molto bene in qualche pagina che ho consultato, ma purtroppo non trovo più i link relativi.&lt;/p&gt;&#xA;&lt;p&gt;Ultimo mattoncino: quando si usa la paginazione, la variabile &lt;code&gt;locale: it&lt;/code&gt; deve essere definita all&amp;rsquo;interno della variabile &lt;code&gt;pagination:&lt;/code&gt; del front matter,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;pagination:&#xA;    enabled: true&#xA;    locale: it&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;per cui tutto il codice usato per determinare in modo dinamico la lingua in cui è scritta una data pagina deve controllare sempre sia il contenuto della variabile &lt;code&gt;page.locale&lt;/code&gt; che di &lt;code&gt;page.pagination.locale&lt;/code&gt;,&lt;/p&gt;&#xA;&lt;p&gt;Ovviamente bisogna adattare alla lingua anche tutte le stringhe di testo presenti nel sito. Per questo, c&amp;rsquo;è il file &lt;code&gt;_data/translations.yml&lt;/code&gt; che contiene le traduzioni in inglese e in italiano di tutte le stringhe utilizzate.&lt;/p&gt;&#xA;&lt;p&gt;Inutile dire che mettere a punto correttamente il meccanismo di localizzazione è stata la cosa che ha richiesto più tempo nel corso dello sviluppo di &lt;code&gt;melabit.com/posts/it&lt;/code&gt;. Il modo in cui è stato fatto, però, consente di aggiungere una nuova lingua in pochi minuti: basta modificare la variabile &lt;code&gt;locales&lt;/code&gt; in &lt;code&gt;_config.yml&lt;/code&gt;, aggiungere un&amp;rsquo;altra cartella in &lt;code&gt;_posts&lt;/code&gt; e un&amp;rsquo;altra bandierina in &lt;code&gt;assets/images&lt;/code&gt;. Quasi quasi viene voglia di provare&amp;hellip; 😂&lt;/p&gt;&#xA;&lt;h5 id=&#34;miniature-e-commenti&#34;&gt;Miniature e commenti&lt;/h5&gt;&#xA;&lt;p&gt;Superato lo scoglio della localizzazione, togliere la miniatura dell&amp;rsquo;immagine di testa dalla pagina dei post è stato uno scherzo. È bastato trovare le righe di codice coinvolte e commentarle e il gioco è fatto.&lt;/p&gt;&#xA;&lt;p&gt;I commenti invece sono stati tutta un&amp;rsquo;altra storia, perfino più complicata di quella della localizzazione. E proprio ai commenti sarà destinato il &lt;a href=&#34;https://melabit.com/it/2025/03/05/da-melabit-a-melabit-gestire-i-commenti-con-jekyll/&#34;&gt;prossimo articolo&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Ad esempio, proprio mentre scrivevo questo articolo, ho messo gli occhi  su &lt;a href=&#34;https://jekyll-themes.com/kitian616/jekyll-TeXt-theme&#34;&gt;questo tema&lt;/a&gt; che non si adatta alla mia idea originale di sito, ma che forse avrebbe potuto fare lo stesso al caso mio (ma ormai non cambio).&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Jekyll è un generatore di siti &lt;em&gt;statico&lt;/em&gt;, ma ormai anche un sito statico richiede un certo livello di &lt;em&gt;dinamicità&lt;/em&gt; per gestire al meglio cose come le ricerche, come i commenti, e così via.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;Tutto il nuovo codice da includere l&amp;rsquo;ho messo nella cartella &lt;code&gt;custom&lt;/code&gt; per distinguerlo, anche fisicamente, da quello originale del tema.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;Dato che diversi post di 4-5 anni fa riportano di aver usato senza problemi sia &lt;code&gt;jekyll-polyglot&lt;/code&gt; che &lt;code&gt;jekyll-paginate-v2&lt;/code&gt;, questo potrebbe essere un problema specifico di Mundana. Oppure è una incompatibilità venuta fuori nelle ultime versioni di Jekyll o dei due plugin.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Da melabit a melabit: Jekyll, installazione e configurazione di base</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2025/02/11/da-melabit-a-melabit-jekyll-installazione-e-configurazione-di-base/</link>
      <pubDate>Tue, 11 Feb 2025 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2025/02/11/da-melabit-a-melabit-jekyll-installazione-e-configurazione-di-base/</guid>
      <description>&lt;p&gt;Questo articolo non vuole essere una guida dettagliata alla installazione e configurazione di &lt;a href=&#34;https://jekyllrb.com/&#34;&gt;Jekyll&lt;/a&gt;; per quello ci sono le ottime guide riportate più sotto.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;L&amp;rsquo;articolo è invece una raccolta commentata delle note che ho preso mentre sviluppavo &lt;a href=&#34;https://melabit.com/it/&#34;&gt;melabit.com/posts/it&lt;/a&gt;, e sono il risultato di giorni e giorni di prove ed errori, di cambi di direzione, di letture alla ricerca del comando &lt;em&gt;giusto&lt;/em&gt;. A me le note servivano per ricordare quello che avevo fatto e come avevo risolto i problemi che si presentavano di volta in volta. A voi potrebbero essere utili per fare tutto più in fretta e senza intoppi.&lt;/p&gt;&#xA;&lt;h4 id=&#34;installazione-di-jekyll&#34;&gt;Installazione di Jekyll&lt;/h4&gt;&#xA;&lt;p&gt;Per fare delle prove con Jekyll non c&amp;rsquo;è niente di meglio che usare una macchina virtuale, magari con una versione server di Linux che carica poco il sistema principale. Una buona alternativa è un server cloud virtuale, anche economico, come &lt;a href=&#34;https://upcloud.com/products/cloud-servers&#34;&gt;UpCloud&lt;/a&gt;, &lt;a href=&#34;https://cloud.google.com/products/compute&#34;&gt;Google Compute Engine&lt;/a&gt;, &lt;a href=&#34;https://aws.amazon.com/ec2/?nc2=h_ql_prod_fs_ec2&#34;&gt;Amazon EC2&lt;/a&gt; o similari. Per lavorare sul serio, invece, è molto più comodo e veloce usare una macchina &lt;em&gt;reale&lt;/em&gt;, tanto più che seguendo queste istruzioni il rischio di fare danni è nullo o quasi. Io per fortuna avevo a disposizione un vecchio Mac, che mi ha permesso di provare e riprovare sapendo che, in caso di problemi, avrei potuto resettarlo facilmente.&lt;/p&gt;&#xA;&lt;p&gt;La guida migliore per l&amp;rsquo;installazione di Jekyll è senza dubbio &lt;a href=&#34;https://jekyllrb.com/docs/installation/&#34;&gt;quella ufficiale&lt;/a&gt;, con istruzioni specifiche per i sistemi operativi più diffusi.&lt;/p&gt;&#xA;&lt;p&gt;La &lt;a href=&#34;https://jekyllrb.com/docs/installation/macos/&#34;&gt;guida per macOS&lt;/a&gt; è fatta bene, ma l&amp;rsquo;installazione richiede &lt;a href=&#34;https://brew.sh/&#34;&gt;Homebrew&lt;/a&gt; e un buon numero di passaggi da eseguire con attenzione. Su Linux l&amp;rsquo;installazione è molto più facile, mentre su Windows la cosa migliora da fare è installare il &lt;a href=&#34;https://learn.microsoft.com/en-us/windows/wsl/about&#34;&gt;Windows Subsystem for Linux (WSL)&lt;/a&gt; e poi lavorare &lt;a href=&#34;https://jekyllrb.com/docs/installation/windows/&#34;&gt;di fatto in un ambiente Linux&lt;/a&gt;.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Un dettaglio importante che manca nelle istruzioni per macOS &amp;ndash; ma che invece è presente in quelle per &lt;a href=&#34;https://jekyllrb.com/docs/installation/freebsd/&#34;&gt;Ubuntu&lt;/a&gt;, &lt;a href=&#34;https://jekyllrb.com/docs/installation/freebsd/&#34;&gt;FreeBSD&lt;/a&gt; e gli &lt;a href=&#34;https://jekyllrb.com/docs/installation/other-linux/&#34;&gt;altri Linux&lt;/a&gt; &amp;ndash; è che, prima di eseguire il comando finale &lt;code&gt;gem install jekyll&lt;/code&gt; (ma volendo anche prima di iniziare ad installare Jekyll), è bene aggiungere queste righe al file &lt;code&gt;~/.bashrc&lt;/code&gt; o &lt;code&gt;~/.zshrc&lt;/code&gt; (a seconda della &lt;em&gt;shell&lt;/em&gt; usata),&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;#--- Install Ruby gems in the user account, e.g. in ~/.gems ---&#xA;export GEM_HOME=&amp;#34;$HOME/.gems&amp;#34;&#xA;export PATH=&amp;#34;$HOME/.gems/bin:$PATH&amp;#34;&#xA;#--- end ---&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;ed eseguire &lt;code&gt;source ~/.bashrc&lt;/code&gt; o &lt;code&gt;source ~/.zshrc&lt;/code&gt; per attivare le nuove variabili di ambiente (io sono rozzo e mi limito a chiudere il Terminale e a riaprirlo subito dopo).&lt;/p&gt;&#xA;&lt;p&gt;A cosa servono quelle righe? Ad istruire il gestore dei pacchetti di &lt;a href=&#34;https://www.ruby-lang.org/en/&#34;&gt;Ruby&lt;/a&gt;, &lt;code&gt;RubyGems&lt;/code&gt;, ad installare tutte le sue &lt;code&gt;gemme&lt;/code&gt;,&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; fra cui c&amp;rsquo;è anche Jekyll, nell&amp;rsquo;account dell&amp;rsquo;utente invece che a livello di sistema. Una cosa buona e giusta per separare l&amp;rsquo;installazione nativa di &lt;code&gt;Ruby&lt;/code&gt; all&amp;rsquo;interno del sistema operativo da tutto ciò che installiamo noi, permettendoci di correggere gli (inevitabili) errori senza correre il rischio di intaccare le funzioni di base del sistema operativo.&lt;/p&gt;&#xA;&lt;p&gt;A questo punto, è possibile eseguire l&amp;rsquo;installazione vera e propria di Jekyll,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ gem install jekyll&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;seguita subito dopo da un&amp;rsquo;altra gemma molto utile, &lt;a href=&#34;https://rubygems.org/gems/bundler&#34;&gt;Bundler&lt;/a&gt;,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ gem install bundler&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;che inspiegabilmente è stata completamente dimenticata nelle istruzioni per macOS .&lt;/p&gt;&#xA;&lt;p&gt;Per istruire anche &lt;code&gt;bundler&lt;/code&gt; ad installare tutto nell&amp;rsquo;account dell&amp;rsquo;utente, bisogna eseguire&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ bundle config set --local path $GEM_HOME&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Infine, se stiamo usando una macchina virtuale o un server cloud e il nostro sistema operativo principale è macOS, possiamo installare anche questa gemma,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ gem install rmate&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;che ci permetterà di usare &lt;a href=&#34;https://macromates.com/&#34;&gt;TextMate&lt;/a&gt;, che secondo me è nel complesso il miglior editor per macOS che ci sia in circolazione, per editare i file su cui si deve mettere le mani, invece di dover usare &lt;code&gt;nano&lt;/code&gt;, &lt;code&gt;vim&lt;/code&gt; o &lt;code&gt;emacs&lt;/code&gt; direttamente sulla macchina virtuale/cloud (che, avendo installata una versione server di Linux, non ha una interfaccia grafica).&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;il-primo-sito-in-jekyll&#34;&gt;Il primo sito in Jekyll&lt;/h4&gt;&#xA;&lt;p&gt;Alla fine del processo di installazione di Jekyll, tutte le guide suggeriscono di creare un nuovo sito con&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ jekyll new my-new-blog&#xA;Running bundle install in [...]/my-new-blog... &#xA;  Bundler: Resolving dependencies...&#xA;  Bundler: Bundle complete! 7 Gemfile dependencies, 30 gems now installed.&#xA;  Bundler: Use `bundle info [gemname]` to see where a bundled gem is installed.&#xA;New jekyll site installed in [...]/my-new-blog. &#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;che crea una nuova cartella &lt;code&gt;my-new-blog&lt;/code&gt; nella cartella corrente (i puntini fra parentesi quadre indicano la parte di percorso che dipende dal sistema operativo). Spostandosi nella nuova cartella e attivando il web server integrato in Jekyll,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ cd  my-new-blog&#xA;$ bundle exec jekyll serve --host=0.0.0.0&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;potremo vedere il nostro nuovo sito all&amp;rsquo;URL &lt;code&gt;http://localhost:4000&lt;/code&gt; se stiamo usando una macchina reale. Se invece stiamo usando una macchina virtuale o un server cloud, dovremo puntare il browser all&amp;rsquo;URL pubblico fornitoci dalla macchina virtuale (o server cloud), utilizzando sempre la porta 4000.&lt;/p&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-02-11-da-melabit-a-melabit-jekyll-installazione-e-configurazione-di-base/jekyll-new-site.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Niente da dire, questa procedura è utile per verificare che tutto funzioni, e poi &lt;a href=&#34;https://github.com/jekyll/minima&#34;&gt;Minima&lt;/a&gt;, il tema di default, è davvero molto pulito ed elegante. Se Minima vi basta, potete chiuderla qui, sarà sufficiente dare un titolo al sito e aggiungere i contenuti e potrete partire immediatamente con il vostro nuovo blog in Jekyll.&lt;/p&gt;&#xA;&lt;p&gt;Ma questa procedura ci dà anche una idea molto pallida di cosa si possa fare  &lt;em&gt;davvero&lt;/em&gt; con Jekyll. Perché, e questo è un limite non da poco, le funzioni di Jekyll sono  strettamente integrate con i suoi temi grafici.&lt;/p&gt;&#xA;&lt;h4 id=&#34;jekyll-e-i-temi-grafici&#34;&gt;Jekyll e i temi grafici&lt;/h4&gt;&#xA;&lt;p&gt;Minima è un esempio di tema &lt;em&gt;gem-based&lt;/em&gt;, installato al di fuori della cartella del sito e che, proprio per il fatto di separare nettamente i contenuti del sito dal suo aspetto grafico, può essere in teoria facilmente sostituito con un altro tema a &lt;em&gt;gemma&lt;/em&gt;, come quello mostrato qui sotto.&lt;/p&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2025-02-11-da-melabit-a-melabit-jekyll-installazione-e-configurazione-di-base/jekyll-new-site-gem.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Ma i temi di questo tipo sono pochi, in genere sono piuttosto minimali e, per la loro stessa natura, è più laborioso modificarli o aggiungere nuove funzioni. E quel che è peggio, spesso sono fatti per versioni ormai obsolete di Jekyll e non funzionano nelle ultime versioni.&lt;sup id=&#34;fnref:5&#34;&gt;&lt;a href=&#34;#fn:5&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;La stragrande maggioranza dei &lt;a href=&#34;http://jekyllthemes.org/&#34;&gt;temi per Jekyll&lt;/a&gt; arriva invece in un formato che integra in un&amp;rsquo;unica cartella sia i contenuti che la grafica. Una cosa molto comoda quando si trova il tema &lt;em&gt;giusto&lt;/em&gt;, ma che rende molto più complicato cambiare tema a posteriori.&lt;/p&gt;&#xA;&lt;p&gt;Installare la maggioranza dei temi per Jekyll significa di fatto installare tutto il sito che lo contiene, dandosi poi da fare per sostituire i post e le immagini preconfezionate con i nostri post e con le nostre immagini. Di conseguenza, è preferibile &lt;em&gt;prima&lt;/em&gt; scegliere un tema che ci piaccia e che supporti almeno una parte di quello che ci aspettiamo dal sito, e solo &lt;em&gt;dopo&lt;/em&gt; iniziare ad estenderne le funzioni nel modo desiderato.&lt;/p&gt;&#xA;&lt;p&gt;Ma questo sarà l&amp;rsquo;argomento della prossima puntata.&lt;/p&gt;&#xA;&lt;h4 id=&#34;e-se-jekyll-non-ci-piace-più&#34;&gt;E se Jekyll non ci piace più?&lt;/h4&gt;&#xA;&lt;p&gt;Allora dobbiamo disinstallare tutto. Il &lt;a href=&#34;https://emaxime.com/2018/how-to-uninstall-all-ruby-gems&#34;&gt;modo moderno per farlo&lt;/a&gt; è usare questo comando,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ gem uninstall --all --ignore-dependencies --executables --verbose&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;oppure, per chi ama la compattezza,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ gem uninstall -aIxV&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;dove lo switch &lt;code&gt;--all&lt;/code&gt; segnala di disinstallare tutte le gemme, mentre &lt;code&gt;--ignore-dependencies&lt;/code&gt; permette di evitare di bloccare il processo di disinstallazione quando si disinstalla una &lt;em&gt;gemma&lt;/em&gt; richiesta da un&amp;rsquo;altra &lt;em&gt;gemma&lt;/em&gt;. Il terzo switch &lt;code&gt;--executable&lt;/code&gt; serve per disinstallare gli eseguibili senza richiedere ogni volta una conferma. Infine &lt;code&gt;--verbose&lt;/code&gt; è utile per farci spiegare per filo e per segno quello che sta succedendo.&lt;/p&gt;&#xA;&lt;p&gt;Se avete seguito il consiglio iniziale di installare tutto nell&amp;rsquo;account utente non vi serviranno i privilegi di amministratore. Altrimenti avrete fatto male e per punizione dovrete anteporre &lt;code&gt;sudo&lt;/code&gt; al comando di installazione.&lt;/p&gt;&#xA;&lt;p&gt;Una volta disinstallate tutte le gemme, si potrebbe anche disinstallare &lt;code&gt;ruby&lt;/code&gt; e i pacchetti accessori, usando Homebrew per macOS oppure il gestore dei specifico per la distribuzione Linux usata. Ma con i grandi dischi attuali, vale la pena darsi tanto da fare solo per risparmiare qualche decina di MB?&lt;/p&gt;&#xA;&lt;h4 id=&#34;alla-prossima&#34;&gt;Alla prossima&lt;/h4&gt;&#xA;&lt;p&gt;L&amp;rsquo;articolo è già troppo lungo ed è meglio chiuderlo qui. Il &lt;a href=&#34;https://melabit.com/it/2025/03/01/da-melabit-a-melabit-sviluppare-un-sito-in-Jekyll/&#34;&gt;prossimo articolo&lt;/a&gt; servirà per entrare nel vivo dello sviluppo di un sito con Jekyll. A presto!&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;A causa dell&amp;rsquo;abbondanza di documentazione, con Jekyll il vero problema è riuscire a distinguere le guide davvero utili da quelle che fanno solo perdere tempo.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Da ora in poi non menzionerò più Windows, perché tutte le istruzioni necessarie a chi usa quel sistema operativo saranno identiche a quelle per Linux.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;Una &lt;em&gt;gemma&lt;/em&gt; è un programma o una libreria scritta in &lt;code&gt;Ruby&lt;/code&gt; che contiene al suo interno tutto ciò che serve per eseguirla, o per sviluppare nuovi programmi che ne sfruttano le funzioni. Le gemme vengono installate tramite il gestore dei pacchetti standard, RubyGems, il cui comando &lt;code&gt;gem&lt;/code&gt; permette di eseguire tutti i processi di installazione, aggiornamento e disinstallazione delle varie gemme.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;Naturalmente il problema non si pone per chi è già un maestro di &lt;code&gt;vim&lt;/code&gt; o &lt;code&gt;emacs&lt;/code&gt;.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:5&#34;&gt;&#xA;&lt;p&gt;E quando dico &amp;ldquo;spesso&amp;rdquo; non esagero.&amp;#160;&lt;a href=&#34;#fnref:5&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Windows? No grazie!</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2024/07/24/windows-no-grazie/</link>
      <pubDate>Wed, 24 Jul 2024 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2024/07/24/windows-no-grazie/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2024-07-24-windows-no-grazie/paulius-dragunas-ID6-VGSfdWo-unsplash.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Fonte: &lt;a href=&#34;https://unsplash.com/@paulius005&#34;&gt;Paulius Dragunas&lt;/a&gt; su &lt;a href=&#34;https://unsplash.com&#34;&gt;Unsplash&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Ogni tanto mi chiedo, piuttosto oziosamente per la verità, perché non installo mai Windows sui miei computer. Alla fine, la maggior parte delle applicazioni che uso ogni giorno è multipiattaforma, quindi gira indifferentemente sui tre principali sistemi operativi attuali (per chi fosse appena tornato da Marte, sono Linux, macOS e Windows, in ordine rigorosamente alfabetico).&lt;/p&gt;&#xA;&lt;p&gt;E poi, oggi Windows supporta anche Linux, per cui la mia fame di Terminale e di Unix potrebbe essere soddisfatta anche su quel sistema operativo.&lt;/p&gt;&#xA;&lt;p&gt;Poi leggo questo articolo su PCWorld, &lt;a href=&#34;https://www.pcworld.com/article/2379675/ways-windows-11-collects-your-data-and-what-you-can-do-about-it.html&#34;&gt;7 ways Windows 11 collects your data – and how to opt out&lt;/a&gt;, cioè &lt;em&gt;I sette modi diversi con cui Windows 11 raccoglie i tuoi dati, e come dire di no&lt;/em&gt;, e mi dico grazie, sto bene così.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Cinque ragioni</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2023/09/25/cinque-ragioni/</link>
      <pubDate>Mon, 25 Sep 2023 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2023/09/25/cinque-ragioni/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2023-09-25-cinque-ragioni/7c575e3bfe8f526376296050e2a068e1.jpg&#34; alt=&#34;&#34;&gt;&lt;br&gt;&#xA;&amp;ndash; &lt;em&gt;Fonte: &lt;a href=&#34;https://www.pinterest.it/pin/559361216190812470/&#34;&gt;Pinterest&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Il blog è stato fermo per quasi due mesi, purtroppo è stata una estate pieni di impicci casalinghi e di lavoro, e solo ora riesco ad avere il tempo per mettermi di nuovo alla tastiera a scrivere. Nel frattempo però non ho smesso di buttare giù le idee per i nuovi post, come questo qui sotto che, anche se arriva in ritardo, non ha perso la sua attualità. Di conseguenza, buona lettura!&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;L&amp;rsquo;Oscar per l&amp;rsquo;articolo più inutile dell&amp;rsquo;estate va a Thomas Rau, che ad agosto pubblica su PCWorld le &lt;a href=&#34;https://www.pcworld.com/article/2022447/windows-laptop-vs-macbook-5-reasons-pc.html&#34;&gt;Cinque ragioni convincenti per comprare un portatile con Windows invece di un MacBook&lt;/a&gt;. Traducendo letteralmente, queste sarebbero:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Un&amp;rsquo;ampia gamma di software per i portatili Windows;&lt;/li&gt;&#xA;&lt;li&gt;Un&amp;rsquo;ampia scelta di modelli diversi;&lt;/li&gt;&#xA;&lt;li&gt;I portatili Windows sono più economici;&lt;/li&gt;&#xA;&lt;li&gt;I portatili Windows sono più facili da aggiornare e riparare;&lt;/li&gt;&#xA;&lt;li&gt;Con un portatili Windows sono necessari meno adattatori, o addirittura nessuno.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Il &lt;strong&gt;motivo numero 1&lt;/strong&gt; poteva essere vero venti e più anni fa, ai tempi di &lt;a href=&#34;https://it.wikipedia.org/wiki/Mac_OS_9&#34;&gt;Mac OS 9&lt;/a&gt;, quando il Mac rappresentava davvero una piattaforma di nicchia per amatori affezionati. Ma oggi?&lt;/p&gt;&#xA;&lt;p&gt;Oggi la maggior parte del software è multipiattaforma o gira direttamente sul web, le uniche categorie di software nella quale Windows domina incontrastato sono le utility di manutenzione del sistema e gli strumenti di sicurezza (anti-virus, anti-malware, anti-phishing, anti-tutto).&lt;/p&gt;&#xA;&lt;p&gt;Bella soddisfazione! Quando devo usare un computer con Windows passo un sacco di tempo con loro, per sistemare qualcosa che non va nel sistema, quando uso macOS o Linux penso a lavorare e basta.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Per quanto riguarda i &lt;strong&gt;motivi numero 2 e 3&lt;/strong&gt; è vero, ci sono in giro un sacco di portatili con Windows di tutte le fogge e per tutte le tasche. Ma questo significa che ci sono anche un sacco di fregature, perché i portatili economici durano in genere lo spazio di un mattino, o poco più, e quelli di qualità&amp;hellip; già, sono costosi, perché non ci sono scorciatoie, la qualità, quella vera, non è gratis.&lt;/p&gt;&#xA;&lt;p&gt;E se devo spendere 1.500 o 2.000 euro per un portatile con Windows, dovendo pure accettare tutti i grattacapi che mi darà il sistema operativo, beh mi tengo stretto il mio MacBook Air o Pro e dormo più tranquillo.&lt;/p&gt;&#xA;&lt;p&gt;Il &lt;strong&gt;motivo numero 4&lt;/strong&gt; è l&amp;rsquo;unico che abbia un senso, almeno secondo me, perché purtroppo è vero che più passa il tempo e più i MacBook diventano difficili da aggiornare o da riparare.&lt;/p&gt;&#xA;&lt;p&gt;Ci sono dei motivi tecnici, perché se un processore come l&amp;rsquo;M1/M2 degli ultimi MacBook contiene in un unico blocco anche il processore grafico e la RAM, e se per tenere dietro alla velocità mostruosa del processore bisogna integrare sulla scheda madre anche i componenti della memoria di massa (l&amp;rsquo;SSD per capirci), c&amp;rsquo;è davvero poco da aggiornare, a &lt;a href=&#34;https://www.youtube.com/watch?v=apEKAY11NQs&#34;&gt;meno di non avere competenze tecniche&lt;/a&gt; molto superiori alla media.&lt;/p&gt;&#xA;&lt;p&gt;E poi ci sono dei motivi pratici, come il desiderio della maggior parte di utenti di avere dei MacBook sempre più sottili e leggeri e con una batteria che dura all&amp;rsquo;infinito, cosa che implica la necessità di rimuovere tutto ciò che non è indispensabile o che riduce le dimensioni della batteria, primi fra tutti i meccanismi che permettono di accedere facilmente all&amp;rsquo;interno del portatile.&lt;/p&gt;&#xA;&lt;p&gt;Non a caso anche i portatili con Windows stanno seguendo la stessa china, sempre più sottili, sempre più leggeri, e di conseguenza sempre più &lt;em&gt;chiusi&lt;/em&gt;.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; È una questione di fisica, piaccia o no non ci si può fare niente.&lt;/p&gt;&#xA;&lt;p&gt;E veniamo infine al &lt;strong&gt;motivo numero 5&lt;/strong&gt;. Qui non so se ridere o se piangere, perché di cavi, cavetti e adattatori siamo pieni e non sarà certo un adattatore in più o in meno a fare la differenza.&lt;/p&gt;&#xA;&lt;p&gt;E poi, non sono proprio i produttori di portatili Windows ad ostinarsi ad usare i connettori a barilotto, quelli a forma di cilindro con un foro nel mezzo di mille fogge e dimensioni diverse, invece di adottare un connettore di alimentazione standard come l&amp;rsquo;USB-C dei MacBook più recenti?&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;Per la cronaca, in parallelo all&amp;rsquo;articolo di Thomas Rau Macworld ha pubblicato le &lt;a href=&#34;https://www.macworld.com/article/2020887/macbook-windows-pc-value-resale-support-design-ecosystem.html&#34;&gt;Cinque ragioni per comprare un MacBook invece di un portatile Windows&lt;/a&gt;. Sarò di parte, ma le trovo ben più convincenti.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Al più sul Mac faccio ogni tanto una scansione manuale con &lt;a href=&#34;https://www.malwarebytes.com/&#34;&gt;Malwarebytes&lt;/a&gt;, così tanto per non perdere l&amp;rsquo;abitudine.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Ma con una durata della batteria che non può minimamente competere con quella dei MacBook. Se Intel e AMD non riusciranno a produrre in tempi brevi processori più efficienti dal punti di vista energetico, è prevedibile che anche i portatili Windows adotteranno sempre più i processori ARM, che sono gli unici in grado di garantire allo stesso tempo prestazioni elevate e consumi ridotti.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Ventoy, il boot manager per i geek curiosi - Installazione e uso</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2022/11/14/ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/</link>
      <pubDate>Mon, 14 Nov 2022 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2022/11/14/ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/</guid>
      <description>&lt;p&gt;Come dicevo nella &lt;a href=&#34;https://melabit.com/it/2022/11/08/ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/&#34;&gt;prima parte&lt;/a&gt;, Ventoy è un programma open source che fa una cosa sola, ma la fa molto bene: avviare le immagini in formato &lt;code&gt;iso&lt;/code&gt; contenute nella chiavetta USB (o nel disco SSD esterno) su cui è installato.&lt;/p&gt;&#xA;&lt;p&gt;E allora, dopo avervi incuriosito (spero!), vediamo come si installa e si usa Ventoy.&lt;/p&gt;&#xA;&lt;p&gt;Tutte le descrizioni che seguono si basano su una installazione di Ventoy in una macchina virtuale di Parallels Desktop (da 32 GB, per essere precisi). Ho usato questo sistema perché è più facile fare degli screenshot decenti, ma posso garantire che tutto quello che dirò può essere replicato al 100% su una chiavetta USB reale.&lt;/p&gt;&#xA;&lt;h4 id=&#34;installazione-di-ventoy&#34;&gt;Installazione di Ventoy&lt;/h4&gt;&#xA;&lt;p&gt;Per installare &lt;a href=&#34;https://www.ventoy.net/en/index.html&#34;&gt;Ventoy&lt;/a&gt;, la prima cosa da fare è copiare l&amp;rsquo;&lt;a href=&#34;https://github.com/ventoy/Ventoy/releases&#34;&gt;immagine &lt;code&gt;iso&lt;/code&gt;&lt;/a&gt; della versione più recente sulla chiavetta USB. A questo scopo, consiglio di usare &lt;a href=&#34;https://www.balena.io/etcher/&#34;&gt;balenaEtcher&lt;/a&gt; che funziona molto bene e gira perfettamente sulla triade Linux/macOS/Windows. In alternativa si possono usare &lt;a href=&#34;https://unetbootin.github.io/&#34;&gt;UNetbootin&lt;/a&gt; o &lt;a href=&#34;https://rufus.ie/en/&#34;&gt;Rufus&lt;/a&gt;, ma quest&amp;rsquo;ultimo gira solo su Windows.&lt;/p&gt;&#xA;&lt;p&gt;Usare balenaEtcher è facilissimo, basta lanciare il programma e seguire la procedura guidata, selezionando nella prima schermata la chiavetta USB da utilizzare,&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; e nella seconda l&amp;rsquo;immagine &lt;code&gt;iso&lt;/code&gt; di Ventoy. L&amp;rsquo;unica cosa su cui stare davvero attenti è la scelta della chiavetta. Per fortuna  balenaEtcher non ci fa sovrascrivere il disco da cui abbiamo effettuato l&amp;rsquo;avvio del sistema operativo ma, se oltre alla chiavetta USB  abbiamo altri dischi esterni, è meglio prendersi qualche momento e controllare con cura di aver scelto il disco giusto.&lt;/p&gt;&#xA;&lt;p&gt;Una volta completata la copia dell&amp;rsquo;immagine &lt;code&gt;iso&lt;/code&gt; di Ventoy, bisogna riavviare il PC dalla chiavetta USB per installare e configurare il programma. I dettagli su come avviare il computer da una unità USB cambiano da PC a PC, ma in genere si usa un &lt;a href=&#34;https://www.tomshardware.com/reviews/bios-keys-to-access-your-firmware,5732.html&#34;&gt;tasto speciale&lt;/a&gt; (quasi sempre &lt;code&gt;F2&lt;/code&gt;, &lt;code&gt;F12&lt;/code&gt; oppure &lt;code&gt;DELETE&lt;/code&gt;) per accedere al BIOS o all&amp;rsquo;UEFI e selezionare la chiavetta USB come disco di avvio principale, oppure un&amp;rsquo;altro tasto (in genere &lt;code&gt;ESC&lt;/code&gt; o &lt;code&gt;F10&lt;/code&gt;, ma ogni produttore di PC e di schede madri ha le sue idee) per far comparire un menu da cui scegliere il disco di avvio.&lt;/p&gt;&#xA;&lt;p&gt;Per pigrizia ho sempre usato Ventoy su dei normali PC e non ho mai provato ad usarlo su un Mac Intel, ma non c&amp;rsquo;è motivo perché non funzioni. In questo caso, bisogna solo ricordarsi di &lt;a href=&#34;https://melabit.com/it/2019/08/19/i-dieci-e-piu-modi-diversi-per-avviare-un-mac/&#34;&gt;avviare il Mac premendo il tasto &lt;code&gt;ALT&lt;/code&gt;&lt;/a&gt; (⌥), scegliendo come disco di avvio la chiavetta USB su cui è installato Ventoy.&lt;/p&gt;&#xA;&lt;p&gt;Ventoy usa di default il cinese come lingua dell&amp;rsquo;interfaccia. È una cosa piuttosto strana visto che è un programma destinato chiaramente ad un pubblico internazionale, ma è così.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-chinese.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-chinese.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Per fortuna è molto facile passare ad una lingua per noi più comprensibile, come l&amp;rsquo;italiano o l&amp;rsquo;inglese. Quando posso, io preferisco usare l&amp;rsquo;inglese, perché le traduzioni spesso stravolgono il significato di certi termini,&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-choose-language-english.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-choose-language-english.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-english.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-english.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;ma per chi vuole è disponibile anche l&amp;rsquo;interfaccia nella nostra lingua.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-choose-language-italian.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-choose-language-italian.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-italian.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-italian.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Arrivati a questo punto, si tratta di cliccare su &lt;code&gt;Device&lt;/code&gt; e scegliere il dispositivo su cui installare Ventoy, che chiaramente deve essere la chiavetta USB. Se sbagliate la scelta del dispositivo correte il rischio di danneggiare qualche altro disco del vostro computer, per cui fate &lt;strong&gt;molta attenzione&lt;/strong&gt; alla dimensione del dispositivo in GB, che deve corrispondere a quella della vostra chiavetta.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-device.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-device.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Se per qualche motivo non trovate la chiavetta USB fra i dispositivi elencati, cliccate sulla voce di menu Opzioni e selezionate &amp;ldquo;Visualizza tutti i dispositivi&amp;rdquo;. Ora la chiavetta dovrebbe comparire senza problemi.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-no-device.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-no-device.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-options.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-options.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-all-devices.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-all-devices.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-device.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-device.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Bisogna ora premete il tasto &lt;code&gt;Install&lt;/code&gt; per installare Ventoy sulla chiavetta. Comparirà, e per ben due volte!, un messaggio che ci avvisa che la chiavetta sarà formattata, distruggendone tutto il contenuto. Ma il contenuto della chiavetta è stato già cancellato quando abbiamo copiato l&amp;rsquo;&lt;code&gt;iso&lt;/code&gt; con balenaEtcher, per cui mi pare un avviso inutile.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-installation.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-installation.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-installation-double-check.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-first-boot-installation-double-check.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Bastano pochi secondi e la chiavetta USB è pronta per essere usata.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-installation-done.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-installation-done.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Il processo di installazione crea due partizioni sulla chiavetta USB: una prima partizione, denominata &lt;code&gt;VentoyLiveCD&lt;/code&gt;, contenente il programma vero e proprio, che viene eseguito automaticamente avviando il PC dalla chiavetta (in realtà, come dice lo stesso nome, più che un programma si tratta di una mini distribuzione &lt;em&gt;live&lt;/em&gt; di Linux), e un&amp;rsquo;altra partizione, &lt;code&gt;Ventoy&lt;/code&gt;, che occupa il resto della chiavetta e che conterrà le immagini &lt;code&gt;iso&lt;/code&gt; dei sistemi operativi.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-partitions.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-partitions.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;copia-delle-immagini-iso-sulla-chiavetta&#34;&gt;Copia delle immagini &lt;code&gt;iso&lt;/code&gt; sulla chiavetta&lt;/h4&gt;&#xA;&lt;p&gt;A questo punto bisogna spegnere il computer, togliere la chiavetta USB e riavviare il sistema operativo principale, perché prima di andare avanti con Ventoy bisogna copiare sulla chiavetta le immagini in formato &lt;code&gt;iso&lt;/code&gt; (ma anche &lt;a href=&#34;https://melabit.com/it/2022/11/08/ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/&#34;&gt;in altri formati&lt;/a&gt;) che vogliamo provare.&lt;/p&gt;&#xA;&lt;p&gt;La chiavetta continua ad apparire al sistema operativo come una comunissima unità USB, con l&amp;rsquo;unica differenza che ora, inserendola di nuovo in una porta del computer, compariranno due dischi esterni diversi, uno corrispondente alla partizione che contiene i file del programma e l&amp;rsquo;altro da usare per le immagini &lt;code&gt;iso&lt;/code&gt;. Distinguerli è facilissimo, il disco che ci interessa si chiama solo &lt;code&gt;Ventoy&lt;/code&gt; ed è in questo momento completamente vuoto. L&amp;rsquo;altro disco, &lt;code&gt;VentoyLiveCD&lt;/code&gt;, invece, non va mai toccato, anzi è preferibile espellerlo ogni volta che si copiano delle nuove &lt;code&gt;iso&lt;/code&gt; sulla chiavetta (su macOS e Linux è sempre possibile espellere una sola partizione, non sono sicuro al 100% che si possa fare la stessa cosa con Windows).&lt;/p&gt;&#xA;&lt;p&gt;Dopo aver copiato sul disco &lt;code&gt;Ventoy&lt;/code&gt; le &lt;code&gt;iso&lt;/code&gt; che ci interessano, bisogna riavviare di nuovo il computer, scegliendo questa volta la chiavetta USB come disco di avvio. Comparirà un menu con la lista delle &lt;code&gt;iso&lt;/code&gt; presenti sulla chiavetta, più o meno come nell&amp;rsquo;immagine qui sotto.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-iso-to-test.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-iso-to-test.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;uso-pratico-di-ventoy&#34;&gt;Uso pratico di Ventoy&lt;/h4&gt;&#xA;&lt;p&gt;Fra tutte le immagini in formato &lt;code&gt;iso&lt;/code&gt; presenti sulla mia chiavetta, scelgo di avviare &lt;a href=&#34;https://elementary.io/&#34;&gt;Elementary OS&lt;/a&gt;, che è una delle distribuzioni di Linux più curate dal punto di vista grafico e che non a caso è fortemente ispirata ai canoni visivi di macOS. Per farlo mi basta selezionare, come si vede nella immagine precedente, la distribuzione con i tasti freccia e premere &lt;code&gt;Invio&lt;/code&gt;. Comparirà una prima schermata che mi permette di scegliere se provare o installare Elementary OS, oppure se accedere alle opzioni avanzate.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-booting-1.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-booting-1.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Se non faccio nulla, dopo alcuni secondi di attesa inizierà il classico processo di avvio di Linux, con il mare di scritte che scorrono velocemente sullo schermo,&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-booting-2.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-booting-2.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-booting-3.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-booting-3.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;alla fine del quale comparirà una prima schermata di configurazione di base di Elementary OS, dove potremo scegliere la lingua e la tastiera. Io, come al solito, scelgo l&amp;rsquo;Inglese/USA, ma con tastiera italiana.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-welcome.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-welcome.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Immediatamente dopo Elementary OS mi chiederà se voglio installare o solo provare il sistema operativo.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-try-or-install.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-try-or-install.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Io scelgo di provarlo, e poco dopo compare il desktop in tutta la sua gloria. Niente però mi impedisce di usare Ventoy per installare, invece che solo provare, Elementary OS (o una qualunque delle altre &lt;code&gt;iso&lt;/code&gt; contenute sulla chiavetta) sul disco rigido del computer.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-desktop.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-desktop.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Una volta finita la prova, posso semplicemente spegnere il sistema operativo &lt;em&gt;live&lt;/em&gt;, annullando tutte le modifiche al sistema e tornando di nuovo alla schermata iniziale di Ventoy.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-shutdown-1.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-shutdown-1.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-shutdown-2.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-elementary-os-shutdown-2.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Quanto detto vale per qualunque altra distribuzione di Linux supportata da Ventoy (cioè quasi tutte, o almeno quasi tutte quelle degne di essere usate), come si può vedere nelle schermate qui sotto riservate a &lt;a href=&#34;https://www.bunsenlabs.org/&#34;&gt;BunsenLabs Linux&lt;/a&gt;, un&amp;rsquo;altra distribuzione di Linux che mi piace molto,&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-lithium-boot-screen.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-lithium-boot-screen.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-lithium-desktop-info.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-lithium-desktop-info.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-lithium-desktop.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-lithium-desktop.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;e che (ma qui divago un po&amp;rsquo;) ha la particolarità dei menu che compaiono alla pressione del tasto destro del mouse in corrispondenza della posizione del puntatore; una funzione ormai desueta (dovrebbe essere stata introdotta in &lt;a href=&#34;https://en.wikipedia.org/wiki/NeXTSTEP&#34;&gt;NeXTSTEP&lt;/a&gt;, il sistema operativo progenitore di Mac OS X e macOS) ma che, una volta fatta l&amp;rsquo;abitudine, si dimostra una vera comodità.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-lithium-menu.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-lithium-menu.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Il discorso fatto finora può essere ripetuto pari pari tutte le altre distribuzioni di Linux supportate da Ventoy, non solo per quelle di nicchia come quelle mostrate finora, ma anche per le distribuzioni più conosciute, come è senza dubbio &lt;a href=&#34;https://ubuntu.com/&#34;&gt;Ubuntu&lt;/a&gt;. Le immagini che seguono mostrano la sequenza di avvio della &lt;em&gt;live&lt;/em&gt; di Ubuntu dalla chiavetta di Ventoy, partendo dal menu di avvio di Grub, per arrivare alla scelta se provare o installare Ubuntu e fino all&amp;rsquo;immagine del Desktop.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-ubuntu-booting.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-ubuntu-booting.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-ubuntu-try-or-install.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-ubuntu-try-or-install.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-ubuntu-try.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-ubuntu-try.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-ubuntu-desktop.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-ubuntu-desktop.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ma quanto detto vale anche per sistemi operativi meno diffusi come &lt;a href=&#34;https://www.freebsd.org/&#34;&gt;FreeBSD&lt;/a&gt;, uno dei tanti derivati da BSD Unix, a dimostrazione dell&amp;rsquo;estrema flessibilità di Ventoy.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-freebsd-booting.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-freebsd-booting.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-freebsd-desktop.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-freebsd-desktop.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;e-windows&#34;&gt;E Windows?&lt;/h4&gt;&#xA;&lt;p&gt;Chiaramente possiamo usare la chiavetta di Ventoy anche per installare Windows, anzi probabilmente è proprio questo lo scenario di uso più comune. Come già notato nella &lt;a href=&#34;https://melabit.com/it/2022/11/08/ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/&#34;&gt;prima parte&lt;/a&gt;, in questo caso il vantaggio principale è poter avere a disposizione, in un&amp;rsquo;unica unità USB, le &lt;code&gt;iso&lt;/code&gt; di tutte le versioni di Windows che ci potrebbero servire, potendo scegliere con comodità di volta in volta quale installare.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-windows-10-startup.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-windows-10-startup.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-windows-10-installation.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-windows-10-installation.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Inutile dire che potremo solo &lt;strong&gt;installare&lt;/strong&gt; Windows, non provarlo &lt;em&gt;live&lt;/em&gt; come si può fare con tante distribuzioni di Linux. Ma non si può avere tutto nella vita.&lt;/p&gt;&#xA;&lt;h4 id=&#34;gli-altri-strumenti-integrati-in-ventoy&#34;&gt;Gli altri strumenti integrati in Ventoy&lt;/h4&gt;&#xA;&lt;p&gt;Guardando con attenzione la schermata iniziale di Ventoy si nota la presenza di alcune opzioni attivabili con i tasti funzione della tastiera del PC, oltre alla schermata di aiuto che si richiama con il tasto &lt;code&gt;h&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-iso-to-test.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-iso-to-test.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-help.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-help.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;La prima opzione, che si richiama con &lt;code&gt;F1&lt;/code&gt;, non ho mai avuto bisogno di usarla e non so bene se e quanto sia efficace (ma l&amp;rsquo;utilità di &lt;code&gt;F1&lt;/code&gt; è &lt;a href=&#34;https://www.ventoy.net/en/doc_memdisk.html&#34;&gt;spiegato bene qui&lt;/a&gt;). &lt;code&gt;F2&lt;/code&gt; invece permette di elencare le &lt;code&gt;iso&lt;/code&gt; salvate sulla chiavetta, mentre &lt;code&gt;F3&lt;/code&gt; cambia la modalità di visualizzazione dell&amp;rsquo;elenco di &lt;code&gt;iso&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-iso-to-test.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-iso-to-test.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Molto più interessante è &lt;code&gt;F4&lt;/code&gt;, con cui è possibile eseguire una scansione del disco locale alla ricerca di installazioni di Windows o Linux, che Ventoy cercherà di avviare con i suoi strumenti integrati (ed è proprio qui che Ventoy si comporta come un &lt;a href=&#34;https://melabit.com/it/2022/11/08/ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/#comments&#34;&gt;boot manager&lt;/a&gt; generico, particolarmente utile quando per qualche motivo Windows, o magari anche Linux, si rifiuta di partire).&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-f4.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-f4.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Con il tasto &lt;code&gt;F5&lt;/code&gt;, infine, si accede al menu &lt;code&gt;Tools&lt;/code&gt;, che permette di configurare il programma cambiando la tastiera, la risoluzione dello schermo, il tema e così via. Non sono cose fondamentali per uno strumento come Ventoy, però ogni tanto possono servire, quindi è comodo che ci siano.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-f5.png&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-14-ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/ventoy-test-f5.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusioni&#34;&gt;Conclusioni&lt;/h4&gt;&#xA;&lt;p&gt;In questo articolo ho cercato di descrivere dettagliatamente come usare Ventoy. L&amp;rsquo;ho fatto in modo molto puntiglioso, lo ammetto, perché programmi di questo tipo, se usati in modo sbagliato, possono fare gravi danni al computer. Si pensi a cosa può succedere se si sceglie il disco sbagliato al momento dell&amp;rsquo;installazione di Ventoy sulla chiavetta.&lt;/p&gt;&#xA;&lt;p&gt;Ma c&amp;rsquo;è anche un altro motivo: utility di questo tipo non sono quasi mai di uso intuitivo e richiedono la lettura attenta della documentazione per essere usate al meglio (io stesso, la prima volta, ci ho messo un po&amp;rsquo; a capire il meccanismo di installazione e di uso di Ventoy, e chiaramente non mi aveva sfiorato l&amp;rsquo;idea di leggere prima il manuale!). Un articolo come questo può rivelarsi una introduzione sufficiente all&amp;rsquo;uso di Ventoy  per i normali scenari di uso, riservando la &lt;a href=&#34;https://www.ventoy.net/en/doc_start.html&#34;&gt;documentazione ufficiale&lt;/a&gt; alla soluzione dei casi particolari.&lt;/p&gt;&#xA;&lt;h4 id=&#34;ancora-una-cosa&#34;&gt;Ancora una cosa&amp;hellip;&lt;/h4&gt;&#xA;&lt;p&gt;Prima di finire, segnalo che in rete si può trovare uno strumento integrato di diagnostica e riparazione del sistema operativo basato su Ventoy, che contiene anche una versione portatile di Windows 10 (ringrazio l&amp;rsquo;amico MailMaster C per il link). Lo strumento si chiama &lt;a href=&#34;https://medicatusb.com/&#34;&gt;MediCat USB&lt;/a&gt; e in teoria potrebbe essere utile per riparare una installazione di Windows non più funzionante.&lt;/p&gt;&#xA;&lt;p&gt;Diciamo però che non mi convince: il sito è realizzato in modo dilettantesco, la documentazione è assente, non c&amp;rsquo;è uno straccio di prova che i tool integrati siano quelli originali e non siano invece infettati da malware di vario tipo (mai sentito parlare di &lt;em&gt;hash&lt;/em&gt;?). Di conseguenza, io non mi fiderei a usarlo e preferirei costruirmi uno strumento analogo &lt;em&gt;in casa&lt;/em&gt;, scaricando le varie utility dalle fonti originali. A tempo perso potrei cercare di costruire una lista di ciò che può essere utile, spiegando come si può integrare il tutto attraverso Ventoy, ma temo che non avverrà a breve.&lt;/p&gt;&#xA;&lt;p&gt;In ogni caso sono convinto che, in caso di malfunzionamenti sufficientemente gravi, sia meglio reinstallare Windows da zero piuttosto che provare a riparare una installazione che non funziona. Questo approccio permette tante volte di risparmiare tempo, riparare una installazione di Windows è in molti casi una impresa disperata, con il vantaggio aggiuntivo di partire di nuovo da un sistema &lt;em&gt;fresco&lt;/em&gt;, con meno aggiornamenti da una versione all&amp;rsquo;altra di Windows, meno driver che magari non servono più, meno programmi che si avviano da soli, tutte cose che con Windows non guastano mai.&lt;/p&gt;&#xA;&lt;p&gt;Resta il problema di come recuperare i documenti e tutti i file vari contenuti nelle cartelle dell&amp;rsquo;utente (o degli utenti) del PC. Ma per questo compito è molto più veloce, e soprattutto affidabile, usare Linux piuttosto che Windows.&lt;/p&gt;&#xA;&lt;p&gt;L&amp;rsquo;ho fatto più volte per amici e colleghi, in alcuni casi mi trovavo di fronte a persone terrorizzate di perdere tutti i loro dati, e tutto è sempre finito bene. Una buona distribuzione &lt;em&gt;live&lt;/em&gt; di Linux &amp;ndash; consiglio in questo caso &lt;a href=&#34;https://ubuntu.com/&#34;&gt;Ubuntu&lt;/a&gt; che è in grado di riconoscere in modo molto completo l&amp;rsquo;hardware del PC &amp;ndash; avviata tramite una chiavetta preparata ad hoc o, meglio ancora, usando Ventoy, può permettere di accedere facilmente al disco del PC e di copiare in tutta tranquillità i dati utente su un disco esterno o su un NAS. Fatto questo, reinstallare Windows da zero e ritrasferire i dati utente dal disco esterno al PC, consente di tornare operativi in poco tempo e senza troppi patemi d&amp;rsquo;animo.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Si può anche usare anche un disco SSD esterno, guadagnando parecchio in velocità di avvio, ma da ora in poi non lo ripeterò più.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Le directory &lt;code&gt;.fseventsd&lt;/code&gt; e &lt;code&gt;.Spotlight-V100&lt;/code&gt; sono create automaticamente da macOS e sono normalmente invisibili nel Finder. Qui non servono e possono tranquillamente essere cancellate.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Ventoy, il boot manager per i geek curiosi - Introduzione</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2022/11/08/ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/</link>
      <pubDate>Tue, 08 Nov 2022 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2022/11/08/ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://www.ventoy.net/&#34;&gt;Ventoy&lt;/a&gt; è senza dubbio un software di nicchia, buono soprattutto per i tecnici e i &lt;em&gt;geek&lt;/em&gt; curiosi di esplorare il funzionamento dei sistemi operativi. Non serve a tanti, ma se serve diventa subito indispensabile.&lt;/p&gt;&#xA;&lt;h4 id=&#34;cosè-ventoy&#34;&gt;Cos&amp;rsquo;è Ventoy?&lt;/h4&gt;&#xA;&lt;p&gt;Ventoy è un &lt;a href=&#34;https://github.com/ventoy/Ventoy&#34;&gt;software open source&lt;/a&gt; con cui si può creare una chiavetta USB da cui eseguire gli installatori dei principali sistemi operativi a partire dalle loro immagini in formato &lt;code&gt;iso&lt;/code&gt; (ma anche da quelle in formati meno comuni, come &lt;code&gt;wim&lt;/code&gt;, &lt;code&gt;img&lt;/code&gt; o &lt;code&gt;vhd&lt;/code&gt;). Sono &lt;a href=&#34;https://www.ventoy.net/en/isolist.html&#34;&gt;supportate&lt;/a&gt; tutte le versioni di Windows dalla 7 in poi, così come un gran numero di distribuzioni di Linux e di derivati di BSD Unix, ChromeOS e perfino i principali virtualizzatori &lt;em&gt;bare-metal&lt;/em&gt;.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;In pratica, se vogliamo installare un sistema operativo su un PC, invece di trasferirne l&amp;rsquo;immagine &lt;code&gt;iso&lt;/code&gt; su una chiavetta dedicata, usando strumenti come &lt;a href=&#34;https://www.balena.io/etcher/&#34;&gt;balenaEtcher&lt;/a&gt; o &lt;a href=&#34;https://unetbootin.github.io/&#34;&gt;UNetbootin&lt;/a&gt; (entrambi multipiattaforma) o eventualmente &lt;a href=&#34;https://rufus.ie/en/&#34;&gt;Rufus&lt;/a&gt; (solo per Windows), possiamo copiare direttamente l&amp;rsquo;immagine &lt;code&gt;iso&lt;/code&gt; sulla chiavetta USB dove abbiamo installato Ventoy (i dettagli li troverete la &lt;a href=&#34;https://melabit.com/it/2022/11/14/ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/&#34;&gt;prossima volta&lt;/a&gt;), avviare il computer da questa chiavetta e lanciare l&amp;rsquo;installatore direttamente da lì.&lt;/p&gt;&#xA;&lt;p&gt;Cosa cambia? Niente se lo facciamo una sola volta, parecchio se dobbiamo lavorare su più macchine, se vogliamo provare le nuove distribuzioni di Linux o di BSD o, in generale, se ci piace &lt;em&gt;giocare&lt;/em&gt; con queste cose.&lt;/p&gt;&#xA;&lt;p&gt;Perché, a differenza del metodo tradizionale, una chiavetta abbastanza grande può contenere anche decine di file &lt;code&gt;iso&lt;/code&gt; diversi, da lanciare a seconda della necessità o dell&amp;rsquo;estro del momento. Inutile dire che al posto di una chiavetta potremmo anche usare un disco SSD esterno, anche da soli 128 GB, guadagnando parecchio nella velocità di avvio delle varie &lt;code&gt;iso&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p style=&#34;border-style:solid; border-width: medium; border-color:coral; background-color:lightyellow; padding:1em;&#34;&gt;&#xA;Sia che usiate una chiavetta o un disco SSD esterno, è sempre conveniente astenersi dai modelli di marche sconosciute o poco affidabili. È vero che per questo uso specifico l&#39;affidabilità non è fondamentale, però è altrettanto vero che, se si guasta la chiavetta, bisogna ripetere da zero tutto il processo di installazione/configurazione di Ventoy e, soprattutto, la copia delle &lt;code&gt;iso&lt;/code&gt;.  È una bella perdita di tempo, per cui è meglio non rischiare solo per risparmiare qualche euro.[^2]&#xA;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-08-ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/ventoy-windows-10-startup.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-08-ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/ventoy-windows-10-installation.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Immagini dell&amp;rsquo;installatore di Windows 10, eseguito da una chiavetta USB con installato Ventoy.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ventoy può naturalmente essere usato per installare Windows, ma diventa ancora più utile con le distribuzioni di Linux o di BSD, i cui installatori ormai eseguono quasi sempre una versione &lt;em&gt;Live&lt;/em&gt; del sistema operativo, con la quale è possibile provare le funzioni della distribuzione senza rischiare di far danni, sicuri che tutte le modifiche saranno cancellate al riavvio.&lt;/p&gt;&#xA;&lt;p&gt;In questo caso, il vantaggio principale di Ventoy risiede nel fatto che si può usare una sola chiavetta per eseguire tutte le distribuzioni Live che vogliamo, senza dover riavviare ogni volta il sistema operativo principale solo per creare una chiavetta USB &lt;em&gt;ad hoc&lt;/em&gt; con la nuova distribuzione da provare. Una volta trovato ciò che ci aggrada, si può anche decidere di installarlo permanentemente sul computer sempre utilizzando Ventoy.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-08-ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/ventoy-elementary-os-try-or-install.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-08-ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/ventoy-lithium-boot-screen.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-08-ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/ventoy-lithium-desktop-info.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Esempi di distribuzioni Live di Linux eseguite tramite Ventoy.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Non c&amp;rsquo;è bisogno di dire che Ventoy è uno strumento fondamentale per chi fa assistenza tecnica e si trova a dover installare (o reinstallare) di continuo le varie versioni di Windows sui computer dei clienti, o che deve recuperare i dati da un computer che non si avvia più o che è infestato da virus e malware vario. Con una sola chiavetta può avere a disposizione tutte le &lt;code&gt;iso&lt;/code&gt; di cui ha bisogno, scegliendo di volta in volta lo strumento migliore da utilizzare in quel caso specifico.&lt;/p&gt;&#xA;&lt;h4 id=&#34;boot-manager&#34;&gt;Boot manager&lt;/h4&gt;&#xA;&lt;p&gt;Chi ha qualche capello bianco avrà riconosciuto in Ventoy il meccanismo di funzionamento di un boot manager.&lt;/p&gt;&#xA;&lt;p style=&#34;border-style:solid; border-width: medium; border-color:coral; background-color:lightyellow; padding:1em;&#34;&gt;&#xA;I boot manager hanno avuto il loro periodo di massima popolarità fra la fine degli anni &#39;90 e i primi anni 2000, quando era diventato normale per tanti utenti installare sul proprio PC una distribuzione di Linux (e spesso più di una) in parallelo all&#39;onnipresente Windows. Le versioni di Windows di quegli anni non permettevano di avviare altri sistemi operativi oltre a sé stessi, per cui era necessario usare dei boot manager di terze parti per riuscire ad usare indifferentemente Linux o Windows sulla stessa macchina. Io, ad esempio, usavo &lt;a href=&#34;https://gag.sourceforge.net&#34;&gt;GAG&lt;/a&gt;, che era molto flessibile e avviava praticamente tutto.&#xA;&lt;/br&gt;&#xA;Oggi la situazione è cambiata: la riduzione del costo dei computer associata alla disponibilità di processori potenti e di memorie di massa a stato solido velocissime ha reso molto più pratico dedicare ogni PC ad un solo scopo, oppure virtualizzare più sistemi operativi su una singola macchina, evitando così i noiosissimi riavvii da un sistema operativo all&#39;altro.&#xA;&lt;/br&gt;&#xA;Ma questo non significa che i boot manager di terze parti oggi siano caduti in disuso, anzi. Fra questi, il più noto è di sicuro &lt;a href=&#34;https://www.gnu.org/software/grub/&#34;&gt;GNU GRUB&lt;/a&gt;, usato praticamente da tutte le distribuzioni di Linux (ma GRUB è anche in grado di avviare qualunque altro sistema operativo installato sul computer). Poi ci sono &lt;a href=&#34;https://github.com/CloverHackyColor/CloverBootloader&#34;&gt;Clover&lt;/a&gt; e &lt;a href=&#34;https://macos86.gitbook.io/guida-opencore/introoc&#34;&gt;OpenCore&lt;/a&gt;, ampiamente utilizzati  nel mondo &lt;a href=&#34;https://hackintosh.com/&#34;&gt;Hackintosh&lt;/a&gt; per avviare macOS installato su un semplice PC. Chi usa Windows e vuole una maggiore flessibilità può utilizzare &lt;a href=&#34;https://neosmart.net/EasyBCD&#34;&gt;EasyBCD&lt;/a&gt; al posto dello strumento di avvio nativo, che definire limitato è poco.&#xA;&lt;/p&gt;&#xA;&lt;p&gt;E non si sbaglia, Ventoy si dimostra utilissimo anche in questo campo, perché la stessa chiavetta dove è installato Ventoy permette di avviare un computer su cui Windows (o Linux) si rifiuta di partire, eseguendo una ricerca a basso livello dei sistemi operativi installati sul disco, come si può vedere nell&amp;rsquo;immagine qui sotto. Con Linux succede di rado (e comunque GRUB riesce quasi sempre a metterci una pezza), ma per chi usa Windows è una manna dal cielo.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2022-11-08-ventoy-il-boot-manager-per-i-geek-curiosi-introduzione/ventoy-boot-manager.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Ventoy può anche essere usato per avviare un sistema operativo che si rifiuta di partire.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;alternative-a-ventoy&#34;&gt;Alternative a Ventoy?&lt;/h4&gt;&#xA;&lt;p&gt;L&amp;rsquo;unica alternativa a Ventoy che io conosca è &lt;a href=&#34;https://www.youtube.com/watch?v=ZSywLblIYa0&#34;&gt;questo disco SSD esterno&lt;/a&gt;, con aggiunto un piccolo schermo e una tastiera con cui scegliere l&amp;rsquo;&lt;code&gt;iso&lt;/code&gt; da avviare. Un bell&amp;rsquo;oggettino, non c&amp;rsquo;è che dire, che proprio per la sua stessa esistenza dimostra quanto sia sentita l&amp;rsquo;esigenza di avviare con facilità le &lt;code&gt;iso&lt;/code&gt; di svariati sistemi operativi. Purtroppo il &lt;a href=&#34;https://www.amazon.it/iodd-Mini-Secure-encrypted-Drive/dp/B07Y465VX1/&#34;&gt;prezzo non proprio popolare&lt;/a&gt; (almeno rispetto a quello che fa e alla capacità del disco) lo rende adatto solo a chi si occupa professionalmente di assistenza tecnica.&lt;/p&gt;&#xA;&lt;p&gt;Per usare Ventoy, invece, non è necessario essere dei professionisti o avere il budget di un professionista. Se volete provare facilmente più di una distribuzione di Linux o se siete l&amp;rsquo;amico che tutti chiamano quando hanno un guaio al computer, Ventoy diventa subito uno strumento praticamente indispensabile.&lt;/p&gt;&#xA;&lt;p&gt;Come introduzione  a Ventoy può bastare. Nella &lt;a href=&#34;https://melabit.com/it/2022/11/14/ventoy-il-boot-manager-per-i-geek-curiosi-installazione-e-uso/&#34;&gt;seconda parte&lt;/a&gt; i dettagli dell&amp;rsquo;installazione e dell&amp;rsquo;uso di questo strumento. A presto!&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Argomento molto interessante di per sé, che spero di riuscire a trattare qui prima o poi.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;C&amp;rsquo;è gente che si convince che il computer sia da buttare solo perché Windows non si avvia. E non esagero affatto.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Corsi e ricorsi</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2021/05/16/corsi-e-ricorsi/</link>
      <pubDate>Sun, 16 May 2021 12:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2021/05/16/corsi-e-ricorsi/</guid>
      <description>&lt;p&gt;Pensieri oziosi della domenica.&lt;/p&gt;&#xA;&lt;p&gt;Nel 1984 il Macintosh stupì il mondo con la sua interfaccia grafica, che permetteva di interagire con il computer tramite il mouse, i menu e le icone sullo schermo, invece di dover inserire laboriosamente i comandi arcani del DOS tramite la tastiera.&lt;/p&gt;&#xA;&lt;p&gt;Oggi però la vera potenza del computer è tornata ad esprimersi tramite il Terminale, con cui si possono &lt;a href=&#34;https://www.commandlinefu.com&#34;&gt;fare tantissime cose&lt;/a&gt; ed in modo così efficiente che, al confronto, l&amp;rsquo;interfaccia grafica sembra un reperto del passato.&lt;/p&gt;&#xA;&lt;p&gt;E dato che il Terminale è presente nativamente solo in Linux e macOS, anche Microsoft, per non perdere completamente il mondo degli sviluppatori e degli utenti più avanzati, dopo aver scopiazzato a piene mani l&amp;rsquo;interfaccia grafica del Macintosh nel suo Windows, ha ripetuto l&amp;rsquo;opera inserendo in Windows 10 uno strumento che emula un &lt;a href=&#34;https://docs.microsoft.com/it-it/windows/wsl/about&#34;&gt;ambiente Linux completo&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2021-05-16-corsi-e-ricorsi/1st_floor_computer_70s.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; Fonte: &lt;a href=&#34;http://toto.lib.unca.edu/findingaids/photo/national_climatic_data_center/NCDC_interior.htm&#34;&gt;National Climatic Data Center&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Dalla fine degli anni &amp;lsquo;70 e per tutti gli anni &amp;lsquo;80 il mondo del &lt;em&gt;computing&lt;/em&gt; era diviso in rigorosamente in due: da un lato i computer &lt;em&gt;seri&lt;/em&gt;, grossi &lt;em&gt;mainframe&lt;/em&gt; nascosti in stanze condizionate e gestiti da sacerdoti in camice bianco, a cui solo pochi fortunati potevano accedere collegandosi in remoto tramite un videoterminale &lt;em&gt;stupido&lt;/em&gt;; dall&amp;rsquo;altro i &lt;em&gt;personal computer&lt;/em&gt;, oggetti costosi e fortemente limitati ma che permettevano a tutti di usare un computer  in casa o in ufficio. In pochi anni i personal computer sono cresciuti e hanno soppiantato i mainframe, rimasti solo in qualche azienda o centro di ricerca avanzato.&lt;/p&gt;&#xA;&lt;p&gt;Oggi che i personal computer sono ultrapotenti e alla portata di tutti, stanno diventando centrali i servizi &lt;em&gt;cloud&lt;/em&gt; come Amazon Web Services (AWS) o Google Cloud e Microsoft Azure, che permettono di usare dei sistemi di calcolo potenti e adattabili alle necessità del momento senza doversi sobbarcare dell&amp;rsquo;acquisto e della gestione di computer fisici.&lt;/p&gt;&#xA;&lt;p&gt;Magari fra qualche anno il modo normale di usare un computer sarà quello di collegarsi in remoto  ad un sistema cloud tramite un semplice portatile o tablet. E il cerchio si chiuderà un&amp;rsquo;altra volta.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Regali brutti</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2020/12/20/regali-brutti/</link>
      <pubDate>Sun, 20 Dec 2020 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2020/12/20/regali-brutti/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2020-12-20-regali-brutti/windows_store_hero.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;&lt;a href=&#34;https://gear.xbox.com/pages/windows&#34;&gt;Windows Holiday Sweater&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Dovete fare un regalo a qualcuno che non sopportate? Un collega fastidioso? L&amp;rsquo;amico che vi prende sempre in giro perché usate il Mac? Un ex-fidanzato che non si da pace? L&amp;rsquo;imbecille che si ostina a volervi parlare a dieci centimetri di distanza senza mascherina? Regalategli uno di questi &lt;a href=&#34;https://gear.xbox.com/pages/windows&#34;&gt;#WindowsUglySweater&lt;/a&gt; (maglioni brutti di Windows, mai definizione fu più azzeccata) e ve lo toglierete di torno per sempre!&lt;/p&gt;&#xA;&lt;p&gt;E di questi personaggi ce ne devono essere fin troppi in giro, perché tutti i maglioni sono già esauriti.&lt;/p&gt;&#xA;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2020-12-20-regali-brutti/01_windows_mspaint_folded.jpg&#34; alt=&#34;&#34; class=&#34;gallery-3-left&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2020-12-20-regali-brutti/01_windows_xp_folded.jpg&#34; alt=&#34;&#34; class=&#34;gallery-3-center&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2020-12-20-regali-brutti/01_windows_95_folded.jpg&#34; alt=&#34;&#34; class=&#34;gallery-3-right&#34;&gt;</description>
    </item>
    <item>
      <title>Il CNR è anche questo: un po&#39; di codice</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2020/12/01/il-cnr-e-anche-questo-un-po-di-codice/</link>
      <pubDate>Tue, 01 Dec 2020 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2020/12/01/il-cnr-e-anche-questo-un-po-di-codice/</guid>
      <description>&lt;img src=&#34;https://imgs.xkcd.com/comics/good_code.png&#34; alt=&#34;&#34; title=&#34;XKCD, Good code&#34;&gt;&lt;ul&gt;&#xA;&lt;li&gt;&lt;em&gt;XKCD, &lt;a href=&#34;https://xkcd.com/844/&#34;&gt;Good code&lt;/a&gt;&lt;/em&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Per concludere nel miglior modo possibile questa serie di articoli (qui la &lt;a href=&#34;https://melabit.wordpress.com/2020/10/25/il-cnr-e-anche-questo-concorsi-senza-frontiere/&#34;&gt;prima&lt;/a&gt; e la &lt;a href=&#34;https://melabit.wordpress.com/2020/11/08/il-cnr-e-anche-questo-concorsi-in-latex/&#34;&gt;seconda&lt;/a&gt; parte), cosa ci può essere di meglio di un po&amp;rsquo; di codice?&lt;/p&gt;&#xA;&lt;h4 id=&#34;estrarre-il-testo-da-un-file-pdf&#34;&gt;Estrarre il testo da un file PDF&lt;/h4&gt;&#xA;&lt;p&gt;Cominciamo dallo script in R, &lt;code&gt;pdf2csv.R&lt;/code&gt;, che estrae il testo da un file PDF, (che in questo caso specifico ho usato per &lt;a href=&#34;https://melabit.wordpress.com/2020/11/08/il-cnr-e-anche-questo-concorsi-in-latex/&#34;&gt;estrarre i dati&lt;/a&gt; dalla domanda di partecipazione ad un concorso precedente). Qui sotto trovate l&amp;rsquo;immagine dello script, realizzata con &lt;a href=&#34;https://carbon.now.sh/&#34;&gt;Carbon&lt;/a&gt; (perché così è molto più bello), su GitHub c&amp;rsquo;è il &lt;a href=&#34;https://github.com/sabinomaggi/melabit/tree/main/un-po-di-codice&#34;&gt;sorgente vero e proprio&lt;/a&gt;, per chi voglia provare ad usarlo.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2020/11/pdf2csv-1.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Per eseguire lo script è necessario aver installato sul proprio computer,  non importa se è un Mac o un PC con Linux o Windows, &lt;a href=&#34;https://www.r-project.org/&#34;&gt;l&amp;rsquo;ambiente R&lt;/a&gt; (in questo momento è disponibile la versione 4.0.3), meglio ancora se accompagnato da &lt;a href=&#34;https://rstudio.com/products/rstudio/&#34;&gt;RStudio Desktop&lt;/a&gt;, che è di gran lunga il migliore sistema integrato di sviluppo (IDE) che abbia mai usato, oltre che uno strumento efficacissimo per affacciarsi all&amp;rsquo;uso di R.&lt;/p&gt;&#xA;&lt;p&gt;Il codice è molto semplificato, ho tolto tutto ciò che non è strettamente necessario a far funzionare lo script. La chiave di tutto è la libreria &lt;a href=&#34;https://cran.r-project.org/web/packages/pdftools/index.html&#34;&gt;pdftools&lt;/a&gt; per R.  Di librerie per estrarre dati dai file PDF ne ho provate moltissime, sia per R che per Python, ma &lt;code&gt;pdftools&lt;/code&gt; le batte tutte per potenza, semplicità e velocità. Ci sono dei &lt;em&gt;tool&lt;/em&gt; che convertono un PDF in testo al ritmo di una pagina al minuto, &lt;code&gt;pdftools&lt;/code&gt; riesce a convertire (molto bene, peraltro) un file di 400 pagine &lt;a href=&#34;https://www.snpambiente.it/2018/02/24/rapporto-controlli-ambientali-del-snpa-aia-seveso-edizione-2017/&#34;&gt;come questo&lt;/a&gt; in appena 5-6 secondi. C&amp;rsquo;è altro da aggiungere?&lt;/p&gt;&#xA;&lt;p&gt;Lo script può essere utilizzato dalla linea di comando (per capirci, dal Terminale), lasciandolo esattamente com&amp;rsquo;è ed eseguendo il comando &lt;code&gt;pdf2csv.R&lt;/code&gt; seguito dal nome dal file da convertire (se il nome del file contiene degli spazi va scritto fra virgolette),&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;./pdf2csv.R file-da-convertire.pdf&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;che produrrà due file &lt;code&gt;.csv&lt;/code&gt; contenenti il testo estratto dal file PDF. Il primo, con lo stesso nome del file di partenza, ha le righe numerate e cerca di riprodurre per quanto è possibile il &lt;em&gt;layout&lt;/em&gt; del file originale. Nel secondo, salvato con il suffisso &lt;code&gt;-clean&lt;/code&gt;, mancano i numeri di linea e vengono rimossi tutti gli spazi in eccesso, rendendolo più adatto ad una analisi automatica, in particolare quando il testo si estende per tutta la pagina (il primo file, invece, è molto più utile quando il testo è organizzato in colonne).&lt;/p&gt;&#xA;&lt;p&gt;Prima di usare per la prima volta &lt;code&gt;pdf2csv.R&lt;/code&gt; bisogna renderlo eseguibile tramite il comando &lt;code&gt;chmod&lt;/code&gt; (ne ho già scritto diffusamente &lt;a href=&#34;https://melabit.wordpress.com/2018/12/30/script-per-tutti-i-giorni-shell-e-parametri/&#34;&gt;qui&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;chmod u+x pdf2csv.R&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In alternativa si può lanciare lo script tramite il comando &lt;code&gt;Rscript&lt;/code&gt; installato con R, senza che sia necessario renderlo eseguibile.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;Rscript ./pdf2csv.R file-da-convertire.pdf&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;È preferibile che il file PDF da convertire si trovi nella stessa cartella di &lt;code&gt;pdf2csv.R&lt;/code&gt;. In caso contrario il testo estratto viene comunque salvato nella cartella dove si trova la script (ve l&amp;rsquo;avevo detto che lo script era molto semplificato!).&lt;/p&gt;&#xA;&lt;p&gt;Per eseguire &lt;code&gt;pdf2csv.R&lt;/code&gt; all&amp;rsquo;interno di RStudio bisogna commentare la linea &lt;code&gt;12&lt;/code&gt; (basta aggiungere un &lt;code&gt;#&lt;/code&gt; all&amp;rsquo;inizio della riga) e attivare la riga 14 o 15 (ma solo da una delle due) togliendo il &lt;code&gt;#&lt;/code&gt; iniziale. Se si attiva la riga 14, si deve anche modificare la stringa &lt;code&gt;file-da-convertire.pdf&lt;/code&gt;, sostituendola con il nome del file da convertire. Se invece si attiva la riga numero 15, al momento dell&amp;rsquo;esecuzione dello script comparirà una finestra grafica da cui selezionare il file PDF desiderato.&lt;/p&gt;&#xA;&lt;p&gt;Nel &lt;a href=&#34;https://github.com/sabinomaggi/melabit/tree/main/un-po-di-codice&#34;&gt;repository su GitHub&lt;/a&gt; di questo articolo ho inserito dei file PDF di complessità crescente con cui fare qualche prova, fra cui un documento di quasi 1000 pagine (un vecchio manuale di riferimento del formato PDF, potevo scegliere qualcosa di diverso?), che può essere utile per valutare la velocità di conversione dello script. Non è necessario farlo a mano, il tempo di esecuzione di un qualunque programma o script si può misurare in modo preciso dal Terminale anteponendo il comando di sistema &lt;code&gt;time&lt;/code&gt;, come mostrato qui sotto.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;time ./pdf2csv.R PDFReference.pdf&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Come piccola chicca finale, ho aggiunto al repository su GitHub un file PDF contenente del testo (apparentemente) nascosto, provate a convertirlo e vi accorgerete di quanto sia banale recuperare il testo completo.&lt;/p&gt;&#xA;&lt;h4 id=&#34;generare-automaticamente-dei-documenti-con-awk&#34;&gt;Generare automaticamente dei documenti con AWK&lt;/h4&gt;&#xA;&lt;p&gt;Tirar fuori il testo contenuto in un file PDF è quasi sempre solo il primo passo del lavoro, perché quello che vogliamo veramente è filtrare il contenuto del documento mantenendo solo le informazioni che ci interessano. Nel &lt;a href=&#34;https://melabit.wordpress.com/2020/11/08/il-cnr-e-anche-questo-concorsi-in-latex/&#34;&gt;caso specifico&lt;/a&gt;, io avevo bisogno di selezionare dalla domanda di concorso precedente solo i dati relativi ad una specifica tipologia di attività (ad esempio tutti gli articoli scientifici pubblicati), salvandoli in un file &lt;em&gt;ad hoc&lt;/em&gt;. E, già che c&amp;rsquo;ero, volevo anche costruire una tabella LaTeX per ciascun articolo. Una cosa abbastanza facile da fare con &lt;a href=&#34;https://www.grymoire.com/Unix/Awk.html&#34;&gt;AWK&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Di AWK ho già parlato &lt;a href=&#34;https://melabit.wordpress.com/2019/02/18/script-per-tutti-i-giorni-entra-in-scena-awk/&#34;&gt;tempo fa&lt;/a&gt; e non mi ripeterò, dirò solo che è un linguaggio ideale per analizzare un file di testo una riga alla volta, verificando se si presentano determinate condizioni ed eseguendo le operazioni programmate corrispondenti.&lt;/p&gt;&#xA;&lt;p&gt;Nonostante i suoi tanti pregi, AWK ha una limitazione piuttosto seria: per come è strutturato, AWK deve per forza di cose esaminare tutto il file senza poter &lt;em&gt;tornare indietro&lt;/em&gt;, e quindi è piuttosto difficile fargli eseguire delle operazioni basate su condizioni multiple complesse. È molto meglio (quando è possibile) scrivere più &lt;em&gt;script&lt;/em&gt; AWK, da eseguire in sequenza sullo stesso file di partenza o sull&amp;rsquo;output generato dallo script precedente, piuttosto che cercare di combattere con le limitazioni del linguaggio, complicando a dismisura il codice.&lt;/p&gt;&#xA;&lt;p&gt;In una prima versione di questo articolo avevo pensato di utilizzare un breve estratto della mia domanda di concorso precedente per descrivere il funzionamento degli script in AWK. Ma mentre scrivevo mi sono accorto che il discorso sarebbe stato così specifico da essere quasi inutile. Ho preferito quindi preparare un piccolo file PDF tratto dagli ultimi post pubblicati su Melabit, con l&amp;rsquo;intestazione in &lt;a href=&#34;https://blog.stackpath.com/yaml/&#34;&gt;YAML&lt;/a&gt;&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; di ciascun post seguita dalla prima frase del testo in &lt;a href=&#34;https://daringfireball.net/projects/markdown/&#34;&gt;Markdown&lt;/a&gt; e, quando c&amp;rsquo;è, dal link all&amp;rsquo;immagine iniziale. L&amp;rsquo;ho scelto perché la struttura di questo file assomiglia moltissimo a quella della mia domanda di concorso ma, allo stesso tempo, può essere uno schema di partenza applicabile a casi più generali.&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 4px; border-color: midnightblue; background-color: aliceblue; padding: 1em;&#34;&gt;&#xA;Questo file PDF può essere considerato come la stampa di un piccolo _database_ di informazioni correlate, dove ogni post è un _record_, suddiviso a sua volta nei vari _campi_, rappresentati dalle righe di intestazione e dalla frase di testo.&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Il file PDF si chiama &lt;code&gt;Melabit ultimi post.pdf&lt;/code&gt; e, come gli altri file PDF, è disponibile nel &lt;a href=&#34;https://github.com/sabinomaggi/melabit/tree/main/un-po-di-codice&#34;&gt;repository su GitHub&lt;/a&gt; di questo articolo. Se lo aprite con Anteprima, noterete subito che ci sono delle righe vuote che separano chiaramente un post (nel linguaggio dei database, un &lt;em&gt;record&lt;/em&gt;) dall&amp;rsquo;altro. Ma convertendo il file in testo,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;./pdf2csv.R &amp;#34;Melabit ultimi post.pdf&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;(le virgolette sono necessarie perché il nome del file contiene degli spazi), le righe vuote scompaiono e le uniche interruzioni presenti nei due file CSV prodotti dallo script di conversione corrispondono al cambio pagina. Non so se questo sia un baco o una caratteristica voluta di &lt;code&gt;pdftools&lt;/code&gt;, ma sta di fatto che è una particolarità con la quale dobbiamo fare i conti se vogliamo analizzare il testo con AWK.&lt;/p&gt;&#xA;&lt;p&gt;Sembra una sciocchezza, ma senza le giuste interruzioni non è immediato riconoscere la fine di un record &lt;em&gt;prima&lt;/em&gt; di iniziare ad esaminare quello successivo, in modo da chiudere correttamente la tabella LaTeX corrispondente al record appena esaminato e ad aprire quella relativa al record successivo. Inoltre, mentre in questo caso specifico la struttura del file PDF è volutamente molto semplice e ripetibile, nella maggior parte dei casi reali il documento da cui estrarre i dati può contenere informazioni strutturate in modi diversi, i campi da analizzare possono essere distribuiti in modo irregolare o mancare del tutto e ci possono essere incongruenze nella loro denominazione. Gestire tutti i casi possibili con un unico script lo renderebbe rapidamente troppo complesso.&lt;/p&gt;&#xA;&lt;p&gt;Molto meglio affrontare il problema un pezzetto alla volta, utilizzando uno script specifico per ciascun tipo di informazione da estrarre (io ho avuto bisogno di 6 script AWK per eseguire tutto il lavoro di esportazione dei dati, o meglio &lt;em&gt;quasi tutto&lt;/em&gt; il lavoro, perché per i casi meno frequenti ho preferito il buon vecchio copia-incolla manuale). In fondo è la stessa logica di Unix, che mette a disposizione un gran numero di strumenti semplici che messi insieme, come tanti mattoncini Lego, riescono a fare cose incredibili.&lt;/p&gt;&#xA;&lt;p&gt;Un primo script, &lt;code&gt;addblanklines.awk&lt;/code&gt;, può servire per inserire nel file CSV di partenza una riga vuota &lt;em&gt;prima&lt;/em&gt; di ogni record (una cosa piuttosto semplice da fare in questo caso, dato che ogni post inizia sempre con la stringa &amp;ldquo;layout: post&amp;rdquo;). Lo script, appena quindici linee di codice, lo trovate &amp;ldquo;in bella&amp;rdquo; nell&amp;rsquo;immagine qui sotto (ma anche in questo caso il &lt;a href=&#34;https://github.com/sabinomaggi/melabit/tree/main/un-po-di-codice&#34;&gt;sorgente&lt;/a&gt; è su GitHub).&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2020/11/addblanklines-1.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Bastano solo due linee di codice, la #4 e la #9, per aggiungere le righe vuote al posto giusto. Ma già che ci siamo, è conveniente dare anche una &lt;em&gt;ripulita&lt;/em&gt; al file CSV togliendo le righe inutili, come quelle che contengono il numero di pagina o la stringa &lt;code&gt;---&lt;/code&gt; che segna l&amp;rsquo;inizio e la fine dell&amp;rsquo;intestazione in YAML (linee #5 e #12). Eseguendo lo script sul file CSV originale, si ottiene un nuovo file CSV con i vari record ben separati uno dall&amp;rsquo;altro.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;./addblanklines.awk &amp;#34;Melabit ultimi post-clean.csv&amp;#34; &amp;gt; file-con-righe-vuote.csv&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Fatto questo, il passo successivo è semplice. Basta scansionare il file CSV appena generato, &lt;code&gt;file-con-righe-vuote.csv&lt;/code&gt;, in cerca della stringa &lt;em&gt;target&lt;/em&gt; &lt;code&gt;layout: post&lt;/code&gt; e, ogni volta che se ne trova una, generare una nuova tabella LaTeX riempiendola con i dati tratti dalle voci (o più propriamente &lt;em&gt;campi&lt;/em&gt;) successive. Il codice del secondo script, &lt;code&gt;cvs2table.awk&lt;/code&gt;, è visibile nell&amp;rsquo;immagine qui sotto (mentre il &lt;a href=&#34;https://github.com/sabinomaggi/melabit/tree/main/un-po-di-codice&#34;&gt;sorgente&lt;/a&gt; è sempre su GitHub).&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2020/11/cvs2table-1.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Lo script è relativamente lungo, sono più di 80 linee di codice, compresi commenti e righe vuote, ma una gran parte serve per implementare la funzione (linee #3-25) che riarrangia le informazioni presenti su più linee consecutive del file CSV in modo che vengano stampate su un&amp;rsquo;unica riga, e per generare la struttura di base del documento LaTeX (linee #35-42 e #83).&lt;/p&gt;&#xA;&lt;p&gt;Tolte queste, il resto del codice è semplice, si tratta più che altro di scrivere le stringe giuste al momento giusto e di tenere conto dei casi in cui le informazioni si estendono su più linee consecutive (come succede ad esempio alle linee #61-62 e #66-73). Non entrerò nei dettagli di come funziona lo script, questo non è un corso di AWK (né tantomeno di R), basterà per ora dire che è scritto in modo da essere facilmente adattato a gestire esigenze analoghe. Per usarlo, si deve eseguire lo script usando come file di input &lt;code&gt;file-con-righe-vuote.csv&lt;/code&gt; e salvando il risultato dell&amp;rsquo;elaborazione in un file LaTeX, che qui sotto ho chiamato (con la mia solita scarsa fantasia) &lt;code&gt; lista-articoli.tex&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;./cvs2table.awk file-con-righe-vuote.csv &amp;gt; lista-articoli.tex&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;mettere-tutto-insieme&#34;&gt;Mettere tutto insieme&lt;/h4&gt;&#xA;&lt;p&gt;Proviamo allora ad eseguire tutti insieme gli script presentati in questo articolo, in modo da ottenere il risultato finale desiderato. Dobbiamo prima di tutto convertire il file PDF in CSV con&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;./pdf2csv.R &amp;#34;Melabit ultimi post.pdf&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;che genera automaticamente il file &amp;ldquo;Melabit ultimi post-clean.csv&amp;rdquo;. Fatto questo, si eseguono in sequenza i due script AWK, salvando l&amp;rsquo;output del primo in un file intermedio.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;./addblanklines.awk &amp;#34;Melabit ultimi post-clean.csv&amp;#34; &amp;gt; file-con-righe-vuote.csv&#xA;&#x9;./cvs2table.awk file-con-righe-vuote.csv &amp;gt; lista-articoli.tex&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Il risultato finale è un file LaTeX ben ordinato con una tabella per ogni articolo, come quello mostrato nella figura qui sotto la cui regolarità, messa in evidenza dai colori delle parole chiave, fa pensare ad uno spartito musicale.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2020/11/lista-articoli-1.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Ma ha senso creare un file intermedio solo per trasferire l&amp;rsquo;output del primo script al secondo? Molto meglio usare il &lt;a href=&#34;https://www.geeksforgeeks.org/piping-in-unix-or-linux/&#34;&gt;meccanismo di &lt;em&gt;piping&lt;/em&gt;&lt;/a&gt; tipico in Unix, con il quale si può trasferire automaticamente il risultato dell&amp;rsquo;esecuzione di un comando all&amp;rsquo;ingresso di quello successivo, collegandoli con il carattere &lt;code&gt;|&lt;/code&gt; (&lt;em&gt;pipe&lt;/em&gt;)?&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; Con il &lt;em&gt;piping&lt;/em&gt;, i due comandi AWK precedenti possono essere eseguiti uno dopo l&amp;rsquo;altro in questo modo,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&#x9;./addblanklines.awk &amp;#34;Melabit ultimi post-clean.csv&amp;#34; | ./cvs2table.awk &amp;gt; lista-articoli.tex&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;evitando l&amp;rsquo;uso di un file intermedio. In questo caso non fa molta differenza, ma quando si devono trattare file molto grossi, il &lt;em&gt;piping&lt;/em&gt; è molto più efficiente (con i velocissimi dischi SSD odierni non ce ne accorgiamo più, ma ai tempi dei dischi meccanici la scrittura di grossi file sul disco era un vero collo di bottiglia) e, cosa che non guasta mai, evita di intasare il disco rigido con un gran numero di file inutili.&lt;/p&gt;&#xA;&lt;p&gt;E poi il &lt;em&gt;piping&lt;/em&gt; è un meccanismo intrinsecamente elegante, che non a caso è stato adottato anche in alcuni &lt;a href=&#34;http://leetschau.github.io/pipe-operator-in-functional-programming-languages.html&#34;&gt;linguaggi di programmazione odierni&lt;/a&gt;, come si può vedere nello script R mostrato nella prima parte di questo articolo (linee #24-25 e #35-37), dove il simbolo &lt;code&gt;|&lt;/code&gt; usato in Unix è sostituito dalla strana combinazione di caratteri &lt;code&gt;%&amp;amp;#62;%&lt;/code&gt;, piuttosto fastidiosa da scrivere con una tastiera italiana (io almeno sbaglio sempre qualcosa).&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusioni&#34;&gt;Conclusioni&lt;/h4&gt;&#xA;&lt;p&gt;Chi ha l&amp;rsquo;occhio allenato si accorgerà facilmente che il file LaTeX risultante contiene alcuni errori piuttosto evidenti. Li ho lasciati apposta non solo per non complicare ulteriormente il codice, ma anche per mostrare quanto sia complicato il lavoro di estrazione automatica dei dati da file strutturati in modo non perfettamente regolare. Non è certo un caso che in questo campo ci sia una grossa attività di ricerca che prova a superare gli ostacoli e a rendere il tutto il più semplice e il più efficiente possibile.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Il comando &lt;code&gt;time&lt;/code&gt; è presente di default nei sistemi operativi Unix come Linux e macOS. Su Windows &lt;code&gt;time&lt;/code&gt; non esiste, ma si possono usare degli &lt;a href=&#34;https://qastack.it/superuser/228056/windows-equivalent-to-unix-time-command&#34;&gt;strumenti equivalenti&lt;/a&gt;.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;YAML è un linguaggio di &lt;em&gt;markup&lt;/em&gt; particolarmente adatto per definire dei file di configurazione e, in generale, per rappresentare informazioni strutturate in modo semplice e leggibile, molto più facile da usare di strumenti più noti come XML e JSON.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;Il &lt;em&gt;piping&lt;/em&gt; è uno dei meccanismi principali che rendono Unix una specie di Lego informatico.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>SSD o dischi meccanici? Perché non tutti e due? (prima parte)</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2020/08/05/ssd-o-dischi-meccanici-perche-non-tutti-e-due-prima-parte/</link>
      <pubDate>Wed, 05 Aug 2020 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2020/08/05/ssd-o-dischi-meccanici-perche-non-tutti-e-due-prima-parte/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2020/08/laura-ockel-qox9ksvpqcm-unsplash.jpg&#34; alt=&#34;&#34;&gt;&lt;br&gt;&#xA;&amp;ndash; &lt;em&gt;Foto di &lt;a href=&#34;https://unsplash.com/@viazavier&#34;&gt;Laura Ockel&lt;/a&gt; su &lt;a href=&#34;https://unsplash.com&#34;&gt;Unsplash&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ci hanno messo qualche anno di troppo, ma ormai i dischi SSD sono diventati le normali unità di avvio dei computer moderni, complice il calo di prezzi degli ultimi anni. Solo Apple si ostina ad offrire dei lenti dischi meccanici da appena 5400 giri al minuto sui suoi iMac più economici, ma probabilmente smetterà (finalmente!) di farlo alla prossima iterazione del modello, che dovrebbe arrivare molto presto (infatti l&amp;rsquo;&lt;a href=&#34;https://www.apple.com/it/shop/buy-mac/imac&#34;&gt;iMac è stato aggiornato proprio ieri&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;Purtroppo gli SSD sono ancora piuttosto cari, in questo momento un SSD da 1 TB di buona qualità costa fra i &lt;a href=&#34;https://www.amazon.it/Crucial-MX500-CT1000MX500SSD1-Interno-Pollici/dp/B078211KBB&#34;&gt;100&lt;/a&gt; e i &lt;a href=&#34;https://www.amazon.it/Samsung-MZ-V7S1T0BW-Unit%C3%A0-PLUS-Arancione/dp/B07MBQPQ62&#34;&gt;200&lt;/a&gt; euro, mentre l&amp;rsquo;equivalente meccanico si trova a 40-50 euro e con 100 euro si può acquistare un modello dignitoso da 3-4 TB. Meglio non parlare dei prezzi da rapina praticati da Apple, che pretende 625 euro per installare un disco SSD da 1 TB al posto dell&amp;rsquo;&lt;a href=&#34;https://melabit.wordpress.com/2018/06/25/ma-il-fusion-drive-serve-ancora/&#34;&gt;obsoleto Fusion Drive&lt;/a&gt; su un nuovo iMac (e definire obsoleto il Fusion Drive è ancora troppo poco), o che sui portatili (ma da ieri anche sugli iMac) ci chiede la bellezza di 500 euro per montare un SSD da 1 TB al posto di quello minimale da 250 GB.&lt;/p&gt;&#xA;&lt;p&gt;Quando acquistiamo un nuovo computer abbiamo quindi il problema di scegliere se pagare a caro prezzo un disco SSD molto capiente, che magari non verrà mai utilizzato completamente, oppure risparmiare scegliendo un modello da 500 GB &amp;ndash; 1 TB che però, complice la solita legge di Murphy, diventerà troppo stretto dopo pochi mesi di utilizzo.&lt;/p&gt;&#xA;&lt;h4 id=&#34;due-dischi-al-posto-di-uno&#34;&gt;Due dischi al posto di uno&lt;/h4&gt;&#xA;&lt;p&gt;Il problema è aggravato dal fatto che nella maggior parte dei Mac, così come in quasi tutti i PC portatili più performanti, è molto difficile, se non impossibile, aggiornare i componenti interni dopo l&amp;rsquo;acquisto.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; Una valutazione sbagliata al momento dell&amp;rsquo;ordine rischia quindi di rendere rapidamente obsoleto il prodotto acquistato. Un vero spreco, visto che un buon computer moderno può rispondere per parecchi anni in modo più che adeguato alle necessità della stragrande maggioranza degli utenti.&lt;/p&gt;&#xA;&lt;p&gt;Per fortuna si può avere facilmente il meglio dei due mondi, un veloce disco SSD destinato al sistema operativo e ai programmi, accoppiato ad un disco meccanico (HDD) molto più capiente dove conservare tutti i propri documenti (comprendendo con questo termine sia i documenti da ufficio veri e propri &amp;ndash; testi, fogli elettronici, presentazioni, email &amp;ndash; sia i file multimediali, gli ebook, il codice sorgente dei programmi che sviluppiamo, e in generale tutto ciò che elaboriamo tramite il computer).&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Fare così ha un altro grosso vantaggio: in caso di guai possiamo reinstallare facilmente da zero sia il sistema operativo che le applicazioni senza correre il rischio di cancellare i documenti, che di fatto costituiscono la parte più preziosa di un computer.&lt;/p&gt;&#xA;&lt;p&gt;Separare i dati dalle applicazioni è una pratica normale in Linux, la maggior parte delle distribuzioni consente di farlo in fase di installazione (ma in genere bisogna usare una modalità &lt;em&gt;avanzata&lt;/em&gt; di installazione) e non è troppo difficile farlo anche in un secondo momento. Anche Windows prevede un meccanismo per farlo, è piuttosto rozzo e funziona meglio al momento dell&amp;rsquo;installazione di Windows su un nuovo PC, quando il disco rigido è ancora vuoto, ma sappiamo tutti che da Windows non si può pretendere più di tanto.&lt;/p&gt;&#xA;&lt;p&gt;Anche macOS consente di muovere la cartella &lt;code&gt;Inizio&lt;/code&gt; (o &lt;code&gt;Home&lt;/code&gt;) di un utente su un altro disco (o su un&amp;rsquo;altra partizione), ma bisogna dire che è un metodo tenuto molto ben nascosto, e la stessa Apple sconsiglia di utilizzarlo (si veda l&amp;rsquo;immagine qui sotto).&lt;/p&gt;&#xA;&lt;!-- ![](https://melabit.files.wordpress.com/2020/08/advanced-options.png) --&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://support.apple.com/library/content/dam/edam/applecare/images/it_IT/macos/macos-mojave-system-preferences-users-groups-advanced-options.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Immagine tratta dall&amp;rsquo;articolo &lt;a href=&#34;https://support.apple.com/it-it/HT201548&#34;&gt;Modificare il nome dell&amp;rsquo;account utente macOS e della cartella Inizio&lt;/a&gt;, pubblicato sul sito di &lt;a href=&#34;https://support.apple.com&#34;&gt;supporto Apple&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Chi volesse provare lo stesso, deve andare nelle Preferenze di Sistema, selezionare Utenti e Gruppi, cliccare sul simbolo del lucchetto e inserire la password dell&amp;rsquo;amministratore del Mac, poi scegliere l&amp;rsquo;account da modificare, fare click con il tasto destro del mouse, selezionare Opzioni avanzate e infine modificare la cartella Inizio, facendo in modo che punti ad una cartella sul disco meccanico.&lt;/p&gt;&#xA;&lt;p&gt;Ma perché complicarsi la vita quando esiste un meccanismo intrinseco a macOS che permette di fare più o meno la stessa cosa senza correre alcun rischio? E che funziona allo stesso modo su qualunque sistema operativo, da macOS a Linux e a tutte le infinite varianti di sistemi operativi basati su Unix, e ormai &lt;a href=&#34;https://www.howtogeek.com/howto/16226/complete-guide-to-symbolic-links-symlinks-on-windows-or-linux/&#34;&gt;perfino in Windows&lt;/a&gt;? E che ha pure il grosso vantaggio di non modificare la posizione di certe cartelle e di certi file che il sistema operativo si aspetta di trovare in posizioni ben definite, in modo che possa continuare a funzionare perfettamente anche se per qualche motivo non riesce a trovare il secondo disco meccanico.&lt;/p&gt;&#xA;&lt;h4 id=&#34;collegamenti-simbolici&#34;&gt;Collegamenti simbolici&lt;/h4&gt;&#xA;&lt;p&gt;Il meccanismo in questione è costituito dai &lt;em&gt;collegamenti simbolici&lt;/em&gt; (o &lt;em&gt;soft link&lt;/em&gt;), di cui ho parlato nell&amp;rsquo;articolo &lt;a href=&#34;https://melabit.wordpress.com/2020/07/18/il-crepuscolo-di-dropbox/&#34;&gt;dedicato a Dropbox&lt;/a&gt; di qualche giorno fa e &lt;a href=&#34;https://melabit.wordpress.com/2014/03/21/come-mettere-un-piolo-quadrato-in-un-buco-rotondo/&#34;&gt;molto più diffusamente qui&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Con un uso accorto dei soft link possiamo fare in modo che le cartelle presenti sul disco rigido meccanico sembrino appartenere a tutti gli effetti al disco SSD (senza però consumare spazio prezioso sull&amp;rsquo;unità a stato solido) e solo un osservatore attento può accorgersi della differenza.&lt;/p&gt;&#xA;&lt;p&gt;I dettagli di come si può fare li ho già descritti &lt;a href=&#34;https://melabit.wordpress.com/2014/03/21/come-mettere-un-piolo-quadrato-in-un-buco-rotondo/&#34;&gt;in un articolo di parecchi anni fa&lt;/a&gt; e nel frattempo non è cambiato nulla, per cui non è il caso di ripetersi. Mi limito solo a mostrare l&amp;rsquo;immagine della &lt;code&gt;Home&lt;/code&gt; di uno dei miei Mac di casa, dove si può vedere che in macOS i soft link vengono rappresentati da una freccetta sovrapposta alla normale icona del file o, come in questo caso, della cartella. Una rappresentazione visiva efficace, che rende bene l&amp;rsquo;idea che il file o la cartella in questione &lt;em&gt;punti&lt;/em&gt; da qualche altra parte, in questo caso particolare alle cartelle presenti fisicamente sul disco rigido meccanico &lt;code&gt;Data HD&lt;/code&gt; (lo so, la fantasia a volte mi fa difetto).&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2020/08/my-home.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Uso questo metodo da anni su tutti i miei Mac e non ho mai avuto problemi. Anzi, con il tempo mi sono accorto che il disco meccanico è in grado di gestire senza rallentamenti particolari tutti i miei documenti, anche quelli su cui lavoro ogni giorno, cosa che mi ha consentito di separare ancora di più (e meglio) i miei dati dalle applicazioni.&lt;/p&gt;&#xA;&lt;p&gt;Bene, per ora può bastare. La &lt;a href=&#34;https://melabit.wordpress.com/2020/08/14/ssd-o-dischi-meccanici-perche-non-tutti-e-due-seconda-parte/&#34;&gt;seconda parte&lt;/a&gt; dell&amp;rsquo;articolo sarà dedicata a descrivere alcuni possibili scenari pratici, con le relative scelte hardware. A presto!&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Gli unici modelli facilmente aggiornabili rimasti in circolazione sono i normali PC desktop e, per quanto riguarda il mondo Apple, i nuovi Mac Pro (che però sono rivolti ad un pubblico professionale per il quale il costo di un SSD è trascurabile rispetto al valore dell&amp;rsquo;intera macchina).&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Ci possono essere casi particolari in cui è più conveniente tenere i documenti sul disco SSD principale, penso soprattutto ai file multimediali in corso di elaborazione, ma una volta finito il lavoro niente impedisce di archiviarli sul disco meccanico.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>La falsa sicurezza delle app VPN per Android (e non solo)</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2019/05/22/la-falsa-sicurezza-delle-app-vpn-per-android-e-non-solo/</link>
      <pubDate>Wed, 22 May 2019 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2019/05/22/la-falsa-sicurezza-delle-app-vpn-per-android-e-non-solo/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/05/bernard-hermant-590572.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Fonte: &lt;a href=&#34;https://unsplash.com/@bernardhermant&#34;&gt; Bernard Hermant&lt;/a&gt; su &lt;a href=&#34;https://unsplash.com&#34;&gt;Unsplash&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Fino a pochi anni fa le &lt;a href=&#34;https://it.wikipedia.org/wiki/Virtual_Private_Network&#34;&gt;reti private virtuali&lt;/a&gt; (VPN, Virtual Private Network) erano un prodotto di nicchia, riservato prevalentemente a chi era spesso fuori dall&amp;rsquo;ufficio per lavoro e aveva bisogno di connettersi in modo sicuro alla rete aziendale dal bar o dall&amp;rsquo;hotel di turno, oppure a chi viveva in paesi a rischio censura e voleva esprimere il suo pensiero senza poter essere rintracciato o più semplicemente desiderava accedere liberamente ai siti web oscurati dal proprio governo.&lt;/p&gt;&#xA;&lt;p&gt;Poi, proprio all&amp;rsquo;inizio dell&amp;rsquo;amministrazione Trump, il Congresso degli Stati Uniti ha deciso di consentire ai fornitori di servizi di accesso alla rete (ISP, Internet Service Provider), gli equivalenti dei nostri Fastweb, Infostrada o Vodafone, di &lt;a href=&#34;https://medium.freecodecamp.org/how-to-set-up-a-vpn-in-5-minutes-for-free-and-why-you-urgently-need-one-d5cdba361907&#34;&gt;rivendere a chiunque e senza dover richiedere alcuna autorizzazione&lt;/a&gt;, i dati di navigazione dei propri utenti. Un business che vale &lt;a href=&#34;https://www.washingtonpost.com/news/the-switch/wp/2017/03/28/republicans-are-poised-to-roll-back-landmark-fcc-privacy-rules-heres-what-you-need-to-know/&#34;&gt;80 miliardi di dollari&lt;/a&gt; di sola pubblicità online.&lt;/p&gt;&#xA;&lt;p&gt;In questi dati c&amp;rsquo;è di tutto, fra cui moltissime informazioni strettamente private: la storia della navigazione su internet con l&amp;rsquo;elenco di tutti i siti visitati, le ricerche effettuate, il contenuto delle email, informazioni mediche e finanziarie, indirizzi, date di nascita, numeri di telefono, e persino i dettagli della posizione geografica dell&amp;rsquo;utente nel corso della giornata. Di conseguenza l&amp;rsquo;uso delle VPN è letteralmente esploso.&lt;/p&gt;&#xA;&lt;p&gt;Purtroppo &lt;a href=&#34;https://www.theregister.co.uk/2016/02/26/ssl_vpns_survey/&#34;&gt;non è affatto detto che una rete VPN aumenti la sicurezza delle proprie comunicazioni online&lt;/a&gt;. Anzi può essere persino peggio, una VPN può dare un falso senso di sicurezza che invita ad &lt;em&gt;abbassare la guardia&lt;/em&gt;, con conseguenze potenzialmente catastrofiche (in particolare per coloro che hanno la sfortuna di vivere in paesi governati dal dittatorello di turno).&lt;/p&gt;&#xA;&lt;p&gt;Lo dimostra una &lt;a href=&#34;https://dl.acm.org/citation.cfm?id=2987471&#34;&gt;ricerca pubblicata nel 2016&lt;/a&gt;, immediatamente prima della deregolamentazione decisa dal Congresso USA. Per motivi pratici la ricerca è focalizzata sulle sole app VPN (gratuite) per Android e trascura completamente il mondo iOS e tutte le applicazioni analoghe per i sistemi operativi desktop, Windows e macOS e Linux. Ma pur con tutti i suoi limiti, i risultati della ricerca danno un quadro piuttosto chiaro di quanto sia  critica la situazione in questo settore, e allargando ulteriormente il campo di analisi la situazione non potrebbe che peggiorare.&lt;/p&gt;&#xA;&lt;p&gt;Qui sotto ho riassunto brevemente i risultati della ricerca, nel corso della quale i ricercatori hanno analizzato ben 283 app VPN disponibili gratuitamente sul Play Store di Google all&amp;rsquo;inizio dell&amp;rsquo;analisi (settembre 2015). Chi desidera approfondire può scaricare liberamente dai siti istituzionali degli autori sia l&amp;rsquo;&lt;a href=&#34;https://www.icir.org/vern/papers/vpn-apps-imc16.pdf&#34;&gt;articolo completo&lt;/a&gt; che le &lt;a href=&#34;https://research.csiro.au/ng/wp-content/uploads/sites/106/2016/09/vpnapps_imc16_presented_slides.pdf&#34;&gt;slide della conferenza&lt;/a&gt; nella quale è stato presentato il lavoro.&lt;/p&gt;&#xA;&lt;p&gt;Bisogna notare che, anche se tutte le app analizzate sono gratuite, più della metà richiede il pagamento di un importo mensile per l&amp;rsquo;uso effettivo della rete VPN, una cosa assolutamente normale visti i costi associati alla gestione di una infrastruttura di rete.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Reti peer-to-peer&lt;/strong&gt;: un gran numero di app VPN non utilizza una infrastruttura di rete costruita &lt;em&gt;ad hoc&lt;/em&gt; ma si basa sui nodi di accesso messi a disposizione dagli altri utenti (spesso in cambio di sconti), formando quindi una rete &lt;em&gt;peer-to-peer&lt;/em&gt; molto più economica da gestire ma che non garantisce assolutamente la trasparenza e la sicurezza necessarie.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Modello gratuito&lt;/strong&gt;: mettere su una rete VPN ha dei costi significativi e quindi in questo caso specifico il modello &lt;em&gt;free&lt;/em&gt; non può funzionare; per poter proporre delle VPN gratuite o a basso costo le aziende utilizzano spesso una serie di trucchi poco accettabili, con i quali portano gli utenti inconsapevoli sui siti dei partner pubblicitari oppure utilizzano codice JavaScript più o meno oscuro per iniettare gli annunci pubblicitari direttamente nel flusso dei dati. La pubblicità in sé può anche essere innocua, ma &lt;em&gt;mettere le mani&lt;/em&gt; nel flusso dei dati trasmessi sulla connessione VPN può portare ad abusi molto più seri e pericolosi per chi utilizza la rete in questione.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Malware&lt;/strong&gt;: più di un terzo delle app VPN era infestato da qualche forma di &lt;em&gt;malware&lt;/em&gt;: non solo il quasi inoffensivo &lt;em&gt;adware&lt;/em&gt; (pubblicità non richiesta) ma spesso anche da veri e propri &lt;em&gt;spyware&lt;/em&gt; (programmi che spiano l&amp;rsquo;attività online dell&amp;rsquo;utente) o &lt;em&gt;trojan&lt;/em&gt; (programmi installati di nascosto che possono eseguire operazioni dannose sul sistema).&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Crittografia&lt;/strong&gt;: non è affatto detto che il traffico di rete che transita attraverso queste app VPN sia crittografato e quindi risulti illeggibile agli ISP o alle agenzie governative un po&amp;rsquo; troppo &lt;em&gt;curiose&lt;/em&gt;; e anche quando lo è, può succedere che errori di implementazione o di configurazione delle app mostrino in chiaro gli accessi ai server DNS (quelli che traducono i nomi dei siti web negli indirizzi numerici comprensibili ai computer), rivelando così l&amp;rsquo;attività effettuata in rete dagli utenti, una cosa che in certi paesi può essere più che sufficiente per finire in carcere.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Certificati&lt;/strong&gt;: alcune app VPN riescono perfino ad installare i propri certificati digitali al posto di quelli ufficiali del dispositivo Android (certificati &lt;em&gt;root&lt;/em&gt;), rendendo del tutto inefficace la cifratura dei dati in transito sul dispositivo, perché chi dispone del certificato digitale dispone anche delle chiavi con cui decodificare tutto quello che passa attraverso la rete VPN.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Consapevolezza del rischio&lt;/strong&gt;: solo l&#39;1% delle recensioni sul Play Store solleva dei dubbi sull&amp;rsquo;attività potenzialmente fraudolenta svolta dalle app VPN; l&amp;rsquo;utente medio di questi prodotti non ha le capacità tecniche per accorgersi dei rischi che corre quando usa un&amp;rsquo;app di questo tipo e purtroppo il sistema operativo sottostante fa ben poco per aiutarlo.&lt;/p&gt;&#xA;&lt;p&gt;Insomma, nonostante i limiti già ricordati, questa ricerca dimostra in modo inoppugnabile che le app VPN per Android (ma non solo) danno solo un falso senso di sicurezza, che le rende inutili e perfino controproducenti. Dubito fortemente che si otterrebbero risultati diversi analizzando le app analoghe per gli altri sistemi operativi mobili o desktop. E dubito altrettanto fortemente (se non di più) che dal 2016 ad oggi la situazione sia migliorata.&lt;/p&gt;&#xA;&lt;p&gt;Perché?&lt;/p&gt;&#xA;&lt;p&gt;Primo, perché tutti i sistemi operativi attuali fanno pochissimo per aiutare l&amp;rsquo;utente a valutare correttamente i rischi connessi a certe attività di rete. Far comparire di continuo avvisi e richieste di autorizzazione di tutti i tipi non è sufficiente, se non si spiega in modo corretto e comprensibile quello che succede. E in ogni caso, troppe richieste inutili non fanno altro che affogare ciò che è veramente importante in un rumore di fondo indistinto, da cui l&amp;rsquo;utente medio esce cliccando automaticamente, senza nemmeno leggere. Facile quindi infilare delle app più o meno malevole negli store online dei vari sistemi operativi, in particolare di quelli più diffusi,  Android per il mobile e Windows per il desktop. Apple per fortuna riesce a controllare meglio di altri gli store di macOS e di iOS, ma possiamo essere sicuri che ci riesca al 100%?&lt;/p&gt;&#xA;&lt;p&gt;Secondo, perché in questo campo il modello &lt;em&gt;free&lt;/em&gt; non funziona a priori. Gestire una infrastruttura di una rete ha dei costi che devono essere ripagati in qualche modo, lecito (attraverso gli acquisti &lt;em&gt;in-app&lt;/em&gt; e gli abbonamenti mensili) o illecito. E comunque non è nemmeno detto che una rete VPN a pagamento (anche di costo rilevante) assicuri un livello di sicurezza decente. Poter spiare una connessione considerata sicura può assicurare tanti di quei benefici, sia a livello economico (ad esempio, conoscere le attività e i progetti di certe aziende) che politico (primo fra tutti riuscire a individuare gli oppositori politici), che è meglio non fidarsi.&lt;/p&gt;&#xA;&lt;p&gt;Che fare?&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Quanto costerà aggiornare a Windows 10?</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2015/06/03/quanto-costera-aggiornare-a-windows-10/</link>
      <pubDate>Wed, 03 Jun 2015 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2015/06/03/quanto-costera-aggiornare-a-windows-10/</guid>
      <description>&lt;p&gt;Sarò strano ma mi diverte sempre leggere gli articoli su Windows, sulla Microsoft e sulle sue strategie &amp;ndash; sempre più affannose in verità &amp;ndash; per mantenere il dominio del mercato dei sistemi operativi e del software applicativo.&lt;/p&gt;&#xA;&lt;p&gt;L&amp;rsquo;argomento &amp;ldquo;hot&amp;rdquo; del momento è naturalmente il prossimo Windows 10 e quanto costerà aggiornare il proprio PC a Windows 10.&lt;/p&gt;&#xA;&lt;h4 id=&#34;aggiornare-a-windows-10&#34;&gt;Aggiornare a Windows 10&lt;/h4&gt;&#xA;&lt;p&gt;Finora la Microsoft ha sempre fatto pagare, e a caro prezzo, l&amp;rsquo;aggiornamento da una versione di Windows alla successiva. Ma in realtà pochi compravano &lt;em&gt;veramente&lt;/em&gt; gli aggiornamenti di Windows.&lt;/p&gt;&#xA;&lt;p&gt;La maggioranza degli utenti, per pigrizia ma soprattutto per timore di problemi, tende a non aggiornare il sistema operativo del proprio PC. E per chi ne compra uno nuovo, il costo del sistema operativo è &lt;a href=&#34;http://www.attivissimo.net/rimborso_windows/istruzioni.htm&#34;&gt;mescolato (quasi) indissolubilmente&lt;/a&gt; con il prezzo della macchina.&#xA;Rimangono quelli a cui piace smanettare con il computer, che in gran parte si rivolgono al mercato oscuro e trovano il modo per bypassare i controlli di originalità del software stabiliti dalla Microsoft.&lt;/p&gt;&#xA;&lt;p&gt;Insomma, il costo elevato di aggiornare Windows è stato finora un non-problema.&lt;/p&gt;&#xA;&lt;p&gt;Con Windows 10 la Microsoft ha deciso di [fornire gratis l&amp;rsquo;aggiornamento alla nuova versione del sistema operativo](Details of free Windows 10 update become a little clearer, but questions remain).&lt;/p&gt;&#xA;&lt;p&gt;L&amp;rsquo;obiettivo è chiaro: far transitare nel più breve tempo possibile la maggior parte degli utenti a Windows 10, facendo dimenticare il fallimento di Windows 8 e della strategia di integrazione con il mondo mobile che c&amp;rsquo;era dietro. Fallimento ancora più grave perché avvenuto pochi anni dopo un altro fallimento tremendo, &lt;em&gt;epico&lt;/em&gt; direbbero gli americani, come quello di Vista.&lt;/p&gt;&#xA;&lt;p&gt;Un secondo obiettivo è quello di cercare di ridurre il numero delle &lt;a href=&#34;http://windows.microsoft.com/en-us/windows/lifecycle&#34;&gt;versioni di Windows da supportare&lt;/a&gt;. Se è vero infatti che da un anno la Microsoft &lt;a href=&#34;http://www.howtogeek.com/184137/windows-xp-end-of-support-is-on-april-8th-2014-why-windows-is-warning-you/&#34;&gt;ha abbandonato Windows XP&lt;/a&gt; e che anche Windows 7 riceve ormai solo gli &lt;a href=&#34;http://www.pcworld.com/article/2452702/dont-panic-yes-windows-7-is-leaving-mainstream-support-but-it-isnt-being-abandoned.html&#34;&gt;aggiornamenti legati alla sicurezza&lt;/a&gt;, è altrettanto vero che per gli sviluppatori le cose vanno diversamente. I produttori di software non possono permettersi di abbandonare XP e, nella maggior parte dei casi, devono fare in modo che i loro &lt;a href=&#34;https://www.piriform.com/ccleaner/faq/installing/what-operating-systems-does-ccleaner-support&#34;&gt;prodotti siano compatibili&lt;/a&gt; con ben otto versioni diverse di Windows: Windows XP, Windows Vista, Windows 7 e Windows 8/8.1, per processori a 32 o a 64 bit. Un problema non da poco.&lt;/p&gt;&#xA;&lt;p&gt;[caption id=&amp;ldquo;attachment_1888&amp;rdquo; align=&amp;ldquo;aligncenter&amp;rdquo; width=&amp;ldquo;244&amp;rdquo;]&lt;a href=&#34;https://melabit.files.wordpress.com/2015/06/wins.jpg&#34;&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2015/06/wins.jpg&#34; alt=&#34;Versioni compatibili di Windows&#34; width=&#34;244&#34; height=&#34;160&#34; class=&#34;size-full wp-image-1888&#34; /&gt;&lt;/a&gt; Immagine tratta dal sito di Revo Uninstaller, &lt;a href=&#34;http://www.revouninstaller.com&#34;&gt;http://www.revouninstaller.com&lt;/a&gt;. [/caption]&lt;/p&gt;&#xA;&lt;p&gt;Ormai per XP non c&amp;rsquo;è nulla da fare: chi lo usa se lo tiene stretto (l&amp;rsquo;utente medio di Windows è pigro e poco avvezzo ai cambiamenti) e ormai non resta che aspettare la naturale obsolescenza delle macchine su cui è installato. Ma bisogna almeno offrire una alternativa a tutti gli altri, fare di tutto per spingerli ad aggiornare rapidamente la loro versione di Windows.&lt;/p&gt;&#xA;&lt;h4 id=&#34;la-strategia-di-apple&#34;&gt;La strategia di Apple&lt;/h4&gt;&#xA;&lt;p&gt;Apple ci riesce benissimo. Ogni nuova versione di OS X viene &lt;a href=&#34;https://www.gosquared.com/global/mac/yosemite/#beta&#34;&gt;adottata molto rapidamente&lt;/a&gt; e in pochi mesi viene usata dalla maggioranza degli utenti di OS X.&lt;/p&gt;&#xA;&lt;p&gt;Apple ha &lt;em&gt;un&amp;rsquo;unica versione&lt;/em&gt; di OS X che da alcuni anni viene offerta gratuitamente a &lt;em&gt;tutti&lt;/em&gt; gli utenti tramite l&amp;rsquo;App Store (ma anche prima, quando l&amp;rsquo;aggiornamento veniva distribuito su un supporto fisico, costava solo pochi euro).&lt;/p&gt;&#xA;&lt;p&gt;Per la stragrande maggioranza degli utenti di OS X tutto si risolve nel cliccare il tasto &lt;code&gt;Installa&lt;/code&gt;, accettare il Contratto di Licenza e attendere (a volte molto pazientemente!) il download dell&amp;rsquo;immagine disco del nuovo sistema operativo e la sua installazione sul disco rigido al posto di quello precedente. L&amp;rsquo;unica opzione (ben nascosta) è quella di cancellare il disco rigido prima di iniziare il processo di installazione, in modo da eseguire una installazione &lt;em&gt;pulita&lt;/em&gt; e non un semplice aggiornamento.&lt;/p&gt;&#xA;&lt;p&gt;Chi vuole può ripetere in ogni momento il download dell&amp;rsquo;immagine disco del sistema operativo, per copiarla su una chiavetta USB o su un DVD (doppia faccia, ormai costa più di una chiavetta da 8 GB) e usarla come strumento di ripristino in caso di malfunzionamenti del disco rigido o per installare OS X su un Mac in modalità offline, senza collegamento a internet.&lt;/p&gt;&#xA;&lt;p&gt;Nessuna richiesta di autorizzazione, numero di licenza, codice di decine di caratteri da inserire. Niente telefonate o arrabbiature.&lt;/p&gt;&#xA;&lt;p&gt;Un solo click e via.&lt;/p&gt;&#xA;&lt;h4 id=&#34;fotocopiatrici-in-azione&#34;&gt;Fotocopiatrici in azione&lt;/h4&gt;&#xA;&lt;p&gt;E allora perché non copiare la strategia di Apple?&lt;/p&gt;&#xA;&lt;p&gt;Come al solito però (le fotocopiatrici funzionano sempre maluccio dalle parti di &lt;a href=&#34;http://it.wikipedia.org/wiki/Redmond_%28Washington%29&#34;&gt;Redmond&lt;/a&gt;), la Microsoft l&amp;rsquo;ha fatto a modo suo, cioè in modo inutilmente complicato e confuso.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Un articolo su Ars Technica di pochi giorni fa dice tutto già dal titolo, &amp;ldquo;&lt;a href=&#34;http://arstechnica.com/information-technology/2015/05/details-of-free-windows-10-update-become-a-little-clearer-but-questions-remain/&#34;&gt;I dettagli dell&amp;rsquo;aggiornamento gratuito di Windows 10 diventano più chiari, ma alcuni dubbi rimangono&lt;/a&gt;&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;Leggiamo il testo dell&amp;rsquo;articolo (le parole fra parentesi quadre sono mie libere aggiunte):&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;La Microsoft ha fatto chiarezza fornendo nuove informazioni sul suo schema per offrire Windows 10 come aggiornamento gratuito agli utenti di Windows 7 e di Windows 8 nel corso del primo anno di disponibilità di Windows 10. Il sito della rete dei partner australiani [della Microsoft] offre alcune informazioni specifiche riguardanti le diverse edizioni di Windows 10.&amp;rdquo;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Ha fatto chiarezza tramite il sito della rete dei partner australiani? Non poteva farlo direttamente? Forse perché così può sondare ufficiosamente la reazione degli utenti e modificare opportunamente i termini dell&amp;rsquo;offerta. Nulla da eccepire, è una strategia lecita, ma da una azienda come la Microsoft ci si potrebbe attendere una maggiore fiducia circa le sue strategie future.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;Si sapeva già che l&amp;rsquo;aggiornamento gratuito non si applica ai clienti di Windows Enterprise, che acquistano le loro licenze di Windows attraverso accordi di multilicenza (Volume Licensing). L&amp;rsquo;articolo ha ribadito che l&amp;rsquo;aggiornamento gratuito sarà disponibile solo per i clienti delle edizioni Home, Pro e Mobile (ex Windows Phone), indipendentemente dal fatto che i dispositivi siano utilizzati a casa, al lavoro o in modalità &lt;a href=&#34;http://it.wikipedia.org/wiki/Bring_your_own_device&#34;&gt;BYOD&lt;/a&gt;.&amp;rdquo;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;I clienti Corporate ed Enterprise che stabiliscono accordi di multilicenza in effetti non &lt;em&gt;acquistano&lt;/em&gt; il software ma pagano un &lt;em&gt;affitto&lt;/em&gt; annuale che permette loro di usare le versioni più recenti di &lt;em&gt;tutto&lt;/em&gt; il software Microsoft. Di fatto quindi l&amp;rsquo;aggiornamento sarà gratuito  anche per loro (perché già compreso nel costo dell&amp;rsquo;affitto annuale).&lt;/p&gt;&#xA;&lt;p&gt;Che senso hanno allora tutti questi distinguo e questi bizantinismi?&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;Ora sappiamo come funzionerà [l&amp;rsquo;aggiornamento] per le diverse edizioni [di Windows]. Windows 7 Home Basic e Home Premium e Windows 8 e 8.1 saranno aggiornati a Windows 10 Home. Windows 7 Professional e Ultimate e Windows 8 e 8.1 Pro saranno aggiornati a Windows 10 Pro. Questo aggiornamento sarà gratuito e sarà effettuato esclusivamente attraverso Windows Update. I sistemi Windows Pro aziendali che utilizzano &lt;a href=&#34;http://it.wikipedia.org/wiki/Windows_Server_Update_Services&#34;&gt;Windows Server Update Services (WSUS)&lt;/a&gt; [un sistema che permette agli amministratori dei sistemi aziendali di gestire gli aggiornamenti in modo controllato] dovranno utilizzare Windows Update per effettuare l&amp;rsquo;aggiornamento.&amp;rdquo;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Qui c&amp;rsquo;è da farsi venire il mal di testa. Troppe edizioni diverse di Windows, con differenze francamente risibili, soprattutto fra le &lt;a href=&#34;http://www.intowindows.com/difference-between-windows-7-home-premium-professional-ultimate-editions/&#34;&gt;edizioni Home e Pro&lt;/a&gt; (ricordate &lt;a href=&#34;http://www.pcworld.com/article/2308725/a-beginners-guide-to-bitlocker-windows-built-in-encryption-tool.html&#34;&gt;BitLocker&lt;/a&gt;?). Troppi e confusi percorsi di aggiornamento da una edizione e l&amp;rsquo;altra. Non c&amp;rsquo;è da sorprendersi che gli utenti non ci capiscano nulla e lascino perdere.&lt;/p&gt;&#xA;&lt;p&gt;È evidente che la Microsoft ha ancora molto da imparare da Apple su questo punto.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;La [Microsoft] non ha precisato i requisiti per l&amp;rsquo;aggiornamento dei sistemi operativi più vecchi, il che significa che probabilmente gli utenti di Windows XP e Windows Vista dovranno acquistare una copia completa di Windows 10. Lo stesso per i produttori di PC: ogni nuova macchina avrà bisogno di una licenza [completa]. Windows 10 non è gratuito, sono solo alcuni aggiornamenti a Windows 10 ad essere gratuiti.&amp;rdquo;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;La Microsoft forse non si rende ben conto che chi usa ancora XP (Vista non conta, nemmeno numericamente) se lo tiene ben stretto e non cambia. L&amp;rsquo;unica strada per convincerlo potrebbe (potrebbe!) essere offrirgli un aggiornamento gratuito a Windows 10. Se la Microsoft riuscisse a far girare Windows 10 in modo decente anche su macchine ragionevolmente datate, magari evitando di attivare qualche funzione avanzata e più pesante, la cosa potrebbe perfino funzionare.&lt;/p&gt;&#xA;&lt;p&gt;E invece che fa la Microsoft? Esattamente il contrario. Proprio chi usa XP (anzi, &lt;em&gt;solo&lt;/em&gt; chi usa XP, Vista l&amp;rsquo;ho già detto non conta) deve pagare l&amp;rsquo;aggiornamento a Windows 10.&lt;/p&gt;&#xA;&lt;p&gt;Non lo farà mai. Piuttosto aspetterà che il suo PC smetta di funzionare e solo allora comprerà un altro PC con Windows 10 preinstallato. Altro che aggiornamento e transizione rapida degli utenti a Windows 10.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;Una volta aggiornati a Windows 10, i dispositivi continueranno a ricevere gli aggiornamenti funzionali e di sicurezza per quella che la Microsoft chiama &lt;em&gt;l&amp;rsquo;intera vita del dispositivo&lt;/em&gt;. È ragionevole concludere che gli aggiornamenti saranno effettuati più o meno &lt;em&gt;per sempre&lt;/em&gt; e questa interpretazione è consistente con l&amp;rsquo;obiettivo della Microsoft di evitare la frammentazione della piattaforma, dando [allo stesso tempo] agli sviluppatori di Windows la possibilità di raggiungere più utenti possibile. Ciò è consistente anche con il fatto che la licenza di Windows vale &lt;em&gt;per sempre&lt;/em&gt;.&amp;rdquo;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;La Microsoft si propone di rendere Windows 10 &lt;em&gt;l&amp;rsquo;ultima&lt;/em&gt; versione di Windows, a cui aggiungere nuove funzioni in modo incrementale, senza più cambiare il numero di versione. Ma niente ci assicura che non cambierà idea presto, esattamente come ha fatto tante volte nel corso degli ultimi 25 anni.&lt;/p&gt;&#xA;&lt;p&gt;La Microsoft ha cominciato usando per Windows 3.0 e 3.1 il semplice numero di versione. Con Windows 95 e 98 è passata all&amp;rsquo;anno di uscita del sistema operativo. Ma poi con Windows ME (Millennium Edition) ha utilizzato un quasi-anno, un ibrido senza capo né coda, esattamente come quella versione di Windows. In parallelo la versione professionale di Windows riceveva un nome altisonante, NT (New Technology). Dopo un paio di anni nuovo giro e nuovo cambio e passiamo a Windows 2000. Altra giravolta con Windows XP, che nessuno sa cosa significhi esattamente (nemmeno io, comunque sta per eXPerience). Poi ancora un nome ibrido e senza senso, Vista, che infatti non si è filato nessuno. Infine una serie di numeri di versione, Windows 7 (ma anche, nel caso ci fosse qualche dubbio, Seven), Windows 8 e 8.1 e ora finalmente Windows 10 (ma non è che hanno dimenticato qualcosa?)&lt;/p&gt;&#xA;&lt;p&gt;Non c&amp;rsquo;è che dire, una strategia &lt;a href=&#34;http://en.wikipedia.org/wiki/Random_walk#/media/File:Antony_Gormley_Quantum_Cloud_2000.jpg&#34;&gt;lineare e coerente&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Cambieranno ancora idea. Soprattutto per quanto riguarda il significato del termine &lt;em&gt;per sempre&lt;/em&gt;. Del resto sono una azienda di software e il software devono pur venderlo, in un modo o nell&amp;rsquo;altro.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;Per gli utenti di Windows 7 Enterprise e di Windows 8 and 8.1 Enterprise, l&amp;rsquo;aggiornamento a Windows 10 verrà effettuato analogamente ai precedenti aggiornamenti per contratti multilicenza (Volume Licensing). La multilicenza sarà quasi sempre collegata ad un abbonamento che consente già ai sottoscrittori di usare la più recente versione di Windows disponibile.&amp;rdquo;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Conferma in pieno quello che ho scritto sopra. La multilicenza consente di usare la versione più recente di tutti i prodotti Microsoft. E conferma che mettere paletti non ha senso.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;I dispositivi con Windows RT saranno anch&amp;rsquo;essi esclusi dall&amp;rsquo;aggiornamento a Windows 10. La Microsoft ha promesso qualche forma di aggiornamento per gli utenti dei dispositivi con [processore] ARM, ma come questo avverrà rimane per ora sconosciuto.&amp;rdquo;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Non c&amp;rsquo;è che dire, una bella notizia per chi ha comprato (pochi per fortuna) un Surface RT credendo che ci girasse Windows ed Office. Magari dopo aver letto le tante recensioni entusiastiche (ad esempio &lt;a href=&#34;http://www.cnet.com/products/microsoft-surface-rt/&#34;&gt;CNET&lt;/a&gt;, &lt;a href=&#34;http://www.engadget.com/products/microsoft/surface/windows-rt/&#34;&gt;Engadget&lt;/a&gt;, &lt;a href=&#34;http://www.trustedreviews.com/microsoft-surface-tablet-for-windows-8-review&#34;&gt;Trusted Reviews&lt;/a&gt;, con l&amp;rsquo;eccezione di &lt;a href=&#34;http://www.pcpro.co.uk/microsoft/microsoft-surface-rt/32282/microsoft-surface-rt-review&#34;&gt;PC Pro&lt;/a&gt;) dei &lt;em&gt;giornalisti&lt;/em&gt; (ehm!) complici.&lt;/p&gt;&#xA;&lt;p&gt;Scoprendo invece solo ad acquisto effettuato che in effetti ci girava solo una &lt;em&gt;versione particolare&lt;/em&gt; di Windows e di Office, del tutto incompatibile con le solite applicazioni per Windows.&lt;/p&gt;&#xA;&lt;p&gt;Ora la Microsoft dice fra le righe che si sono sbagliati, che hanno prodotto dei tablet inutili spacciandoli per degli oggetti grandiosi. E che ora si rendono conto che non ha senso continuare a supportarli, tanto chi s&amp;rsquo;è visto s&amp;rsquo;è visto&amp;hellip;&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;In questo momento la Microsoft intende offrire l&amp;rsquo;aggiornamento gratuito solo nel primo anno [dopo l&amp;rsquo;uscita di Windows 10]. Successivamente, gli aggiornamenti saranno messi in vendita tramite le solite confezioni in scatola che la Microsoft ha sempre usato. Non saremmo particolarmente sorpresi nel vedere la Microsoft estendere in un modo o nell&amp;rsquo;altro [nel tempo] l&amp;rsquo;aggiornamento gratuito, ma questa ufficialmente è una offerta limitata nel tempo.&amp;rdquo;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Questa è la migliore di tutte. Dopo il primo anno venderanno l&amp;rsquo;aggiornamento &lt;em&gt;in scatola&lt;/em&gt;. E perché no anche su floppy, allora? Siamo nel 2015, chissà se alla Microsoft se ne sono accorti.&lt;/p&gt;&#xA;&lt;h4 id=&#34;confusione-sarà-il-loro-epitaffio&#34;&gt;Confusione (sarà il loro epitaffio)&lt;/h4&gt;&#xA;&lt;p&gt;Dopo aver letto un articolo come questo (ci saranno già decine di articoli simili sparsi per il web), la confusione dei poveri utenti di Windows non può che aumentare, come è testimoniato dalle centinaia di commenti che si possono leggere alla fine dell&amp;rsquo;articolo (non li ho letti tutti, lo giuro!)&lt;/p&gt;&#xA;&lt;p&gt;Fra la massa di stupidaggini che si trovano normalmente nei commenti a questi articoli, alcuni sollevano problemi o dubbi sensati. Ne riporto alcuni qui sotto.&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;Che succede se aggiorno il mio PC e poi devo reinstallare Windows da zero?&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;È la prima domanda che viene in mente. Mi danno l&amp;rsquo;aggiornamento gratis, ma questo è legato alla precedente installazione di Windows. Se per qualche motivo devo reinstallare Windows, ad esempio perché mi si è rotto il disco rigido e quindi non ho più nemmeno la partizione di ripristino, come posso dimostrare di aver aggiornato (gratis) la mia copia precedente di Windows entro il primo anno?&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;Prevedo che tanti utenti inesperti, dopo aver aggiornato gratis a Windows 10, quando gli si romperà il disco rigido saranno indotti a comprare una nuova copia [di Windows 10], prendendo una bella fregatura.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Anch&amp;rsquo;io.&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;Sarà possibile effettuare l&amp;rsquo;aggiornamento eseguendo una installazione pulita di Windows?&amp;rdquo;&lt;br&gt;&#xA;&amp;ldquo;Esegui prima l&amp;rsquo;aggiornamento. Poi una volta che ottieni il numero di licenza, installa il sistema operativo da zero.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;È vero, ma che senso ha? Un aggiornamento contiene in realtà tutto il nuovo sistema operativo, perché non dare agli utenti la possibilità di &lt;em&gt;scegliere&lt;/em&gt; cosa preferiscono fare, se aggiornare mantenendo dati e programmi o ripartire da zero?&lt;/p&gt;&#xA;&lt;p&gt;Questo, detto fra parentesi, vale anche per Apple. È vero che con OS X basta cancellare il contenuto del disco rigido con Disk Utility immediatamente prima di iniziare l&amp;rsquo;aggiornamento per eseguire una installazione &lt;em&gt;pulita&lt;/em&gt; del sistema operativo, ma la cosa mi sembra francamente troppo involuta per l&amp;rsquo;utente medio. Perché non chiederlo più semplicemente durante l&amp;rsquo;aggiornamento, magari come opzione per i soli utenti avanzati?&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;Per favore, datemi la possibilità di scaricare una ISO di Windows 10 da mettere su una chiavetta USB per eseguire una installazione da zero. Ho sempre fatto così e non voglio che questa cosa la faccia Windows Update.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;È chiaro che gli utenti di Windows sono abitudinari e poco propensi alle novità.&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;La mia installazione corrente di Windows è configurata in modo che i tutti i programmi finiscano nella partizione &lt;code&gt;C:&lt;/code&gt; del disco SSD, mentre le cartelle contenenti i dati degli utenti e quelli dei programmi finiscono in &lt;code&gt;D:&lt;/code&gt; su un disco meccanico, collegate a &lt;code&gt;C:&lt;/code&gt; con una &lt;em&gt;giunzione&lt;/em&gt;. In base alla mia esperienza, Windows 8.0/8.1 non funziona bene con questa configurazione. Le applicazioni Modern non funzionano e l&amp;rsquo;App Store di Windows non parte. Immagino già che l&amp;rsquo;aggiornamento non funzionerà e credo che dovrò ripartire da zero. Anche la Microsoft ha confermato che la mia configurazione non è supportata.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Qui siamo alla preistoria. Disco C:, disco D:, come si chiama la chiavetta, G: o H:? Ancora? Roba da DOS in salsa Windows XP/7/8/8.1, e fra poco anche Windows 10. Da correre a nascondersi per la vergogna.&lt;/p&gt;&#xA;&lt;p&gt;E poi, dai, cosa ci sarà mai di così difficile nel supportare una &lt;code&gt;giunzione&lt;/code&gt; fra una directory e l&amp;rsquo;altra?&lt;/p&gt;&#xA;&lt;p&gt;Una &lt;em&gt;&lt;a href=&#34;http://www.sevenforums.com/tutorials/278262-mklink-create-use-links-windows.html&#34;&gt;giunzione&lt;/a&gt;&lt;/em&gt; di Windows è più o meno un &lt;a href=&#34;https://melabit.wordpress.com/le-parole-per-dirlo/&#34;&gt;collegamento simbolico&lt;/a&gt; fra due directory. Roba di base, roba che su OS X e su un qualunque sistema Linux o Unix funziona senza problemi dagli anni &amp;lsquo;70. Funziona nelle workstation e nei computer da scrivania, funziona con architetture hardware enormemente differenti. Funziona anche fra  filesystem diversi, in locale e su &lt;a href=&#34;http://unix.stackexchange.com/questions/145636/symlink-from-one-workstation-to-another-without-mount&#34;&gt;dischi di rete montati sul Mac&lt;/a&gt;. E alla Microsoft non sanno come far funzionare un collegamento fra una directory e l&amp;rsquo;altra sullo stesso computer?&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;In passato ho avuto problemi ad attivare la mia copia di Windows 7. Ho comprato il Family Pack con una licenza per installare Windows su  tre PC diversi. Mi preoccupa il fatto che con Windows 10 non otterrò un codice di licenza analogo. Immagino i mal di testa quando dovrò reinstallare Windows. Lo faccio regolarmente e ogni volta sono obbligato a telefonare alla Microsoft e a parlare con il risponditore automatico per confermare il mio numero di installazioni. Ogni volta devo mentire e dire che ho effettuato solo una installazione. Se dico la verità e dico che ne ho fatte tre, il sistema mi considera un pirata.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Questa è lunga da tradurre ma è divertente e non potevo non metterla. :D&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusioni&#34;&gt;Conclusioni&lt;/h4&gt;&#xA;&lt;p&gt;È evidente che anche su un aspetto banale e piuttosto secondario come l&amp;rsquo;aggiornamento dei PC esistenti a Windows 10 le strategie di Microsoft sono, come sempre, involute e bizantine.&lt;/p&gt;&#xA;&lt;p&gt;La confusione fra gli utenti è grande ed aumenterà sempre di più quanto più si avvicinerà la data di lancio di questo benedetto Windows 10. Ma chi glielo farà mai fare a continuare stoicamente ad usare Windows?&lt;/p&gt;&#xA;&lt;p&gt;Voi che ne pensate? Anche se il l&amp;rsquo;articolo è lunghissimo, mi piacerebbe leggere le vostre idee e i vostri commenti in proposito.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Non è certo la prima volta, basta dare una occhiata (leggere è troppo!) alla pagina che descrive le &lt;a href=&#34;http://windows.microsoft.com/it-it/windows-vista/upgrading-from-windows-xp-to-windows-vista&#34;&gt;opzioni di aggiornamento da Windows XP a Vista&lt;/a&gt;. Roba da far morire di invidia i burocrati nostrani.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Febbre da aggiornamento</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2015/02/08/febbre-da-aggiornamento/</link>
      <pubDate>Sun, 08 Feb 2015 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2015/02/08/febbre-da-aggiornamento/</guid>
      <description>&lt;p&gt;Non c&amp;rsquo;è niente di meglio che una bella sessione di installazione di Windows per farti immediatamente riconciliare con OS X, i &lt;a href=&#34;http://fieldguide.gizmodo.com/the-worst-bugs-in-os-x-yosemite-and-how-to-fix-them-1652690924&#34;&gt;suoi bug occasionali&lt;/a&gt; e le sue &lt;a href=&#34;http://www.cultofmac.com/304592/fix-os-x-yosemites-annoying-overflowing-save-sheet-bug/&#34;&gt;idiosincrasie&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Qualche giorno fa mia figlia ha annunciato a colazione che il giorno dopo avrebbe dovuto portare all&amp;rsquo;università (primo anno) un PC portatile per iniziare un corso introduttivo all&amp;rsquo;uso del computer.&lt;/p&gt;&#xA;&lt;p&gt;I Mac erano rigorosamente proibiti, perché il professore doveva parlare di BIOS e di Word.&lt;/p&gt;&#xA;&lt;p&gt;Il legame fra il BIOS e Word mi sembrava piuttosto labile. Ma invece di addentrarmi in questo territorio scivoloso, ho fatto notare che Word gira sotto OS X esattamente come sotto Windows (la compatibilità dei file è un&amp;rsquo;altra cosa). Non fosse altro perché l&amp;rsquo;ultima versione per OS X è in grado di mostrare sia l&amp;rsquo;odioso Ribbon che il normale menu, una possibilità che gli utenti di Windows sognano ogni giorno, a meno di non &lt;a href=&#34;http://www.howtogeek.com/howto/19323/bring-office-2003-menus-back-to-2010-with-ubitmenu/&#34;&gt;installare UBitMenu&lt;/a&gt;, una di quelle utility di cui sotto Windows non si può fare  a meno.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Inoltre, ormai &lt;a href=&#34;http://www.howtogeek.com/175649/what-you-need-to-know-about-using-uefi-instead-of-the-bios/&#34;&gt;nemmeno i PC usano più il BIOS&lt;/a&gt;, quindi a rigore anche la maggior parte dei suoi compagni di corso non avrebbe potuto usare il proprio portatile per esercitarsi a configurare il BIOS.&lt;/p&gt;&#xA;&lt;p&gt;Niente da fare. I desideri del professore non si discutono (mentre quelli dei padri&amp;hellip;) e l&amp;rsquo;aggiornamento dei professori universitari non è contemplato dal contratto.&lt;/p&gt;&#xA;&lt;p&gt;A questo punto si trattava di riesumare il mio vecchio Sony Vaio, un portatile di dieci anni fa con installato Windows XP, dimenticato da tempo in un cassetto. Anche se il Vaio funzionava perfettamente prima di essere messo da parte, riaccendendolo Windows XP si bloccava poco dopo l&amp;rsquo;avvio con la solita &lt;a href=&#34;http://www.doubleclickfix.com/327/&#34;&gt;schermata blu&lt;/a&gt;. Ovviamente qualunque tentativo di riparare XP non aveva effetto, l&amp;rsquo;unica alternativa realistica era reinstallare Windows ed Office da zero.&lt;/p&gt;&#xA;&lt;p&gt;Ho installato tutte le versioni di Windows e di Office decine di volte: so bene che significa sottoporsi ad un tour massacrante di riavvii e di aggiornamenti. Ce l&amp;rsquo;avrei mai fatta in un giorno solo?&lt;/p&gt;&#xA;&lt;p&gt;Per &lt;a href=&#34;http://www.treccani.it/magazine/lingua_italiana/domande_e_risposte/lessico/lessico_309.html&#34;&gt;il rotto della cuffia&lt;/a&gt; ma ce l&amp;rsquo;ho fatta, lavorando ininterrottamente dalle nove di mattina a mezzanotte. Una cosa noiosissima: avendo fretta dovevo per forza rimanere vicino al computer per controllare quello che succedeva, lanciare i processi di aggiornamento e poi aspettare, aspettare, aspettare. Ne ho approfittato per leggere, distrattamente, con un occhio sempre sullo schermo.&lt;/p&gt;&#xA;&lt;p&gt;Installare Windows (naturalmente questa volta Windows 7) è il meno, in fondo.&#xA;Windows 7 fa quasi tutto da solo, le uniche scelte riguardano la configurazione del disco rigido (io ho deciso di cancellare tutto e di ripartire da zero), la creazione del primo utente del sistema e poco più.&lt;/p&gt;&#xA;&lt;p&gt;Ma una volta conclusa l&amp;rsquo;installazione e installato immediatamente l&amp;rsquo;antivirus &amp;ndash; mai, mai, mai usare Windows senza un antivirus decente! &amp;ndash; inizia il giro massacrante degli aggiornamenti, un processo ricorsivo che sembra non dovere finire mai.&#xA;Finito di installare un aggiornamento importante e dopo l&amp;rsquo;inevitabile riavvio, ci si ritrova spesso a dover aggiornare l&amp;rsquo;aggiornamento. Geniale.&lt;/p&gt;&#xA;&lt;p&gt;Ad un certo punto mi sono ritrovato a dover scaricare ed installare tutti insieme più di 400 pacchetti di aggiornamenti! Sono sicuro che parecchi di quei pacchetti modificano e correggono più e più volte gli stessi file.&lt;/p&gt;&#xA;&lt;p&gt;Ci sono stati anche momenti difficili, come quando uno dei 400 aggiornamenti si è bloccato a metà ed è rimasto così per più di due ore. Sono stato costretto a spegnere il PC di brutto e a riavviare, sperando di non ritrovarmi con qualche nuova &lt;a href=&#34;http://www.howtogeek.com/163452/everything-you-need-to-know-about-the-blue-screen-of-death/&#34;&gt;schermata blu mortale&lt;/a&gt;. Per fortuna questa volta Windows 7 si è avviato senza problemi ricominciando a macinare gli aggiornamenti come se nulla fosse, anche se intanto l&amp;rsquo;installazione di parecchi pacchetti era fallita miserabilmente.&lt;/p&gt;&#xA;&lt;p&gt;Naturalmente, una volta finito con Windows vero e proprio ed installato Office, il giro di aggiornamenti-riavvii-aggiornamenti si è ripetuto, quasi senza fine.&lt;/p&gt;&#xA;&lt;p&gt;Il concetto di aggiornamento cumulativo &amp;ndash; consolidare tutte le correzioni e le modifiche effettuate dall&amp;rsquo;uscita del sistema operativo ad oggi in un unico pacchetto &amp;ndash; sembra essere totalmente sconosciuto dalla parti di Redmond.&lt;/p&gt;&#xA;&lt;p&gt;Purtroppo anche chi usa Office sul Mac lo sa bene. Fino a Mavericks, una volta finito di installare Microsoft Office 2011 per OS X, i cicli di aggiornamento si susseguivano uno dopo l&amp;rsquo;altro, senza sosta. Per fortuna con Yosemite le cose sono cambiate. Aggiornare Office installato da zero su un Mac con OS X 10.10 non è più possibile, a meno di non &lt;a href=&#34;https://melabit.wordpress.com/2014/12/04/microsoft-office-2011-e-os-x-yosemite-un-matrimonio-complicato/&#34;&gt;ricorrere ad un trucco&lt;/a&gt;. Più che un baco, ormai lo considero un vantaggio.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Naturalmente insieme a &lt;a href=&#34;http://www.revouninstaller.com/revo_uninstaller_free_download.html&#34;&gt;Revo Uninstaller&lt;/a&gt;, &lt;a href=&#34;https://www.piriform.com/ccleaner&#34;&gt;CCleaner&lt;/a&gt;, &lt;a href=&#34;https://www.piriform.com/defraggler&#34;&gt;Defraggler&lt;/a&gt; e &lt;a href=&#34;https://www.piriform.com/recuva&#34;&gt;Recuva&lt;/a&gt; (lo so anch&amp;rsquo;io che le ultime tre sono tutte di &lt;a href=&#34;https://www.piriform.com/&#34;&gt;Piriform&lt;/a&gt;, ma non è colpa mia se il loro software è ottimo).&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Tante parole</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2015/01/08/tante-parole/</link>
      <pubDate>Thu, 08 Jan 2015 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2015/01/08/tante-parole/</guid>
      <description>&lt;p&gt;Ogni volta che scrivo un post per questo blog mi sforzo di esporre l&amp;rsquo;argomento trattato nel modo più chiaro possibile e di presupporre che chi legge non sappia nulla, o quasi, dell&amp;rsquo;argomento trattato. L&amp;rsquo;aspetto negativo di questo atteggiamento è che mi obbliga a ripetere continuamente il significato di alcuni termini fondamentali, correndo il rischio di far perdere il filo del discorso a chi conosce già il significato di questi concetti e appesantendo il tono generale del post.&lt;/p&gt;&#xA;&lt;p&gt;Per semplificare le cose ho quindi deciso di raccogliere le definizioni che mi vengono via via in mente in una pagina apposita, &lt;a href=&#34;http://melabit.wordpress.com/le-parole-per-dirlo/&#34;&gt;&lt;em&gt;Le parole per dirlo&lt;/em&gt;&lt;/a&gt;, accessibile direttamente dal menu principale del blog.&lt;/p&gt;&#xA;&lt;p&gt;La lista di definizioni inserite finora è piuttosto breve e segue un ordine vagamente &lt;em&gt;logico&lt;/em&gt;. Magari con il tempo ci sarà bisogno di dare una struttura più ordinata alla lista.&lt;/p&gt;&#xA;&lt;p&gt;Spero che non mancheranno i suggerimenti sui nuovi termini da inserire e le correzioni a quelli esistenti.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Un anno, cento post</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2014/12/18/un-anno-cento-post/</link>
      <pubDate>Thu, 18 Dec 2014 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2014/12/18/un-anno-cento-post/</guid>
      <description>&lt;p&gt;Questo blog spegne oggi la sua prima candelina virtuale con il centesimo post. Una coincidenza non casuale ma niente affatto pianificata.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Un anno fa non avrei mai potuto pensare di riuscire a scrivere tanto. È stata una bella fatica, ma allo stesso tempo una sfida divertente. Che ha messo a dura, durissima, prova la mia capacità di spiegare qualcosa in modo comprensibile. Spero qualche volta di esserci riuscito.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;In effetti qualche giorno fa mi sono accorto di essere arrivato quasi a cento e ho anticipato la pubblicazione di un paio di articoli per far coincidere le due date.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Perché Windows 10 non si chiama Windows 9?</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2014/10/10/perche-windows-10-non-si-chiama-windows-9/</link>
      <pubDate>Fri, 10 Oct 2014 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2014/10/10/perche-windows-10-non-si-chiama-windows-9/</guid>
      <description>&lt;p&gt;La prossima versione di Windows, la cui uscita è prevista per la metà del 2015, &lt;a href=&#34;http://macintelligence.org/blog/2014/10/03/pesce-di-ottobre/&#34;&gt;si chiamerà Windows 10&lt;/a&gt; e non, come sarebbe logico in base alla numerazione delle ultime due versioni, Windows 9.&lt;/p&gt;&#xA;&lt;p&gt;Del resto non è niente di nuovo, la Microsoft cambia continuamente lo schema di numerazione delle versioni del suo sistema operativo: siamo passati da Windows 3.0 e 3.1 a Windows 95 e 98, poi a Windows ME (argh!), poi ancora a Windows NT, a Windows 2000 e 2003, al sempiterno Windows XP, in seguito a Windows Vista (almeno per i pochi che hanno avuto la sfortuna di usarlo), e negli ultimi anni a Windows 7, 8, 8.1.&lt;/p&gt;&#xA;&lt;p&gt;Quello che è veramente nuovo e &lt;em&gt;creativo&lt;/em&gt; è la (presunta) ragione per saltare a più pari un numero di versione, passando direttamente da Windows 8.x a Windows 10.&lt;/p&gt;&#xA;&lt;p&gt;Secondo &lt;a href=&#34;http://www.pcworld.com/article/2690724/why-windows-10-isnt-named-9-windows-95-legacy-code.html&#34;&gt;quanto si può leggere in questi giorni in rete&lt;/a&gt;, la scelta sarebbe dovuta al fatto che, ai tempi di Windows 95 e 98 gli sviluppatori, per determinare la versione di Windows su cui stava per essere installata la loro applicazione, si limitassero a controllare la presenza della sola stringa &amp;ldquo;Windows 9&amp;rdquo;. Il motivo? Risparmiare tempo!&lt;/p&gt;&#xA;&lt;p&gt;A parte il fatto che, se fosse vera, una simile ragione farebbe dubitare seriamente delle capacità di certi sviluppatori (quanti microsecondi si risparmiano limitandosi a controllare la stringa &amp;ldquo;Windows 9&amp;rdquo; invece che &amp;ldquo;Windows 95&amp;rdquo; o &amp;ldquo;Windows 98&amp;rdquo;?), la (presunta) motivazione non è nemmeno vera.&lt;/p&gt;&#xA;&lt;p&gt;Ce lo dice proprio il &lt;a href=&#34;https://issues.jenkins-ci.org/secure/attachment/18777/PlatformDetailsTask.java&#34;&gt;codice Java&lt;/a&gt; riportato come esempio tipico di questo schema di controllo.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-java&#34; data-lang=&#34;java&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;String name &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; System.&lt;span style=&#34;color:#a6e22e&#34;&gt;getProperty&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;os.name&amp;#34;&lt;/span&gt;).&lt;span style=&#34;color:#a6e22e&#34;&gt;toLowerCase&lt;/span&gt;();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;String version &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; System.&lt;span style=&#34;color:#a6e22e&#34;&gt;getProperty&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;os.version&amp;#34;&lt;/span&gt;);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (name.&lt;span style=&#34;color:#a6e22e&#34;&gt;equals&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;solaris&amp;#34;&lt;/span&gt;) &lt;span style=&#34;color:#f92672&#34;&gt;||&lt;/span&gt; name.&lt;span style=&#34;color:#a6e22e&#34;&gt;equals&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;SunOS&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    name &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;solaris&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;} &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (name.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;windows&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    name &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;windows&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (name.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;windows 9&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (version.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;4.0&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            version &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;95&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        } &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (version.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;4.9&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            version &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;me&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        } &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#66d9ef&#34;&gt;assert&lt;/span&gt; version.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;4.1&amp;#34;&lt;/span&gt;);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            version &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;98&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    } &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (version.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;4.0&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            version &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;nt4&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        } &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (version.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;5.0&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            version &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;2000&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        } &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (version.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;5.1&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            version &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;xp&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        } &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (version.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;5.2&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            version &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;2003&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;} &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (name.&lt;span style=&#34;color:#a6e22e&#34;&gt;startsWith&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;linux&amp;#34;&lt;/span&gt;)) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;...&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Non c&amp;rsquo;è bisogno di essere dei programmatori per capire cosa fa questo programma.&lt;/p&gt;&#xA;&lt;p&gt;Dopo aver effettuato (righe 2-3) delle chiamate a funzioni di sistema per determinare il nome e il numero di versione del sistema operativo su cui sta girando, il programma controlla (riga 8) che il &lt;em&gt;nome&lt;/em&gt; del sistema operativo inizi con &amp;ldquo;windows 9&amp;rdquo; (secondo me c&amp;rsquo;è prima anche un baco, ma lasciamo stare).&lt;/p&gt;&#xA;&lt;p&gt;E fin qui tutto coincide con la (presunta) ragione per saltare a piè pari da Windows 8 a Windows 10 che sta circolando in rete in questi giorni.&lt;/p&gt;&#xA;&lt;p&gt;Ma poiché i programmatori (anche di Windows) non sono proprio stupidi, vengono eseguiti una lunga serie di controlli ulteriori (righe 9-27) per determinare la versione esatta di Windows, utilizzando questa volta il &lt;em&gt;numero di versione&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In altri termini il programma, dopo aver individuato genericamente di stare girando su Windows, riesce ad identificare con precisione la versione di Windows utilizzata, a partire da Windows 95 e fino a Windows 2003.&lt;/p&gt;&#xA;&lt;p&gt;Altro che risparmiare tempo!&lt;/p&gt;&#xA;&lt;p&gt;Le motivazioni della Microsoft per saltare a Windows 10 sono ben altre, e sono tutte legittime per carità. Ma di certo non sono legate all&amp;rsquo;esistenza, quasi vent&amp;rsquo;anni fa, di Windows 95/98.&lt;/p&gt;&#xA;&lt;p&gt;E sono assolutamente sicuro che non lo abbiano fatto perché il numero &amp;ldquo;9&amp;rdquo; potrebbe sembrare un passo indietro rispetto al &amp;ldquo;10&amp;rdquo; del sistema operativo di Apple. Chi mai potrebbe essere così contorto da sospettare una cosa del genere?&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Per un click in più</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2014/06/14/per-un-click-in-piu/</link>
      <pubDate>Sat, 14 Jun 2014 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2014/06/14/per-un-click-in-piu/</guid>
      <description>&lt;img src=&#34;https://pbs.twimg.com/media/BpdPFYuCMAARBhX.jpg:large&#34; class=&#34;alignnone&#34; /&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Oops! Tim Cook tweets photo of Mac production line running Windows&#xA;&amp;ndash; PCWorld&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Accidenti! Tim Cook twitta una foto della linea di produzione del Mac [Pro] su cui gira Windows&#xA;&amp;ndash; PCWorld&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Grande scandalo, a leggere l&amp;rsquo;&lt;em&gt;articolo&lt;/em&gt;. Come è possibile che il &lt;a href=&#34;http://www.pcworld.com/article/2360671/oops-tim-cook-tweets-photo-of-mac-production-line-running-windows.html&#34;&gt;Mac (Pro) sia prodotto usando Windows&lt;/a&gt;?&lt;/p&gt;&#xA;&lt;p&gt;Peccato che chi lo ha scritto non abbia nessuna nozione del fatto che (purtroppo) la maggior parte delle macchine industriali siano controllate da programmi software molto specifici (e costosi!) i quali, proprio per la loro specificità, sono scritti solo per un ben determinato sistema operativo. In questo settore il concetto di multipiattaforma non esiste. Si compra la macchina con il software associato e stop. Avviene lo stesso per sistemi diversissimi dai bancomat alle macchine automatiche per il caffé.&lt;/p&gt;&#xA;&lt;p&gt;Qui Windows fa la parte del leone. La sua ampissima diffusione, con la conseguenza che la maggior parte dei programmatori lo sa usare, insieme al basso costo dei PC da usare per lo sviluppo e poi in produzione lo rendono una scelta quasi inevitabile. Del resto in questi casi quello che importa non è il sistema operativo ma l&amp;rsquo;applicativo che ci si fa girare sopra (spesso l&amp;rsquo;unica applicazione installata).&lt;/p&gt;&#xA;&lt;p&gt;E nonostante ciò, anche in questi casi Windows fa ogni tanto le bizze e va in crash, esattamente come nel PC di casa. Come si potrebbe vendere un bel contratto di assistenza, altrimenti?&lt;/p&gt;&#xA;&lt;p&gt;Insomma, l&amp;rsquo;&lt;em&gt;articolo&lt;/em&gt; dice solo ovvietà. Ma fra le righe parla male di Apple.&lt;/p&gt;&#xA;&lt;p&gt;Tanti, tanti bei click assicurati.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Il migliore spot</title>
      <link>https://static.233.196.69.159.clients.your-server.de/it/2013/12/18/il-migliore-spot/</link>
      <pubDate>Wed, 18 Dec 2013 07:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/it/2013/12/18/il-migliore-spot/</guid>
      <description>&lt;p&gt;Giorni fa una collega è venuta da me, spaventata e pallidissima. Aveva un grave problema con il suo PC ed era sicura di aver perso tutti i documenti e i file di lavoro. In parte era colpa sua, &lt;em&gt;nessuno&lt;/em&gt; si degna di fare mai un backup su Windows&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;Vado a vedere, un po&amp;rsquo; scettico. Per esperienza so che i file ci sono, magari hanno dei problemi ma ci sono, e che sono recuperabili, almeno finché il disco rigido funziona.&lt;/p&gt;&#xA;&lt;p&gt;In effetti il PC era gravemente infettato. Ad un primo controllo sembrava veramente che avesse perso &lt;em&gt;tutto&lt;/em&gt;. Non solo i documenti ma anche le icone e i link ai programmi. Ma in realtà i file erano solo nascosti, e già quello è stato tranquillizzante.&lt;/p&gt;&#xA;&lt;p&gt;Ci sono voluti due giorni di ricerche sulla rete, di scansioni con anti-virus, anti-malware e tool vari, di operazioni sul famigerato registro di Windows, per tornare ad uno stato usabile.&lt;/p&gt;&#xA;&lt;p&gt;La collega si è rapidamente convinta a comprare un MacBook Air.&lt;/p&gt;&#xA;&lt;p&gt;Quale pubblicità migliore per Apple della consapevolezza di non dover più fare i conti, tutti i giorni, con queste porcherie? E di avere un Time Machine sempre attivo, con una copia &lt;em&gt;fresca&lt;/em&gt; di tutto quello che c&amp;rsquo;è sull&amp;rsquo;hard-disk?&lt;/p&gt;&#xA;</description>
    </item>
  </channel>
</rss>
