Thursday, June 28, 2012

Col senno di poi

Cominciando da molto lontano, uno dei problemi più sentiti dai matematici privi di quella vocazione ascetica che permette un sincero disinteresse per le secolari questioni mondane, è la percezione ingenua, banale e quantomai triste che le persone matematicamente analfabete mostrano della Matematica.
Non è facile spiegare che non si tratta mica di fare calcoli tanto complicati coi numeri, e poi ancora più complicati.
Un problema non meno grave si ha per l'Informatica Teorica. Mentre la cultura massmediatica con un A beautiful mind e un carismatico Odifreddi ha un po' rivalutato il matematico, se non si parla di hacker (nell'immaginario: individui asociali e in simbiosi con monitor e tastiera), l'informatico è poco più che un amanuense che nella più creativa delle ipotesi fa la gioia dei videogiocatori; forse il bel Doodle di Google per il centenario del suicidio di Turing segnerà un aumento dell'attenzione sulla creatività che la mente umana ha saputo esprimere nel creare sistemi teorici quali la moderna Teoria della Complessità Computazionale, col mistero racchiuso tra P e NP e le impensabili dimostrazioni di NP-Completezza.
Ricordo il discorso d'apertura del corso di Fisica 1 il secondo anno della Triennale in Matematica, in cui l'adoratissimo professore esordì con un "Innanzitutto, perché bisogna studiare la Fisica? Perché, la Fisica, è stata fatta da voi, i Matematici!"
(E valeva per l'Ingegneria stessa in generale e quant'altro, in un'epoca che sembra essere stata allergica allo sguardo sdegnato che il nobile Algebrista o Geometra spesso sembra malcelare innanzi alle scienze più applicate, sporche di realtà in tutta la sua banalissima contingenza.)
Assolutamente non di meno va detto dell'informatica, da Boole e Babbage a Turing, Ulam e Newmann... e mentre Eulero sognava i matematici del futuro in grado di eseguire maestosi calcoli mentali, oggi su uno smartphone si ha la potenza di calcolo che fu sufficiente a portare un uomo sulla Luna. Tuttavia non mi sognerei di giustificare lo studio dell'informatica con motivazioni storiche, bensì mi pare meglio tenere in considerazione l'appena citato sogno euleriano: il computer fa i conti, e li fa benissimo. È STATO CREATO PER FARLI. È un'estensione naturale delle nostre facoltà mentali.
Ma la discriminazione che attorniò Newmann e il suo gruppo nel dare vita a questo miracolo della tecnologia, da parte dell'alta nobiltà matematica che non s'insozza di metter mano a vili "concretitudini", è ben lungi dall'essersi dileguata.

Da piccolo ero affascinato dalla tecnologia, e l'attrazione per la Matematica derivava dal vedervi la legge segreta che permetteva di far funzionare le cose. Quando mi iscrissi a Matematica, mi aspettavo che un po' tutti i colleghi avrebbero avuto un certo grado di nerdità. Ma come introdotto poc'anzi, l'atmosfera è in genere ben diversa, e il clima è più a base di gesso che di elettroni.
Nel percorso di studi, tutto sommato molto bello, ho dovuto sbattere la testa, senza troppo dispiacere, contro quattro bei corsi di fisica. Di informatica, solo... tre, ma anche meno.
Mentre ciascuno dei corsi di fisica ha saputo il fatto suo, lo stesso non può certo dirsi sul lato informatico. Il primo laboratorio di calcolo era ed è di tutto rispetto: obbliga a farsi una pennetta con una distro Linux e insegna il C con una qualità che, constato ora, è solo un sogno per il corso stesso della Triennale di Informatica; per il resto, il corso di Informatica è obbligato a indugiare su noiosaggini che non lasciano certo immaginare la teoria che potrebbe seguire se ci fosse più tempo, e il secondo laboratorio di calcolo non va oltre un po' d'analisi numerica.

Nel mentre, nei vari corsi d'analisi e non solo, ho dovuto fare il polso con integrali non proprio adorabili e, siccome però non smettevo di sporcarmi le mani con le binarie bassezze del mio netbook eeepc900, mi accorsi nel mentre che tutti quei conti, I COMPUTER LI SANNO FARE. Dicesi software per il calcolo simbolico. Ora, le calcolatrici sanno fare le moltiplicazioni e non è che per questo io non le debba saper fare, ma di certo mentre prima dell'esistenza di quest'ultime era non dispensabile una decente dimestichezza coi calcoli a due cifre se non più, ora saper fare 78x33 a mente non è la cosa più utile del mondo. Così, certo, fare gli integrali non fa male, ma se magari s'insegnasse anche a farli, in generale e senza sforzo, scrivendo due righe sul software giusto, non sarebbe male.

Ho iniziato a scrivere questo post con intenzioni ben più blande dell'affrontare l'ampio discorso in cui in cui sono incorso. Poco male, ma finalmente eccoci al perché delle chiacchiere.

I tempi corrono e la matematica italiana sembra un po' tanto arenata alla matematica che si sviluppo' in risposta alle esigenze della fisica (equazioni differenziali a go go), e non ho visto un sol corso di Combinatoria e Teoria dei Grafi che tanto spingono nel resto del mondo (o sbaglio?). I computer sono sempre più sul fronte della ricerca come strumento prediletto per l'indagine scientifica;
un matematico che si rispetti deve sapere, IMHO, scrivere con nonchalance un programmino che gli dia corpose risposte su questioni d'algebra, combinatorica, teoria delle categorie o checchessia, che computazionalmente la sua mente non può affrontare.

Ora, in risposta a tale posizione, o più sinceramente per mera passione personale, ho saltato da Matlab a Maple, da Maxina a Mathematica, da Scilab a Octave. Poi è arrivato Sage, ed era esattamente quello che cercavo: gratis, open, e fatto dai matematici per i matematici. Ma questa è tutta un'altra storia di cui parleremo più avanti. A chiudere, la promettente dichiarazione che il suo fondatore rilasciò in occasione di un articolo del 2009 sul ScienceDaily:

 "I really want it to be the best mathematical software in the world."

Monday, June 25, 2012

Fedora, IRC, Multisystem e chissà cos'altro

In questi giorni decisi di provare a migrare da Ubuntu a Fedora. Così, per non essere provinciale, giacché ogni opensourcista che si rispetti almeno più di una distro l'ha provata.
Fedora dà sicuramente molte soddisfazioni, e penso che tra il quarto di nobiltà di chi impugna l'arco di Arch Linux e chi più pigramente si gode Ubuntu, sia un'eccellente via di mezzo; comunque, è pur sempre la parola di un nabbo.
Il crashare di Chromium e il credere che un recente bug dell'installer di Dropbox fosse specifico di Fedora, nonché la mancanza di programmini fichi come quello che dirò di seguito, mi hanno tuttavia affogato nel nostalgico impulso di reinstallare al volo Ubuntu.
Come si vede la pagina del fedoraproject è, IMHO, molto più accattivante di quella di Ubuntu, sottolinea molto i valori fondanti del progetto etc etc... e a quanto mi dicono persone che mi sembrano aver toccato con mano certe questioni, la comunità dietro a Fedora è assai più presente. Un giudizio che ci si fa provando a scambiare qualche parola sui rispettivi canali IRC.
L'osservazione di un altro sensei spiega comunque molto; vale infatti la proporzione
Chromium : Chrome = Fedora : Red Hat Enterprise Linux
E si dà il caso che Red Hat punti tutto sul server, mentre Canonical tenga più commercialmente al suo Desktop; fin dove arrivi a propagarsi l'effetto di questo fatto, si vedrà.

Fedora sul mio notebook è in verità solo l'ultima parte della storia, che è iniziata con la nerdeggiante pulsione di avere una pennetta con più distro live sopra. Cerca e ricerca col terrore di doverlo fare a mano, trovo Multisystem (per l'installazione su ubuntu, qui). Il programmino permette di caricare in un click varie distro (ci ho messo Ubuntu Precise, Lubuntu, BackTrack5, Puppy Lupu, e tristemente non ci si poteva mettere la Live di Sage). Citando un commento letto nonmiricordodove, ci si può fare un bel coltellino svizzero. Puppy è minimale, Backtrack d'assalto, Lubuntu e/o Ubuntu più da sessione tranquilla. (Tra l'altro Lubuntu, alleggerita, di default ha Chromium come browser... thumb up!)

Ora iscritto al feed di http://distrowatch.com/ mi prendo una breve pausa prima della prossima mattata, anche perché lo studio non sta andando granché bene... e la possibilità di mettere qualche buona idea in testa per tempo sfuma rapidamente :((

Con che chiudere? Sono stato introdotto al mondo dell'Internet Relay Chat.
Quando internet non era per tutti, ma per i santi padri pionieri dei personal computer, IRC c'era. Ora si usano le chat basate sul java, tutti chattano, e le nuove generazioni neppure sanno cosa diavolo sia IRC. Ma la vecchia scuola è rimasta là, e l'underground continua a girarci sopra.
Per quanto mi riguarda, non posso che consigliarvi il canale #roma2lug su freenode ;)

Friday, June 22, 2012

Inferenza Statistica e Teoria dell'Informazione

Di seguito carico l'eccellente dispensa della parte del prof. Macci del corso di ISTI. Un ottima, seppur molto formale e lasciante poco all'intuizione, introduzione alla Statistica Bayesiana.

Verbalizzato quest'esame e Teoria della Sicurezza e Crittografia, dopo aver dato Information Mining all'inizio dell'anno (tutti voti un po' rubati data la mia recente anti-predisposizione allo studio :( ), (spero che) inizio il chiusone di Analisi di Reti.

Il post su Sage dunque aspetta.
La pagina di Wikipedia è fatta tanto male che a tratti sembra sfornata da Google Translate, e andrebbe sistemata.
Intanto ho scoperto e provato la fantastica distro live basata su Puppy, che usa però la versione precedente di Sage, e non ho ancora avuto il piacere di vedere quanto è vivo il canale IRC su Freenode (#sagemath) chiedendo se c'è l'intenzione di aggiornarla all'ultima versione del software.
Non ultima cosa da vedere è il corso dello stesso William Stein sulla sua creatura.

Sunday, June 17, 2012

Intermezzo ricreativo

Una bellissima animazione che risolve una delle più note fallacie matematiche.
Qualche altra, ovviamente, nella relativa pagina di Wikipedia.

Friday, June 15, 2012

Sagely Math

Con Ubuntu precise i binary1 di Sage scaricabili da sagemath.org non vanno, e non è perché manchi il supporto2... ma perché c'è il ppa bell'e fresco :D
in altre parole su Ubuntu Precise Pangolin (12.04 LTS) basta lanciare da terminale i seguenti comandi 3

sudo apt-add-repository -y ppa:aims/sagemath
sudo apt-get update
sudo apt-get install sagemath-upstream-binary


E Sage è al vostro servizio.

Questo renderà ancor più facile avviare l'ambizioso mio progetto di diffondere questa valida alternativa open source all'interno del corso di laurea in Mat della mia uni, di cui parlerò nel prossimo post.

Per tirare su un server infatti ci vogliono due secondi. Da terminale 4

sage
notebook(interface='', secure=True, ulimit='-v 400000 -t 30', accounts=True)


Che rende Sage sulla macchina in cui è lanciato accessibile a tutti all'ip debito, previa creazione di un apposito account, con la restrizione di 400 mb di memoria e timeout di trenta secondi di processore.

1. [cioè i files già compilati, ovvero quelli che basta che li scarichi e ci clicchi e girano, cioè senza "installazione" per intenderci.]
2. [Supporto: termine informatico per designare la congrega di manovali che si occupa di assicurarsi di far funzionare date cose.]
3. [ Sage 5.0 on Ubuntu 12.04 from PPA]
4. [ Configure and Start a Notebook Server ]

Monday, June 11, 2012

Friday, June 1, 2012

LUG inside

Oltremodo eccitato dalle nuove prospettive di militanza open-source aperte oggi, linko l'inorgogliente post sul sito ufficiale del LUG.