E se io cominciassi a portarmi avanti, e a mettere in cantiere i buoni propositi per il 2021 a dicembre del 2020?
Chi ha tempo non aspetti tempo, e tutto quel genere di cose, e complici un paio di disavventure lavorative, il tempo al momento è tutto quello che ho, ma magari a gennaio le cose cambieranno.
E allora avanti…

Come di solito succede quando mi trovo sepolto qui fra i colli dell’Astigianistan con un sacco di tempo libero, raggomitolato sotto ad uno spesso strato di coperte, con una teiera fumante e il vuoto esistenziale che ulula nella notte, avevo pensato di seguire un corso di qualche genere. Imparare una lingua, magari – magari il coreano.
È interessante il coreano.
Imparare una lingua diversa – specie se è una lingua MOLTO diversa – è un buon modo per provare a pensare in maniera diversa, ad acquisire diversi schemi di comunicazione, diverse maniere di mettere ordine nelle idee.
Può essere interessante.
Come cantava Grace Slick (ammettiamolo, non nel suo album migliore)
When I was young and had the time
I used to rearrange my mind
Però c’è anche quest’altra faccenda – che sto rispolverando il mio vecchio corso di statistica per scienze ambientali e naturali, con l’idea di rimetterlo in circolazione con l’anno nuovo – certamente come corso online, magari come corso su Udemy.
Sto leggendo “per lavoro e diporto” dei libri di statistica.
Per cui sarebbe bello studiare qualcosa che in qualche modo arricchisca ciò che sto mettendo in piedi, mi aiuti a rendere il mio corso più interessante, e nei limiti del possibile unico.
Qualcosa che sia divertente.
Perché, ammettiamolo, analisi dati con Python la fanno tutti.
E poi, per motivi completamente diversi, ho scoperto Pharo.
Pharo – che si pronuncia “farò”, perché è francese – è un fork di Squeak, che a sua volta è un dialetto di Smalltalk (in particolare di Smalltalk-80), e Smalltalk – in una forma o in un’altra – è da quasi quindici anni una mia piccola ossessione.
Smalltalk è un linguaggio di programmazione, risalente al 1972 (sì, davvero preistoria), un linguaggio a oggetti dinamico e riflessivo (che detto così pare stiamo parlando del fidanzato di mia cugina, o cose del genere).
Ho cincischiato a lungo con Smalltalk e Squeak una decina abbondante di anni or sono, ed ora sarebbe bello, mi sono detto, provare a rispolverare quelle nozioni scompagnate messe assieme quando ancora speravo di poter usare Smalltalk per farci qualcosa in università…
Pharo ha di buono che è gratuito, gira su qualunque cosa (anche sul mio vecchio PC che va coon Linux), ed è ben supportato online – c’è un corso di sette settimane disponibile gratuitamente, tutorial interattivi programmati in Pharo, una vasta biblioteca di testi di riferimento disponibili in digitale a costo zero, e una comunità che può aiutare in caso di disperazione.
E proprio come il suo antenato Smalltalk, Pharo è caratterizzato da una sintassi che sta tutta su una cartolina.

Imparare un linguaggio di programmazione è come imparare una nuova lingua (lasciamo allo studente il compito di discutere come una lingua possa essere un linguaggio di programmazione per chi la usa – punti extra per chi citerà in maniera pertinente Samuel R. delany e Jack Vance), ed in questo caso mi permette di prendere i leggendari due piccioni con la famigerata unica fava – imparare una nuova lingua, con l’effetto collaterale di rimuovere la ruggine dagli ingranaggi del mio cervello, e imparare un linguaggio che, chissà, potrebbe servire anche a fare altro.
E farlo rapidamente, e divertendomi.
Smalltalk – in tutti i suoi dialetti – è particolarmente interessante, perché si porta dietro non solo una vastissima letteratura, ma una filosofia di fondo che enfatizza il concetto di “mastery” da parte del programmatore e la trasparenza del sistema – il che lo rende al contempo interessante quasi a livello letterario, ed anche straordinariamente adatto alla didattica, che è quello che avrei voluto fare nel 2008, e che mi piacerebbe fare ancora adesso.
Anche perché passando per Smalltalk e per Pharo potrei poi mettere al lavoro Grafoscopio – e con Grafoscopio, l’analisi dei dati ambientali e naturalistici diventa qualcosa di completamente diverso.
(ma questa naturalmente è un’altra storia)
Perciò, eccoci qui: ho installato Pharo, scaricato Pharo by Example, e seguito la prima lezione del MOOC.
Buon proposito per il 2021 – entro il 2020 riuscire a masticare abbastanza Pharo da riuscire a farci qualcosa di sensato.
Portiamoci avanti col lavoro.
Cosa c’è di meglio da fare, in alternativa, in questa coda lunga del 2020?
Magari ascoltare Grace Slick?
Dopotutto quella citazione arriva da un disco intitolato Software…
E chi tiene conto di queste cose sarà interessato nello scoprire che “I don’t know and I don’t care”, che si sente nella canzone, si trova anche spesso reiterata nella documentazione di Pharo …
Beginning Smalltalk programmers often have trouble because they think they need to understand all the details of how a thing works before they can use it. This means it takes quite a while before they can master Transcript show: ’Hello World’. One of the great leaps in OO is to be able to answer the question “How does this work?” with ”I don’t care”
Pharo by Example, pagina 3
Curioso, vero?
1 dicembre 2020 alle 1:45 AM
Non dev’essere un linguaggio per control freaks… shouldn’t I care though?
1 dicembre 2020 alle 11:42 AM
Come scrisse Dan Ingalls (il primo sviluppatore di Smalltalk) nell’81, “If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual.”
Per cui il controllo esiste, ma si esprime attraverso l’esperienza del programmatore sul campo.
2 dicembre 2020 alle 5:15 PM
Ho incrociato la strada con Smalltalk negli anni ’90 in ambito professionale, realizzando un paio di progetti, poi le nostre strade si sono decisamente separate. Ai tempi mi era servito per allargare i miei orizzonti alla programmazione ad oggetti, che andava a ribaltare l’approccio delle analisi a cui ero abituato. Poi sono regredito alla forma mainframe.
Però ieri ho seguito la seconda parte di un corso su AI, Natural Language Processing e Sentiment Analysis sentendomi decisamente obsoleto. 😀
2 dicembre 2020 alle 7:15 PM
Bisogna conoscere le AI per poterle combattere.
2 dicembre 2020 alle 5:42 PM
Complimenti, Davide. Da te c’è tutto da imparare.
2 dicembre 2020 alle 7:16 PM
Anche solo per evitare i miei errori 😉