SQLite, una database per tutti

Qualche tempo fa, nel maggio 2015, al mio articolo che si trova su questo blog con il titolo “Software libero per gestire dati” ho allegato il file PDF “gestione_dati” che contiene quanto strettamente necessario per conoscere, tra l’altro, l’esistenza di SQLite e a cosa possa servire SQLite.
Come per tutti i numerosi software presentati in quella serie di articoli, la finalità era semplicemente quella di conoscere l’esistenza di un certo programma e di conoscere che cosa si può fare utilizzandolo.
Sul come utilizzarlo gli accenni erano molto stringati e, per chi fosse interessato, si rimandava alla documentazione esistente (manuali, guide, tutorial, ecc.).
Per quanto riguarda SQLite, rendendomi conto che questa documentazione è molto frammentata e, quando completa, oltre che essere in lingua inglese, è anche eccessiva e dispersiva per l’utente dilettante evoluto cui si rivolge il mio blog, ho ritenuto utile produrre una guida all’uso a misura, che è contenuta nell’allegato file PDF, liberamente scaricabile, stampabile e distribuibile.

sqlite

Software libero anche al Comune di Roma

Nella seduta dello scorso 14 ottobre, con deliberazione n. 55, la Giunta Capitolina ha formalmente assunto l’impegno all’uso di software libero o a codice sorgente aperto nell’Amministrazione Capitolina.
Le intenzioni di guardare con attenzione al software libero per le esigenze amministrative del Comune di Roma erano già state manifestate nel febbraio del 2004 dalla compianta Mariella Gramaglia, ai tempi del suo assessorato: ora le intenzioni sono divenute un impegno formalizzato ed anche il Comune di Roma volgerà irrevocabilmente verso l’utilizzo di software libero.
La questione dell’impiego di software libero nella Pubblica Amministrazione, non solo in Italia ma in Europa, ha assunto definitiva importanza all’inizio del millennio, quando la digitalizzazione divenne la via attraverso cui riformare il settore anche al fine di instaurare un nuovo tipo di rapporti con il cittadino.
Le quattro libertà garantite dal software libero:
0: Libertà di eseguire il programma per qualsiasi scopo,
1: Libertà di studiare il programma e modificarlo,
2: Libertà di ridistribuire copie del programma in modo da aiutare il prossimo,
3: Libertà di migliorare il programma e di distribuirne pubblicamente i miglioramenti, in modo tale che tutta la comunità ne tragga beneficio,
unitamente al fatto che ormai non si stava parlando solo delle profezie di Richard Stallman ma si stava toccando con mano l’esistenza di Linux, che proprio grazie alle quattro libertà, in breve volgere di tempo era diventato un sistema operativo libero di tutto rispetto, si sono infatti imposte all’attenzione della Pubblica Amministrazione in quanto potevano consentire a questa di creare lei stessa il software di cui aveva bisogno, adattando alle proprie esigenze software esistente senza bisogno di acquistare licenze e, soprattutto, immunizzandosi dal pericolo di soggiogarsi a ristrette cerchie di fornitori. Di più, con la possibilità di far circolare tra enti diversi le soluzioni create senza dover riconoscere proprietà intellettuali e relativi diritti a chicchessia.
Senza trascurare il fatto che nel momento in cui il processo di digitalizzazione avesse coinvolto i rapporti con il cittadino sarebbe stato anche necessario adeguarsi alla libertà del cittadino di avvalersi di software libero.
Il risultato di tutto ciò sarebbe stata l’affermazione di principi di libertà e trasparenza in un luogo nel quale non ce se ne potrebbe esimere e la realizzazione di notevoli risparmi sul piano economico in un luogo nel quale ce n’è molto bisogno.
Devo riconoscere che nei miei rapporti telematici che fin dalle origini ho instaurato con il fisco e con l’INPS non ho mai avuto problemi ad utilizzare Linux e i software di Mozilla e, per la mia esperienza, devo riconoscere che la Pubblica Amministrazione si è da subito messa, anche concretamente, sulla buona strada.
In Italia il primo solenne riconoscimento del software libero lo troviamo nell’articolo 68 del Decreto Legislativo 7 marzo 2005, n. 82 che istituì il Codice dell’Amministrazione digitale e il secondo importante tassello si è avuto nel 2012 con la creazione dell’Agenzia per l’Italia digitale. Nel citato articolo 68, sostanzialmente, si afferma il principio che gli enti della Pubblica Amministrazione sono tenuti a preferire software libero a software proprietario e possono ricorrere a quest’ultimo ove si dimostri che non c’è altro modo di risolvere l’esigenza informatica.
Sul piano applicativo abbiamo vari episodi di pionierismo. Risalgono al 2001 e al 2002 mozioni per l’adozione del software libero approvate dai Consigli Comunali di Firenze e di Lodi. Nel 2003 la Regione Toscana afferma in una Legge Regionale il principio dell’utilizzo preferenziale del software libero a sorgente aperta.
Da lì in poi sono cominciate le effettive adozioni di soluzioni di software libero nei server (Linux) e negli applicativi (Open Office e Libre Office), concentrate soprattutto nel Nord Est: Comune di Rovereto, Comune di Trento, Provincia di Bolzano, Provincia di Trento.
Buoni esempi dall’estero sono l’adozione di Linux come sistema operativo per l’attrezzatura informatica dell’Assemblea Nazionale Francese nel 2007, l’adozione di Open Office, Firefox e Thunderbird per tutti i punti operativi della Gendarmeria Francese nel 2005 con la sostituzione, negli anni immediatamente successivi, del sistema operativo Windows con il nuovo sistema operativo battezzato GendBuntu, adattamento di Linux Ubuntu alla Gendarmeria: pare che queste operazioni abbiano generato un risparmio di 2 milioni di euro all’anno.
Caso da citare quello del Comune di Monaco di Baviera che avviò la migrazione verso strumenti e impostazioni di software libero nel 2003 e la concluse nel 2013, ben dieci anni dopo. Ciò a motivo di una sospensione del progetto causata da alcuni detrattori che fecero insorgere dubbi su dubbi circa rischi di violazione di diritti di proprietà intellettuale insiti nell’adozione di software libero. Si dimostrò che il software libero è libero anche da questi problemi e si andò avanti: si giunse così al sistema operativo destinato a governare l’apparato informatico del Comune di Monaco di Baviera, chiamato LiMux, il Linux di Monaco. Ma i detrattori non deposero le armi e, nel 2014, scatenarono una nuova offensiva, accampando inefficienze attribuibili al nuovo sistema e presunte incompatibilità di formato tra i documenti prodotti dal Comune e i terzi (più che presunte, false, in quanto il formato ODF, Open Document Format, è ormai riconosciuto anche da MS Office; comunque ci vuole poco ad adeguarsi: basta installare gratuitamente LibreOffice), offensiva tale da far credere che si tornasse a Windows. Francamente non conosco lo stato attuale della diatriba e penso non sia ancora finita.
Forse il progetto di Monaco è stato troppo radicale all’inizio, essendo partito subito dal sistema operativo. Meglio ha fatto il nostro Ministero della Difesa che, seguendo un po’ il percorso della Gendarmeria francese, non è partito dal sistema operativo ma, come primo atto, dalla sostituzione di MS Office con LibreOffice: solo questo provvedimento, una volta che avrà interessato tutti i 150.000 computer del Ministero, si tradurrà in un risparmio di 29 milioni di euro. Poi si vedrà.
Stessa strada mi pare abbia intrapreso il Comune di Torino.
Mi piace comunque concludere citando le parole dell’Assessore a Roma Semplice Flavia Marzano, che di informatica ne capisce parecchio, a commento della recente citata delibera della Giunta Capitolina: “Niente più scelte che vincolino l’amministrazione ad un solo fornitore, ma soluzioni aperte e modulabili nel tempo che permettano un confronto concorrenziale tra diversi operatori. Obiettivo di questo provvedimento, e di questa Giunta, è quello di favorire il pluralismo informatico e la diffusione del software libero nell’amministrazione capitolina come strumento di maggiore efficienza, trasparenza, sostenibilità e indipendenza nell’esercizio delle proprie funzioni”.
Discorso più generale, che apre orizzonti molto più ampi rispetto alla semplice adozione di LibreOffice. Ma più gli orizzonti sono ampi più sono ampi gli interessi che si toccano: Monaco docet.
Intanto noi privati continuiamo ad acquistare, senza avere alcuna possibilità di fare altrimenti, computer dotati del sistema operativo Windows praticamente nudo e crudo, con preinstallati software commerciali in prova per 30 giorni trascorsi i quali dobbiamo pagare per continuare ad utilizzarli.
Quando riusciremo ad acquistare un computer con preinstallata una qualsiasi distribuzione Linux con accessibilità a tutta la serie di programmi di software libero che sono disponibili gratuitamente?
Nel frattempo, teniamoci pure l’Windows che ci hanno tirato dietro, ma interessiamoci dei programmi liberi che funzionano anche su Windows: negli articoli archiviati nella categoria Software libero di questo blog ne presento tanti, che ci consentono di fare di tutto.
Se siamo un po’ più coraggiosi ma abbiamo paura ad abbandonare Windows, cominciamo ad installare al suo fianco un sistema Linux: nell’allegato “Installazione di Linux Mint 18 Sarah” al mio articolo “Benvenuta Sarah” dello scorso luglio spiego come si fa.
Finirà che, come è successo a me, concluderemo col dire che Linux è meglio.

Software libero per aver cura del computer

Sul disco fisso del nostro computer abbiamo il sistema operativo, cioè una serie di file che servono per fare funzionare il computer stesso, abbiamo tutta una serie di programmi applicativi, quelli che servono per fare tantissime cose, come descritto nella serie di articoli sul software libero archiviati su questo blog e, infine, abbiamo i nostri dati: dati che possono essere file di lavoro, come quelli che contengono i conti della nostra azienda o di casa o che contengono la nostra tesi di laurea in corso di elaborazione, o file di archivio, come quelli che contengono raccolte di fotografie, di file musicali, di file video, di ebooks e quant’altro.
Tutto è ospitato, spazio permettendo, sul disco fisso: sistema operativo e programmi applicativi per definizione, file di lavoro per una evidente praticità e file di archivio, soprattutto se parliamo di un computer portatile, per la comodità di avere sottomano, ovunque ci troviamo, tutti i nostri archivi.
Se il disco fisso si rompe – e purtroppo capita, non solo per macchine vecchie – o se ci rubano il computer, perdiamo tutto.
Alla perdita del sistema operativo rimediamo installandone un altro sul nuovo disco fisso o sul nuovo computer; pure alla perdita dei programmi, sia pure con un bel po’ di lavoro se erano tanti, possiamo rimediare reinstallandoli. File di lavoro e file di archivio sono persi irrimediabilmente.
Se si rompe il sistema operativo, cioè se il computer non parte più, esistono modi e strumenti per recuperare i file di lavoro e i file di archivio presenti sul disco fisso prima che l’installazione di un nuovo sistema operativo rischi di cancellarli. Questo rischio è collegato al sistema operativo che andiamo ad installare e a come è organizzato il disco fisso: se il sistema operativo è Windows e tutti i file sono contenuti sul disco in una unica partizione l’installazione cancellerà tutto; se il sistema operativo è Linux – che, come ricordo sempre, è il migliore del mondo – con una certa abilità si potrebbe riuscire a salvare comunque i dati.
Fortunatamente tutti questi disastri o inconvenienti si possono evitare utilizzando software commerciali o liberi che ci aiutano, come si dice, a fare il backup delle nostre cose, praticamente ad avere su un disco diverso da quello inserito nel computer una copia di tutto. Un tempo si facevano i backup su disco floppy o ottico ma ormai le dimensioni dei dati da duplicare e il basso costo dei dischi fissi esterni o delle memorie flash su pennetta fa di uno di questi ultimi supporti quello ideale per ospitare i nostri backup.
Disco esterno o pennetta contenenti i backup andrebbero conservati in luogo diverso da quello in cui si trova il computer, ad evitare che un ladro o un incendio ci freghino computer e backup insieme: a questo proposito vengono molto bene le memorie di massa on-line messe a disposizione da provider di cloud computing.
Fortunatamente può capitare che il danno occorso ad un computer che non si avvia più non sia così grave da dover ricorrere a laboriosi ripristini: si può essere semplicemente cancellato o corrotto il file di boot o può essere intervenuta qualche altra banalità.
Paradossalmente è più difficile, per un dilettante, porre rimedio a questi piccoli inconvenienti che non a quelli più gravi, dove interviene il backup e il ripristino.
Modi e strumenti per fare questo e quello ci sono offerti in abbondanza dal mondo del software libero ed ho ritenuto utile richiamare quelli che mi sembrano i migliori nell’allegato manualetto in formato PDF, scaricabile e stampabile.

backup-e-non-solo

Kdenlive sempre meglio, ma solo per Linux

Nel documento in formato PDF, intitolato “multimedialità.pdf”, allegato al mio articolo “Software libero per la multimedialità” archiviato nella categoria “Software libero” di questo blog, ho presentato il software Kdenlive (che sta per KDE non linear video editor).
Considero questo software il meglio che ci sia in circolazione per montare filmati di livello professionale partendo dal materiale più disparato, come video clip di vario formato e risoluzione, fotografie e immagini archiviate in formato fotografico.
Nel maggio 2015, quando ho scritto i richiamati documenti, mi riferivo ad una versione della serie 0.9. Proprio in quei giorni era uscita la versione 15.04.0, la prima del nuovo corso: gli sviluppatori di Kdenlive, da quella versione, cominciarono una numerazione seguendo lo stile della Canonical per Ubuntu (15 sta per anno 2015 e 04 sta per Aprile). Trattandosi di una novità, non solo sul piano della numerazione, a quel tempo ho preferito parlare di qualche cosa di più consolidato e stabile e mi sono riferito alla precedente edizione.
Da quel momento ho tuttavia seguito il nuovo corso e, in poco più di un anno, devo dire che l’intenso lavoro degli sviluppatori di Kdenlive ha prodotto qualche cosa di perfetto.
L’ultima versione è la 16.08.01, rilasciata qualche giorno fa (esattamente l’8 settembre 2016), ed è succeduta, ulteriormente perfezionandola, alla versione 16.08.00, rilasciata il 18 agosto 2016: nella comunità Kdenlive non si sono nemmeno fatte le ferie estive.
E’ una versione che sembra fatta apposta per Ubuntu 16.04 e per Linux Mint 18: temo, anzi, che su precedenti versioni di Ubuntu e di Linux Mint sia meglio affidarsi alla versione presente nel repository.
Per installarla su Ubuntu 16.04 o su Linux Mint 18, nei cui repository c’è una versione precedente, occorre digitare su terminale, con collegamento Internet attivo, quanto segue:

sudo add-apt-repository ppa:kdenlive/kdenlive-stable
sudo apt-get update
sudo apt-get install kdenlive

Purtroppo per chi non usa Linux, non ci sono tutte queste novità. Su MacPorts penso che la più recente versione disponibile per Mac OS X sia la 15.04. Per Windows occorre sempre ricorrere alla Virtual Box con una versione della serie 0.9.  Pare comunque che gli sviluppatori di Kdenlive siano intenzionati a produrre, a breve, qualche cosa di bello anche per Windows.
La conclusione, per intanto, è che, per godere appieno dell’ultimo grido di Kdenlive dobbiamo avere il sistema operativo Linux: non dico di fare come me, che non uso più Windows da anni, ma almeno installiamo Linux di fianco a Windows sul nostro computer oppure mettiamolo su una chiavetta USB. Spiego come si può fare tutto questo nel manualetto “installazione_linux_mint_18_sarah.pdf” allegato al mio articolo “Benvenuta Sarah” pubblicato lo scorso Luglio su questo blog e archiviato nella categoria “Software libero”.

Ma vediamo cosa ci offre la nuova versione di Kdenlive.
Sul piano puramente estetico abbiamo la possibilità di scegliere tra alcuni temi e stili per l’interfaccia grafica: a me piace molto il tema Breeze Dark con lo stile Breeze.
Per quanto riguarda l’editing delle clip e il loro montaggio tutto rimane praticamente come prima e valgono i richiami e i suggerimenti che si trovano nel mio già citato documento “multimedialità.pdf”: unica bella novità la possibilità di scegliere le transizioni e le loro proprietà su elenchi che ai soliti nomi inglesi, a volte incomprensibili, abbinano piccoli schemi illustrativi che danno l’idea di che cosa produce la transizione che andiamo a scegliere.
La funzione di conversione del formato delle clip si è arricchita di alcune voci, tra cui le quattro DVD NTSC e PAL nei rapporti di aspetto 16:9 e 4:3, già presenti nelle precedenti versioni ma nascoste nella procedura di creazione del DVD.
Le più grosse novità, per un utente dilettante, riguardano il momento della produzione del risultato del montaggio: esportazione, o rendering, che dir si voglia. Il menu di scelta si è semplificato ed arricchito nello stesso tempo. Semplificato in quanto le opzioni ci vengono presentate in raggruppamenti tipologici, arricchito in quanto troviamo cose che non c’erano prima. I raggruppamenti sono:
– Generic (HD per il web, per computer e mobile) che ci offre i formati WebM, MP4 e MPEG-2;
– Ultra High Definition (4K) che ci offre i formati WebM-VP9 e MP4-H265;
– Old TV definition (DVD, ecc.) che ci offre i formati VOB per DVD, Flash, MPEG4-ASP/MP3 compatibile DivX e Windows Media Player;
– Losless HQ che ci offre i formati FFV1, H264 e HuffYUV.
Altra semplificazione riguarda il fatto che, una volta scelto il formato che ci interessa, non avremo più il problema di indicare separatamente i parametri per ottenere la qualità desiderata (bitrate, ecc.) ma ci basterà posizionarci in una delle cinque possibili tacche del cursore Quality: l’ultima corrisponde all’eccellenza, la quarta, penultima, corrisponde ad una qualità elevata e quella di mezzo, la terza, corrisponde ad una qualità buona ed accettabile: il tutto a bitrate variabile automaticamente governato dal programma. Con il risultato che i file prodotti saranno, a parità di qualità, meno pesanti, anche di molto: un filmato di un minuto codificato con un vecchio Kdenlive a bitrate fisso 2.000 in MPEG-4 pesava 16,2 MB; lo stesso prodotto con il nuovo Kdenlive a qualità elevata e bitrate variabile automatico in MP4 pesa 9,7 MB.
Questo formato MP4 (H264/AAC), peraltro definito da Kdenlive come “dominating format”, che corrisponde al formato MPEG-4 Part 14 e non al vecchio MPEG-4, è una delle grandi novità che troviamo nei Kdenlive di ultima generazione: è un contenitore che, a parità di qualità, abbatte notevolmente il peso dei file, solo facendoci pagare tutto ciò con un minimo allungamento del tempo richiesto dal rendering.
Altra grande novità la comparsa dei formati per l’Ultra HD 4k.
Come sempre, per i maghi che conoscono i segreti della piattaforma MLT (Media Lovin’ Toolkit) su cui si basa Kdenlive, esiste la possibilità di programmare profili di produzione personalizzati.
Siamo peraltro in presenza di un software che ha il vantaggio di porsi alla portata del dilettante ma che non fa mancare nulla al professionista.
Il grande difetto di questo mondo MLT è la scarsità di documentazione. Lo stesso manuale Kdenlive presente sul sito da cui possiamo scaricare la versione 16.08.01 è fermo ad una versione vecchia di almeno otto mesi.
Ricordiamo, comunque, che siamo in presenza di software libero, prodotto da appassionati volontari e che, nonostante ci offra ciò che troviamo in costosissimi software commerciali professionali, non ci costa nemmeno un euro.

Benvenuta Sarah

Era stato promesso per giugno ed è arrivato in extremis, il 30 giugno, il rilascio di Linux Mint 18, chiamato Sarah.
Ci viene offerto nelle due versioni di ambiente desktop Mate e Cinnamon, quest’ultimo più di casa per la comunità Mint e mio preferito, e nelle due versioni a 32 e 64 bit.
Non potevo ignorare l’avvenimento in quanto Linux Mint è quella che considero la migliore distribuzione Linux esistente: mi rendo conto che si tratta in gran parte di una questione di gusto ma c’è anche un apprezzamento per alcune doti non secondarie, come l’accuratezza con la quale tutto il sistema viene assemblato, con tutte la traduzioni che servono, e tante piccolezze che ti danno la sensazione di una cosa curata nei minimi particolari.
Rispetto a papà Ubuntu inoltre, soprattutto da quando è là subentrato l’ambiente desktop Unity, è molto più facilmente personalizzabile per quanto riguarda l’organizzazione del menu.
Ma lasciamo questi aspetti, che, ammetto, sono più estetici che di sostanza.
La sostanza è che Mint 18, Sarah, è basato su Ubuntu 16.04 LTS e godrà pertanto di un supporto quinquennale di assistenza e di aggiornamenti.
Il kernel Linux è il 4.4.
I requisiti hardware per un funzionamento ottimale sono simili a quelli richiesti da Ubuntu 16.04 (1 GB di RAM, risoluzione schermo 1024×768); Sarah si comporta tuttavia molto bene anche con 512 MB di RAM e si fa vedere anche con risoluzione schermo 800×600 (premendo ALT si può eventualmente trasportare la finestra in modo da vedere anche cose che potrebbero rimanere fuori dallo schermo). Sono pertanto requisiti più da Xubuntu che da Ubuntu e li troviamo soddisfatti anche su computer vecchiotti.
Possiamo scaricare l’immagine ISO da qui : la versione a 32 bit occupa 1,6 GB e la versione a 64 bit occupa 1,7 GB. Per la masterizzazione dell’immagine occorre pertanto un DVD.
Sullo stesso sito, se non siamo attrezzati per un ragionevolmente rapido download, possiamo acquistare il DVD già masterizzato spendendo attorno agli 11 dollari, per metà dovuti alle spese di spedizione, e nel giro di una settimana avremo in casa il disco.
Il disco, masterizzato da noi con l’immagine scaricata o acquistato già masterizzato, ci offre la possibilità di provare il sistema operativo e, se ci piace, soprattutto se vediamo che funziona sul nostro computer, di installarlo.
Per utilizzare il disco occorre avviare il computer con il disco inserito. Nel caso non succeda nulla di diverso dal solito, cioè nel caso il computer si accenda presentandoci il sistema operativo consueto, vuol dire che esso non è configurato in modo da prendere il boot da CD/DVD ed allora dobbiamo predisporlo in tal senso intervenendo sul BIOS secondo la procedura ben descritta nell’articolo che troviamo qui .
Se invece tutto va bene, con la lentezza dovuta alla necessità di leggere e caricare dati nella RAM del computer dal DVD, dopo qualche minuto potremo ammirare il desktop di Linux Mint 18, Sarah, pienamente funzionante.
Scorrendo il menu vediamo che abbiamo già quanto serve per fare praticamente di tutto sul PC.
Per l’ufficio abbiamo un lussuoso LibreOffice 5 completo e un lettore di PDF.
Per Internet abbiamo il browser Firefox e il server di posta Thunderbird.
Per la grafica abbiamo il superlativo GIMP per la manipolazione di immagini, oltre ad un semplice visualizzatore di immagini e ad un visualizzatore/organizzatore di immagini, molto spartani ma efficienti.
Per l’audio/video abbiamo un lettore/organizzatore di media musicali, un riproduttore di video e un software per la masterizzazione di CD/DVD.
A proposito di media, l’immagine di base del sistema operativo scaricata o che troviamo masterizzata sul DVD, a differenza di quanto avveniva in precedenti edizioni di Mint, non contiene alcun codec (il software che serve per riconoscere i vari formati di file multimediali) e pertanto i riproduttori di media installati non riproducono nulla fino a quando non avremo installato i codec.
Per farlo intanto che proviamo il sistema, essendo collegati a Internet, andiamo nel menu Sound & Video e scegliamo Install Multimedia Codecs.
Sempre in sessione di prova possiamo anche installare, essendo collegati a Internet, altri programmi da sperimentare: basta che andiamo nel Software Manager cliccando sulla relativa icona nella schermata del menu.
Teniamo conto del fatto che tutto ciò che installiamo durante la sessione di prova, dai codec ai programmi, è volatile e lascia inalterato il nostro DVD. Pertanto, una volta spento il computer, al successivo rilancio del sistema con il DVD di tutte le nostre installazioni precedenti non ci sarà alcuna traccia.
Tutto ciò serve a dire che, se vogliamo veramente utilizzare il nostro Linux Mint 18 Sarah, non possiamo certamente farlo con il DVD ma dobbiamo installarlo sul disco fisso del computer o su una pennetta USB, supporti che, tra l’altro, renderenno molto più veloce e fluido lavorare rispetto a farlo con il sistema caricato da DVD.
Soprattutto, i nuovi programmi che installeremo e tutti i nostri file rimarranno permanentemente installati e li ritroveremo alla riaccensione del sistema.
A chi voglia fare il passo offro nell’allegato file PDF, scaricabile e stampabile, un manualetto da seguire per il non difficile ma nemmeno banale procedimento di installazione. Per quanto ovvio, dal momento che durante l’installazione si possono compiere errori le cui conseguenze comportano la perdita di dati o di sistemi operativi, declino ogni responsabilità mi si volesse imputare e raccomando a chi voglia avventurarsi un preventivo backup su supporto esterno del sistema su cui si andrà ad operare: almeno una copiatura dei propri file di lavoro o di archivio dal disco fisso ad un supporto esterno.
Una volta installato Linux Mint 18 Sarah lo si potrà arricchire seguendo le proposte che si trovano in tutta la serie di articoli archiviati in questo blog nella categoria Software libero.
Buon Linux.

installazione_linux_mint_18_sarah

Matematica e statistica con Calc

Sono parecchi i software dedicati alla matematica ed alla statistica.
Da appassionato di software libero non posso non citare Maxima (con il suo semplificante ad interfaccia grafica wxMaxima) e Gretl. Maggiori riferimenti su questi software si trovano nel file PDF allegato al mio articolo “Software libero per calcolare” pubblicato in questo blog e archiviato nella categoria “software libero”. Senza nulla togliere, ovviamente, ai vari Scilab, Matlab, Derive, ecc.
Con questi software si può fare proprio tutto.
Con un foglio di calcolo, come Calc, non possiamo fare tutto: per esempio non possiamo fare calcolo simbolico ma dobbiamo trattare solo numeri. Il che, comunque, non è poco; anche perché, nel tempo, i fogli di calcolo si sono arricchiti di formule e funzioni che ci permettono di compiere analisi numeriche veramente interessanti e sofisticate, molto spesso con difficoltà inconsistenti.
Proprio l’abbondanza di formule e funzioni contenute nei moderni fogli di calcolo mi ha spinto a proporre la selezione contenuta nel lavoro allegato, tendente a far emergere quali siano le più interessanti e proficue in relazione ad alcune delle più ricorrenti finalità dell’analisi numerica.
Gli esperti – e ce ne sono sicuramente tanti più di me – molto probabilmente non troveranno qui nulla che già non sappiano.
I neofiti, siano essi studenti o dilettanti, troveranno invece certamente qualche cosa di utile e scopriranno quanto troppo spesso sia sottoutilizzato quel formidabile strumento che è il foglio di calcolo.
Il foglio di calcolo, chiamato anche foglio elettronico (in inglese spreadsheet), nasce da un’idea del professore universitario Dan Bricklin poi concretizzatasi, con l’aiuto di Bob Frankston, nel prodotto VisiCalc reso disponibile nel 1979 per il computer Apple II e nel 1981 per il PC IBM.
A partire dal 1983 VisiCalc fu soppiantato da un prodotto della Lotus, chiamato 1-2-3, molto più compatto e veloce, poi incluso anche nella suite per ufficio Symphony.
Nel frattempo IBM dotava i propri PC con sistema operativo DOS della serie Assistant, una suite per ufficio che conteneva una sorta di foglio di calcolo molto rudimentale, Planning Assistant.
Tutto venne sbaragliato con il rilascio, il 30 settembre 1985, di Microsoft Excel da parte della Microsoft Corporation. Il successo di Excel fu in gran parte dovuto al fatto di essere il primo foglio di calcolo che si adattava al neonato ambiente operativo Windows del sistema operativo MS-DOS.
Nel frattempo si sono susseguiti altri tentativi di produzione di software di questo tipo.
Nel 1988 ci provò la Borland con Quattro, poi divenuto Quattro Pro, finito nella suite WordPerfect della Novell e finalmente nella suite WordPerfect Office della Corel.
Nella stessa epoca vede la luce il foglio elettronico Calc incluso nella suite StarOffice, sviluppata dalla tedesca StarDivision poi acquisita dalla Sun Microsystem che, nel 2000, rilasciò i sorgenti di StarOffice alla comunità open source dando così vita al progetto OpenOffice. Da questo ceppo nascono i fogli di calcolo oggi inclusi nelle suite Apache OpenOffice, LibreOffice e NeoOffice, specificamente dedicata a Mac OS X, tutte rilasciate con licenza libera. Il foglio Calc di queste suite è in tutto equivalente a Microsoft Excel, con il quale può interscambiare i file.
Il mondo del software libero open source, a partire dal 1998, ha sviluppato e mantiene tuttora un altro foglio di calcolo, Gnumeric, in tutto simile ai citati più evoluti, con la sola eccezione che gli manca la funzione per elaborare tabelle pivot.
Il testo allegato fa esclusivo riferimento al foglio Calc di LibreOffice e gli utenti di Excel, se avranno la pazienza di leggerlo, si accorgeranno che Calc non ha assolutamente nulla da invidiare a Excel, anzi…
Rammento che Calc di LibreOffice è identico a Calc contenuto in OpenOffice e che tutti questi software liberi si possono scaricare facilmente da Internet e sono disponibili per tutti i sistemi operativi per PC, Linux, Mac OS X e Windows.
Il file PDF allegato è liberamente scaricabile, stampabile e distribuibile.

Calc di LibreOffice

Compatibilità tra file system

Frequentando i vari forum dedicati a Linux ci troviamo spesso di fronte a disperate segnalazioni della lentezza con cui a volte avviene il trasferimento o la copiatura di file di dimensione elevata dal nostro computer Linux a supporti esterni (pennette, dischi esterni, ecc.): al punto che ho trovato un caso in cui una sfortunata esperienza di questo tipo ha suscitato grande delusione ed è stata motivo di abbandono del sistema Linux e di ritorno a Windows da parte di un utente.
Peccato! perché, anche con questo inconveniente, Linux, come ripeto sempre, rimane il miglior sistema operativo del mondo ed è infatti l’unico sistema operativo che nativamente, cioè senza bisogno di software aggiuntivo, può leggere e scrivere dati su supporti formattati per altri sistemi operativi.
Cioè a dire: se da Windows vogliamo copiare un file su un supporto formattato per Linux, il supporto manco lo vediamo; con un software aggiuntivo gratuito possiamo vederlo e trattarlo in sola lettura; con un software parecchio costoso possiamo provare anche a scriverci sopra, con i tempi che ci passerà il convento. Da Linux, invece, possiamo copiare i file dove vogliamo: se ci capita di copiarne uno di parecchie decine di MB su un supporto formattato NTFS (il file system corrente per Windows) può darsi che ci tocchi di metterci un po’ di tempo. Tutto qui.
Ma vediamo di capirci qualche cosa in più, anche per saperci regolare.
File system usati e riconosciuti dai vari sistemi operativi
Il file system è il modo con cui i file sono organizzati su un dispositivo di archiviazione. Ciascun sistema operativo ha un suo modo di archiviare innanzi tutto i file che lo costituiscono.
Attualmente Linux utilizza il sistema ext4, Windows utilizza il sistema NTFS e Mac utilizza il sistema HFS+.
Quando il sistema operativo si collega ad un supporto diverso da quello su cui sono memorizzati i suoi file (altra partizione dello stesso disco, disco esterno, pennetta USB, ecc.) si aspetta innanzi tutto di trovare su questo supporto lo stesso tipo di organizzazione dei file oppure un tipo di organizzazione della stessa natura: per Linux si tratta dei sistemi ext2 e ext3, per Windows si tratta del sistema FAT32, per Mac si tratta del sistema HFS. Questi sistemi sono rispettivamente precedenti edizioni dei sistemi attuali, con i quali sono perfettamente compatibili, soltanto meno efficienti e, soprattutto, con alcune limitazioni riguardanti la dimensione massima dei file memorizzabili.
Lettura, trasferimento e copiatura di file avendo a che fare con supporti con questo tipo di compatibilità vengono realizzati con la massima velocità.
Ciascun sistema operativo, poi, si comporta in una certa maniera se il supporto diverso da quello su cui sono memorizzati i suoi file ha anche un diverso tipo di organizzazione dei file. In particolare:
. dal sistema Linux si può leggere e scrivere anche su sistemi FAT32 e NTFS (quelli di Windows), pur con l’inconvieniente della lentezza di scrittura cui si accennava prima nel caso di NTFS, e su sistemi HFS e HFS+ (quelli di Mac), in quest’ultimo caso in sola lettura se journaled;
. dal sistema Windows si può leggere e scrivere solo su sistemi FAT32 e NTFS; con gli accessori gratuiti Mini Tool Partition Wizard e HFS Explorer con Java si può rispettivamente andare in sola lettura anche su ext2, ext3 ed ext4 (quelli di Linux) e HFS (uno di quelli di Mac); per andare su HFS e HFS+ (quelli di Mac) in lettura e scrittura occorre arricchire Windows di costosi software commerciali (MacDrive o Paragon HFS);
. dal sistema Mac si può leggere e scrivere su FAT32 (uno di quelli di Windows) e, da OSX “Leopard” in poi, anche su NTFS (l’altro di Windows).
Come si vede, il tipo di organizzazione dei file che si presta meglio ad un interscambio tra sistemi operativi è il FAT32, sul quale leggono e scrivono senza problemi tutti i tre sistemi operativi che fanno funzionare i personal computer. Unici difetti quello di essere un file system di vecchia concezione, meno efficiente di quelli che sono venuti dopo e, per gente esosa, quello di supportare una capacità massima di memorizzazione di 1 TiB e di poter memorizzare file di dimensione massima di 4 GB ciascuno. Grande pregio quello di essere il sistema riconosciuto da lettori USB diversi dai computer (lettori MP3, lettori DVD con presa USB, ecc.).
Nessun dubbio sul fatto che, se ci riferiamo a pennette USB, il FAT32 è il meglio in quanto i difetti praticamente non si avvertono e il pregio si esalta.
Se ci riferiamo a dischi esterni o a partizioni su dischi condivisi da sistemi operativi diversi il problema si complica e siamo sicuramente attratti da NTFS, a causa della sua maggiore efficienza sotto Windows, però con il citato inconveniente sotto Linux.
Formattazione dei supporti dai vari sistemi operativi
La struttura del file system viene impostata con la così detta formattazione del supporto di memorizzazione.
Il sistema operativo è dotato di tools per la formattazione, attraverso i quali ciascun sistema, oltre a realizzare la formattazione per il proprio file system, può realizzare altri tipi di formattazione. In particolare:
. dal sistema Linux si può formattare anche in FAT32 e NTFS (i sistemi di Windows) e, previo caricamento dal gestore software del programma hfsprogs, in HFS+ (quello di Mac);
. dal sistema Windows arricchito del software gratuito MiniTool Partition Wizard si può formattare anche in ext2, ext3 ed ext4 (i sistemi di Linux) e installando il software commerciale a pagamento Mac Drive, si può formattare anche in HFS+ (quello di Mac);
. dal sistema Mac si può formattare anche in FAT32 e, con software aggiuntivi, anche in NTFS (Windows) e ext2, ext3 ed ext4 (i sistemi di Linux).

Importante riconoscimento per OpenJDK

Sta per uscire la nuova versione di Android, che sarà la 7, il cui nomignolo avrà l’iniziale N. Pare che non ci siano molti nomi di dolciumi che iniziano per N nella lingua inglese e c’è chi scommette che, per tener fede al nomignolo che richiami un dolciume, Google dovrà ricorrere a “Nutella”, rendendo così omaggio all’inventiva dolciaria italiana. Da buon cremonese mi accontenterei anche di “Nougat”, che è il termine con cui è universalmente conosciuto il torrone.
A parte questa piccola incertezza, è ormai certo, invece, che Android 7 sarà una cannonata e che la piattaforma ufficiale per lo sviluppo delle applicazioni sarà OpenJDK, cioè la versione libera e open source di Java Standard Edition.
La storia della libertà di Java è alquanto intricata.
Creato nei pensatoi della Stanford University ad opera di una equipe guidata da James Gosling, il linguaggio Java venne prodotto dalla Sun Mycrosystem (dove Sun non è il sole ma sta per Stanford University Network). Questa azienda, già nel 2006, prima di essere assorbita dalla Oracle (per la modica cifra di 7 miliardi di dollari), aveva avviato una implementazione libera e open source della piattaforma Java, che assunse presto il nome di IcedTea e che costituisce il germe su cui si è sviluppata l’attuale piattaforma open che, da Java 7 in poi, si chiama OpenJDK ed è distribuita sotto licenza GNU GPL, cioè come software libero.
Parallelamente anche la fondazione Apache aveva avviato la realizzazione di una piattaforma Java open source con il progetto Harmony.
E’ proprio da quando l’IBM, nel 2010, ha abbandonato il sostegno al progetto Harmony unendosi alla Oracle nel sostegno a OpenJDK che quest’ultimo è diventato il riferimento unico del mondo del software libero e lo troviamo di default inserito in tutte le distribuzioni Linux.
OpenJDK sta per Open Java Development Kit ed è il pacchetto necessario per sviluppare applicazioni per computer usando il linguaggio Java. Il pacchetto contiene il sottopacchetto OpenJRE, cioè Open Java Runtime Environment, necessario per far girare sul computer le applicazioni sviluppate con il linguaggio Java. Per chi non è interessato a sviluppare applicazioni Java basta il JRE, che, nella versione Open o nella classica originale della Oracle, comunque gratuita, è bene avere sul computer per poter utilizzare le numerose applicazioni sviluppate in Java che esistono.
La Oracle, pur appoggiando la diffusione della versione open del kit di sviluppo standard, continua a distribuire i pacchetti binari del JDK e del JRE da lei prodotti e protetti da una licenza proprietaria.
Per cui non tutta Java è libera: alcune API (Application Programming Interface) possono essere presenti nel pacchetto originario della Oracle e non essere presenti nel pacchetto open e tutto questo genera pericolose trappole.
La stessa Google, che per sviluppare il primo motore Java a corredo del sistema Android ha fatto affidamento su API Java derivate dal progetto Harmony in itinere, è caduta in una di queste trappole e, pare inavvertitamente, ha utilizzato qualche cosa che non era o non era ancora sotto licenza libera: da qui l’annosa diatriba tra Google e Oracle, arrivata fino alla Corte Suprema degli Stati Uniti, con alla base la richiesta della Oracle di un indennizzo da un miliardo di dollari.
D’altra parte su OpenJDK, qualche anno fa, erano diffuse voci di inaffidabilità: pare che non funzionasse bene per la costruzione di applicazioni un po’ impegnative. Ma pare anche che col tempo abbia raggiunto un ottimo livello di affidabilità. Ne è una dimostrazione il fatto che Google lo abbia finalmente adottato in pieno; nè possiamo credere che ciò sia avvenuto, come qualche maligno insinua, per fare un dispetto alla Oracle: Android è ormai una cosa molto seria e non se ne può certo giocare la fama per un dispetto infantile.
Allora usiamo anche noi con fiducia OpenJDK.
Se siamo studenti che vogliono imparare o, come nel mio caso, dilettanti hobbisti ne avremo sicuramente a sufficienza, anche nel caso abbia ancora qualche difetto, per i nostri esperimenti.
Per i professionisti valga il fatto che lo ha scelto anche Google e, soprattutto, che il suo utilizzo anche per programmi da mettere in commercio con profitto eviterà all’autore di essere inseguito dalla Oracle.
Nel documento PDF allegato, scaricabile e stampabile, a vantaggio di studenti e hobbisti ho raccolto alcuni suggerimenti sugli strumenti di software libero esistenti per programmare in linguaggio Java, anche per applicazioni Android.

java_android

Addio 32 bit

Ubuntu 16.04, che sarà rilasciato il prossimo aprile, sarà l’ultimo che affiancherà alla versione a 64 bit la versione a 32 bit.
Nel mondo Linux si è avuto da tempo il precedente Chakra Arch Linux, che ha preso la decisione di abbandonare l’architettura a 32 bit già nel 2012 suscitando un vespaio di critiche: tale decisione fu infatti ritenuta di totale incoerenza con il concetto “linux per tutti” che caratterizza questo mondo. E, nel 2012, mi pare non si trattasse di critiche infondate.
Quattro anni dopo, peraltro di fronte ad una versione, la 16.04 di Ubuntu, che sarà una LTS e sarà cioè supportata e aggiornata per altri quattro anni, direi che non c’è proprio nulla da dire.
Del resto, se guardiamo al mondo Windows o Mac, le attenzioni verso l’architettura a 32 bit riguardano ormai il minimo di correttezza nei confronti di chi aveva acquistato sistemi operativi basati su quell’architettura.
Infine occorre considerare che software a 64 bit se ne trova parecchio e che anche software originariamente ed ancora basato sull’architettura a 32 bit gira molto bene anche su sistemi a 64 bit.
Forse troviamo qualche problemino nel mondo Linux, dove, per far girare su un 64 bit software a 32 bit, qualche volta dobbiamo smanettare un po’ per aggiustare le dipendenze: speriamo che il 64 bit di Ubuntu 16.04, in questo senso, sia migliore di Ubuntu 14.04 e precedenti.
Così ci dobbiamo preparare a dare l’addio al 32 bit e viene voglia di farlo subito.
Ma vediamo innanzi tutto cosa vuol dire.
Lavorare a 64 bit piuttosto che a 32 bit significa semplicemente poter accedere a una memoria RAM enormemente superiore, con il risultato di poter eseguire programmi sempre più impegnativi dal punto di vista dell’occupazione di memoria o di poter eseguire programmi meno impegnativi con velocità e scioltezza più elevate.
Perché i vantaggi del lavorare a 64 bit siano avvertibili dobbiamo però averla, la memoria RAM.
Se il nostro computer è non troppo giovane e di fascia media probabilmente avrà attorno a 2 GB di RAM: con questa dimensione non noteremo alcuna differenza tra il lavorare con un sistema operativo a 64 bit e il lavorare con un sistema operativo a 32 bit.
Per entrare in una zona grigia, dove forse si comincia a notare la differenza, dobbiamo avere a disposizione almeno 4 GB di RAM.
Se abbiamo a disposizione oltre 4 GB, con il sistema a 64 bit è un’altra vita.
Comunque, dal punto di vista della RAM che abbiamo a disposizione, se muore il 32 bit non abbiamo problemi a passare al 64 bit.
Il problema vero è il processore: se, anche indipendentemente dalla sua architettura, può lavorare solo a 32 bit, esso non potrà funzionare con un sistema operativo a 64 bit.
Prima di avventurarci a caricare un sistema a 64 bit dobbiamo pertanto sapere se il nostro processore lo può reggere.
Un computer di fascia media acquistato di recente dovrebbe essere senz’altro già pronto per il 64 bit; anzi, con ogni probabilità, ha già montato un Windows a 64 bit ed allora la risposta ce l’abbiamo già.
Di fronte ad un computer non giovane, con un sistema operativo Windows imballato che si inceppa ogni due per tre, ci potrebbe venire voglia di installare un bel sistema Linux a 64 bit ed allora la curiosità si giustificherebbe.
Se usiamo un sistema operativo Linux – che, come sempre ricordo, è il migliore di tutti – basta che apriamo il terminale e scriviamo il comando lscpu; nella seconda riga della risposta, intitolata CPU op-mode, troviamo ciò che cercavamo: se c’è scritto solo 32-bit vuol dire che il nostro processore può lavorare solo a 32 bit, se c’è scritto 32-bit, 64-bit vuol dire che il nostro processore può lavorare anche a 64 bit, ecc.
Se usiamo un sistema operativo Mac dobbiamo andare nel menu Apple -> Informazioni su questo Mac -> Più informazioni -> Hardware -> Nome del processore; ottenuto il nome del processore andiamo su Internet e vediamo di capirci qualche cosa.
Se usiamo un sistema operativo Windows evitiamo di perdere tempo con i vari suggerimenti che troviamo in rete o sul sito della stessa Microsoft, tra cui addirittura quello di andare a sfrugugliare nel registro di sistema: in questo modo sono arrivato a scoprire che un processore Intel Core2 Duo, notoriamente adatto anche per sistemi a 64 bit, può supportare solo il 32 bit. Più semplicemente, seguendo i vari percorsi inventati nelle varie edizioni di Windows, accertiamo tra le risorse di sistema il nome del processore e poi andiamo su Internet.
Se poi, rimanendo in campo Windows, l’informazione ci interessa solo per sapere se possiamo upgradare il sistema operativo Windows a 32 bit che già abbiamo, mamma Microsoft ci mette a disposizione il programma Windows 7 Upgrade Advisor che rimedia al casino citato prima.
Altra opportuna verifica, ad evitare di crearci problemi inutili, quella sul sistema operativo in uso: potremmo infatti avere già un sistema a 64 bit senza saperlo.
Questa verifica è semplicissima. In Windows basta aprire il Pannello di Controllo e andare su Sistema e troviamo la descrizione del sistema operativo: se è presente in qualche modo la sigla x64 significa che abbiamo già un sistema a 64 bit. In Linux e Mac OS X basta digitare nel terminale il comando uname -a: se nella risposta compaiono sigle come i386, i486, i586, i686 vuol dire che abbiamo installato un sistema a 32 bit; se nella risposta compare la sigla x86_64 vuol dire che abbiamo installato un sistema a 64 bit.
Una volta dotati di un sistema a 64 bit potremo farvi girare anche vecchi programmi a 32 bit.
Se ci dilettiamo a fare noi stessi programmi, ricordiamo tuttavia che un eseguibile da noi compilato su un sistema a 64 bit non gira su un sistema a 32 bit.
Ovviamente, invece, script o bytecode tipo Python, Java e quant’altro viene interpretato, ovunque sia stato scritto, gira dove trova l’interprete.
Buon 64 bit.

Arricchiamo il nostro Android

Se abbiamo acquistato uno smartphone lo abbiamo fatto soprattutto per comunicare: con il telefono, con la messaggistica, con la posta elettronica, attraverso i social su internet, ecc. Secondariamente abbiamo forse pensato anche ad avere la possibilità di passare il tempo con qualche giochino elettronico o ascoltando un po’ di musica.
Probabilmente le stesse motivazioni, magari con minor peso la comunicazione telefonica e con più peso lo svago, dal gioco e dall’ascolto di musica alla lettura di un e-book o alla visione di un filmato, hanno spesso ispirato l’acquisto di un tablet.
Per non parlare, in entrambi i casi, della possibilità di scattare discrete fotografie, istantaneamente scambiabili con i nostri parenti ed amici.
In moltissimi casi si trascura il fatto che con queste apparecchiature si può fare molto di più, perché siamo in presenza di veri e propri computer: sia lo smartphone, sia il tablet sono infatti dotati di un chip che ingloba un microprocessore ed hanno un sistema operativo che li fa funzionare come un vero e proprio computer. Con il grande limite, soprattutto nel caso dello smartphone, della ristrettezza dello spazio per lavorare, sia con riguardo allo schermo sia con riguardo alla tastiera. Limite che, come ho sostenuto nel mio appunto di qualche giorno fa “Allarmismi senza costrutto”, farà in modo che questi apparecchi non potranno mai decretare la morte del personal computer, contrariamente a quanto alcuni sostengono.
Per certe cose, tuttavia, come il calcolo e collegate applicazioni scientifiche o lavoretti ricollegabili al nostro stato o alla nostra professione utilmente eseguibili in momenti di lontananza dalle consuete attrezzature di casa o dell’ufficio, il fatto di avere in tasca un apparecchietto che ci può dare una mano può risultare molto utile.
Quando acquistiamo uno di questi apparecchi lo troviamo già dotato del sistema operativo, cioè del software di base per farlo funzionare, oltre che di tutta una serie di applicazioni (in questo mondo, secondo la terminologia introdotta da Steve Jobs, chiamate “app”) che rispondono a tutte le esigenze primarie per le quali abbiamo acquistato l’apparecchio e che ho prima citato: comunicare, navigare su internet, fotografare, ascoltare musica, leggere e-book, vedere filmati, giocare.
Se il sistema operativo del nostro apparecchio è Android possiamo trovare centinaia di altre applicazioni per fare queste stesse cose o per farne altre su Google Play, il negozio on-line di Google, raggiungibile con il nostro apparecchio utilizzando la app Play Store.
Se mi chiedete perché tanta attenzione per Android e non per gli altri sistemi operativi che possiamo trovare in giro vi rispondo che Android, non a caso il più diffuso, è il migliore ed è basato su GNU-Linux, che è il sistema operativo per eccellenza del mondo del software libero, mondo al quale è dedicato questo mio blog. Peraltro, lo stesso Android, protetto dalla licenza Apache 2.0, è software libero.
Probabilmente, trovando installato sul nostro apparecchio tutto ciò che ci serve per le nostre esigenze primarie, la prima direzione verso la quale siamo interessati a trovare arricchimenti è quella dei giochi. In questo campo, su Google Play, possiamo trovare di tutto: dai giochi di movimento ai giochi da scacchiera, dai giochi di carte a rompicapi di tutti i tipi. Le nostre preferenze ci guideranno nella scelta.
Per quanto riguarda arricchimenti su altri fronti, vista la grande mole di applicazioni disponibili, non tutte ugualmente funzionali e realmente corrispondenti alle aspettative ingenerate dalle loro descrizioni, ho ritenuto utile compilare il manualetto allegato in formato PDF, scaricabile e stampabile.

le migliori app per arricchire Android