Created on 08 Apr 2022 ;    Modified on 09 May 2022

Sto scrivendo un libro: Algebra Generale

È ufficiale. Almeno una volta nella vita bisogna fare qualcosa di pazzesco. E, a differenza di quanto affermava un lettore: che amava troppo la lettura per pensare di scrivere un libro, noi amiamo così tanto la lettura che sentiamo la necessità di scrivere qualcosa che leggeremo soltanto noi :-).

Non perché lo terremo nascosto, ma perché ovviamente soffrirà di:

  • mancanza di visibilità;
  • e mancanza di autorevolezza dell'autore in relazione all'argomento trattato: l'Algebra Generale [1].

Perché scrivere un semisaggio di Algebra Generale? La risposta la potete leggere nella premessa al libro, che trovate pubblicato nel nostro sito a questo indirizzo.

Questa nota ha lo scopo di varare il lavoro. Infatti la versione pubblicata ha un bello zero come major version. Per questo motivo è ampiamente incompleta. Abbiamo scritto tre capitoli di, più o meno, una decina. Per non parlare del fatto che via via si procede, gli argomenti trattati divengono più ostici.

Non sappiamo se porteremo a termine questo pazzo lavoro. Certo, se vi riusciremo, la soddisfazione sarà enorme!

Per ora, qui riportiamo alcune osservazioni riguardo il lavoro in corso.

Prima di tutto: cosa utilizzare per scrivere (al computer)? Siamo strenui sostenitori di LibreOffice, ma per questo lavoro prevediamo di dover scrivere molte formule matematiche, e in quest'area LibreOffice non è particolarmente dotato (come non lo è Microsoft Word).

Considerando anche il fatto che il risultato finale lo desideriamo in pdf per poterlo vedere nello stesso modo in tutti i device, e per poterlo stampare, alla fine abbiamo deciso di rispolverare le nostre conoscenze di LaTeX, aggiornando in Windows l'ambiente MiKTeX che da parecchio tempo non usavamo più.

Certo, per scrivere è necessaria una conoscenza discreta della sintassi di LaTeX, ma dopo un po' si (ri)prende la mano e si va. Inoltre, fortunatamente, la comunità che supporta LaTeX è decisamente agguerrita. Non vi è dubbio o domanda che non sia stata già fatta e non abbia ricevuto risposta in Overleaf, in TeX StackExchange o in StackOverflow. Così come vi è una sterminata quantità di moduli di supporto che risolvono i problemi più disparati.

Questa è stata una decisione presa alcune settimane fa, quando abbiamo deciso di avviare il progetto. Una tematica più attuale, di questi giorni, riguarda la domanda: "Come disegnare mappe concettuali?". Ci siamo resi conto che gli argomenti trattati sono molti, e non tutti i lettori avranno la determinazione di leggere più volte quanto scritto per fissare permanentemente i concetti. Abbiamo pensato che delle mappe concettuali possono aiutare i lettori occasionali. E anche quelli non occasionali.

Una mappa concettuale è un grafo che lega concetti (i nodi del grafo) tramite relazioni (gli archi del grafo). Una visualizzazione grafica di queste relazioni dà uno strumento in più per fissare i concetti.

Ma come disegnare un grafo? Da fanatici di LibreOffice abbiamo pensato a Draw, il programma di questa suite che permette il disegno vettoriale. Ma la curiosità ci ha spinto ad indagare altri strumenti, specializzati per la costruzione di grafi. In particolare NetworkX, Graphviz e Gephi.

NetworkX è un bello strumento ma va pilotato programmando in Python. Per noi non è un problema, ma alla fine si appoggia comunque a Graphviz per fare il disegno.

Il che ci porta ad approcciare direttamente Graphviz, utilizzando il suo linguaggio descrittivo DOT, senza necessità di scrivere programmi. Il risultato è immediato. E non ci è piaciuto molto. Graphviz utilizza una logica di distribuzione dei nodi su una scacchiera, e le possibilità di controllo non ci sono sembrate eccelse. Invece sono discrete le possibilità di scrittura perché è possibile scrivere anche in cima e in coda agli archi, ed estendere quanto scritto in un nodo.

Cercando qualcosa di esteticamente più attraente, ci siamo rivolti a Gephi: uno strumento essenzialmente interattivo. Questo permette di utilizzare diverse logiche di distribuzione dei nodi, ad esempio con il calcolo delle forze di attrazione/repulsione in funzione del numero di archi che legano i diversi nodi. Il risultato riguardo la localizzazione dei nodi è migliore. Ma è peggiore la capacità di scrittura delle informazioni.

In conclusione: questi strumenti, sopratutto NetworkX e Gephi, sono raccomandabili per analisi serie di reti di nodi altrettanto serie. Ma per scrivere le nostre (piccole) mappe concettuali, alla fine abbiamo convenuto che lo strumento migliore è LibreOffice Draw.

Infine una chicca per quando il libro sarà completato. Abbiamo scoperto che è possibile acquistare singoli (o pochi) numeri ISBN [2] anche da parte di persone, come noi, che aspirano ad essere autori ed editori del loro lavoro [3]. Sul sito WEB dell'Agenzia ISBN in Italia vi sono tutte le informazioni per ottenere un codice ISBN.

Ok. Per ora ci fermiamo qui. Vi terremo informati su come procederanno i lavori!

Enjoy. ldfa


[1]Detta anche Algebra Astratta, oppure Algebra Universale.
[2]I numeri ISBN sono codici che identificano un libro globalmente, ovvero in tutto il mondo. È necessario utilizzare un codice per ogni libro creato. Considerando come libri diversi anche quelli che hanno lo stesso titolo, ma che sono pubblicati su mezzi diversi. Ad esempio il file pdf di Algebra Generale può avere un determinato codice ISBN, ma se vogliamo produrre la versione cartacea dello stesso libro, avremo bisogno di utilizzare un secondo codice ISBN.
[3]Senza la necessità di essere una casa editrice accreditata.