Orange: data science con Python senza scrivere codice

Nell’aprile 2019, con il mio articolo “Software libero per data scientists” e l’allegato PDF “python_anaconda”, ho presentato l’armamentario che ci offre il linguaggio di programmazione Python per il data mining e la data science.
Armamentario fatto innanzi tutto del linguaggio Python e di una serie di librerie che lo arricchiscono per sviluppare script destinati a lavorare con masse di dati al fine di illustrarli, interpretarli e trarne conoscenza. Cose per fare le quali occorre saper programmare, avendo una profonda conoscenza del linguaggio e delle librerie che si utilizzano.
Nel giugno 2019, con il mio articolo “KNIME: l’alternativa a Python per data scientists” e l’allegato PDF “knime”, ho presentato un gioiello del software libero, costruito con il linguaggio di programmazione Java, attraverso il quale possiamo fare per lo più le stesse cose senza scrivere una riga di codice: semplicemente utilizzando visualmente strumenti preconfezionati e contraddistinti da icone, collegandoli tra loro con il mouse.
Con KNIME, ferma la necessità di avere la preparazione matematico-statistica per sapere ciò che si vuole, per farlo non occorre anche conoscere il linguaggio di programmazione per ottenere dal computer ciò che vogliamo ma semplicemente occorre conoscere gli strumenti preconfezionati che il computer ci mette a disposizione e saper scegliere quelli adatti.
Anche nel mondo Python esiste una cosa simile. Si tratta di una libreria, attualmente denominata Orange3, sviluppata al fine di facilitare l’utilizzo delle varie librerie Python per il data mining, che ci offre anche la possibilità di essere utilizzata visualmente con icone e mouse.
Come libreria utilizzabile per scrivere codice alternativo ad altro codice ritengo abbia scarsa utilità ed è forse per questo che non si trova un testo che ne parli, ma non mi sembra giusto ignorare la grande utilità ricollegabile alla possibilità di essere utilizzata visualmente.
Dal momento che nessuno ne parla e che la sola documentazione è quella disponibile sul sito internet, non sempre tecnicamente di agevole lettura e in lingua inglese, ho predisposto l’allegato manualetto illustrativo che non ha altra ambizione se non quella di far vedere di che cosa si tratta con qualche esempio.
Il documento è liberamente scaricabile, stampabile e distribuibile.

orange

Pascal per principianti

In uno dei primi articoli all’apertura di questo blog dedicato al software libero, nel maggio 2015, ho festeggiato il rilascio della versione 1.4 di Lazarus, un software libero per scrivere e compilare programmi scritti in linguaggio Free Pascal, anche dotati di interfaccia grafica, interpretando l’evento come una resurrezione del vecchio linguaggio Pascal nel mondo del software libero.
Da allora, sia il Free Pascal sia Lazarus hanno avuto numerosi rilasci migliorativi, gli ultimi in giugno e in luglio di quest’anno 2020, a dimostrazione del fatto che si tratta di una coppia di strumenti che hanno tuttora amatori, nonostante il linguaggio Pascal sia poco utilizzato per la produzione di software commerciale a livello professionale.
Dal momento che si tratta di un linguaggio inventato per insegnare a programmare, pertanto particolarmente adatto a neofiti, ho pensato che ai frequentatori di questo blog farà piacere disporre di un manualetto del tipo di quelli che ho proposto per altri linguaggi.
Il documento allegato è, come sempre, liberamente scaricabile, stampabile e distribuibile.

freepascal

Python per principianti

In questo blog ho parlato spesso del linguaggio Python.
Presentando vari argomenti (grafica con Python, moduli Python per data scientists, calcolo simbolico con Python, Python su Android, ecc.) ho sempre dato per scontato che il lettore conoscesse le basi del linguaggio.
Peraltro sul linguaggio Python esiste una nutrita serie di manuali e manualetti in lingua italiana, anche alla portata di dilettante, ed ho sempre ritenuto pleonastico proporre a mia volta uno di quei manualetti che ho variamente proposto su altri linguaggi di programmazione aventi documentazione meno abbondante e meno accessibile.
Oggi, tuttavia, avverto questa come una lacuna ingiustificabile nei confronti dei dilettanti che seguono il mio blog e intendo rimediare proponendo l’allegato manualetto sul linguaggio Python per principianti.
In questo modo, se altri si aggiungeranno a coloro che, numerosissimi, hanno manifestato interesse agli argomenti Python avanzati che si trovano sul blog potranno ora trovare servizio completo.
Come sempre, il documento è liberamente scaricabile, stampabile e distribuibile.

python

Nel mondo di JavaScript

Negli oltre cinque anni di vita di questo mio blog dedicato al software libero non ho mai parlato di JavaScript, nonostante si tratti di uno dei più fulgidi esempi di software libero.
Il motivo è che si tratta di un argomento non semplice da trattare con i dilettanti ai quali, da dilettante, mi rivolgo.
A fronte di una relativa facilità di apprendimento del linguaggio JavaScript in quanto tale, infatti, proprio alla portata di dilettante, sono i contesti nei quali si utilizza il linguaggio che non sono da dilettante, quanto meno da dilettante alle prime armi.
Tanto è vero che se cerchiamo di capire cos’è JavaScript navigando in rete ci imbattiamo facilmente in documentazione che, mischiando linguaggio e contesti, spesso dando per scontati concetti di contesto che il dilettante ignora, prospetta situazioni che appaiono più difficili di quanto in realtà non siano.
Per rimediare alla pecca di non aver mai parlato di JavaScript e con l’ambizione di contribuire a fare chiarezza su dove stiano le vere difficoltà, ho ritenuto di proporre l’allegato manualetto in formato PDF sull’argomento.
Come sempre, il documento è liberamente scaricabile, stampabile e distribuibile.

javascript

Un sequencer MIDI per principianti

Il mese scorso, parlando di soundfonts, ho dovuto accennare a cosa sia il MIDI, visto che i soundfonts servono per tradurre in suoni le istruzioni contenute in un file MIDI.
Può darsi che qualcuno si sia incuriosito e desideri approfondire la materia, per arrivare lui stesso a produrre un file MIDI.
Su questo blog ho presentato vari strumenti atti allo scopo, strumenti quasi sempre aventi finalità più complesse, come la scrittura di partiture musicali o l’arrangiamento musicale. In proposito rimando all’allegato al mio articolo “Software libero per fare musica” del maggio 2015, archiviato in “Software libero”.
Una sola volta ho parlato di un software che, per chi usa il sistema operativo Windows, ha funzione limitata a quella di sequencer MIDI, peraltro con un funzionamento non del tutto soddisfacente: è avvenuto nel dicembre 2015 con l’allegato all’articolo “Rosegarden come sequencer MIDI”, archiviato in “Computer music”.
In ogni caso si tratta di strumenti concepiti non con la finalità unica e diretta di produrre un file MIDI ma per fare anche altro e si presentano, pertanto, con una varietà di funzioni che possono spaventare il principiante.
Proprio ai principianti – e penso anche a ragazzi alle prime armi con lo studio della musica – suggerisco allora un piccolo software, libero e disponibile per tutti i sistemi operativi, che serve solo per produrre file MIDI e ci consente di farlo in modo estremamente semplice, grazie ad un’interfaccia grafica che guida letteralmente la mano.
Si chiama Aria Maestosa e lo presento nell’allegato manualetto in formato PDF.
Il documento è liberamente scaricabile, stampabile e distribuibile.

aria_maestosa

 

Far suonare meglio Windows con i soundfonts

Il sistema operativo Windows ha tanti difetti ma, per chi voglia sentire la riproduzione di un file MIDI o di un file karaoke, che è poi spesso anche lui un file MIDI arricchito del testo della canzone, ha il pregio di avere già tutto predisposto perché l’utente possa raggiungere lo scopo o utilizzando Windows Media Player o, se si tratta di file karaoke, semplicemente procurandosi un software come vanBasco.
Dal momento che il file MIDI non contiene suono ma è un file di testo contenente semplicemente istruzioni per produrre suoni, la scheda audio del computer riesce ad eseguire queste istruzioni grazie al sintetizzatore MIDI predefinito Microsoft GS Wavetable Synth, incluso nel sistema operativo.
La Wavetable è un elenco di forme d’onda combinando variamente le quali si riescono a produrre suoni ad imitazione di quelli dei vari strumenti musicali che il file MIDI richiede siano usati.
Il risultato, soprattutto secondo i puristi del suono, è disastroso: alcuni dicono che quando suona un oboe non si riesce a capire se si tratti di una trombetta del lattaio o di un kazoo.
A parte le esagerazioni, occorre riconoscere che, appena si esce dall’ambito della musica frastuono dove qualsiasi rumore va bene e si entra nell’ambito del suono vero e proprio, anche un orecchio non troppo esigente avverte che c’è qualche cosa che non va.
Sicché anche il pregio diventa un difetto.
Un rimedio è quello di collegare al computer strumenti hardware in grado di produrre suoni migliori, più fedeli al suono degli strumenti veri e propri: esistono moduli sonori, detti anche expander, di varia marca (Roland, Yamaha, Ketron, per citare le più famose) e per varie borse (da poche a tante centinaia di euro).
Per i dilettanti meno esigenti e anche per i professionisti che hanno meno da spendere per queste cose segnalo un’altra strada che prescinde dall’hardware e che attinge in massima parte al mondo del software libero: quella dei soundfont.
Dedico all’argomento l’allegato manualetto in formato PDF, liberamente scaricabile, stampabile e distribuibile.

soundfonts_in_Windows

Software libero per l’insegnamento della matematica

Qualche frequentatore di questo mio blog mi ha invitato a fare una rassegna di software disponibili per supportare l’insegnamento della matematica, con particolare riferimento alle categorie richieste nel programma ministeriale per la classe di concorso A-28 di Matematica e Scienze.
Si tratta di software di geometria dinamica per la visualizzazione e la sperimentazione geometrica, software di calcolo simbolico, algoritmi e software per la soluzione di sistemi lineari e software per la rappresentazione grafica delle funzioni.
Accolgo con favore l’invito e propongo l’allegato documento in formato PDF nel quale metto di disposizione quanto ho nel tempo sperimentato in una materia che mi ha sempre appassionato ma alla quale non mi sono mai dedicato professionalmente, se non di striscio.
Chiedo pertanto venia per qualche lacuna o improprietà sul piano scientifico.
Il documento è liberamente scaricabile, stampabile e distribuibile.

software_scienze_matematiche

Benvenuto UbuntuStudio 20 e addio KXStudio

Faccio ancora una volta riferimento all’allegato al mio articolo “Il suono di Linux” del maggio 2017 in cui avevo sommariamente descritto le tre distribuzioni Linux che, essendo basate su un kernel a bassa latenza, erano particolarmente adatte per lavorare con i suoni, l’audio e la multimedialità: UbuntuStudio, KXStudio e AVLinux.
Lo scorso marzo ho avuto modo, nell’articolo “AVLinux alla riscossa”, di descrivere cosa sia successo, da allora, a quest’ultima distribuzione, che si è ripresentata in ricca veste alla fine dello scorso anno.
Ora aggiorno la situazione sulle altre due.
Alla fine dell’appena trascorso mese di aprile, puntualmente con il rilascio di Ubuntu 20.04 LTS “Focal Fossa”, è uscito UbuntuStudio 20.04 in tutta la sua ridondante ricchezza di applicativi, tutti proposti nelle versioni più aggiornate.
E’ invece nel frattempo stata abbandonata la riproposizione della distribuzione di KXStudio, che resta ferma alla versione basata su Ubuntu 14.04 LTS. Chi voglia procurarsi l’immagine ISO di questo gioiello deve andare all’indirizzo https://github.com/KXStudio/KXStudio/releases/. Mi rendo conto che si tratta ormai di una cosa datata, ma funziona ancora benissimo e io la uso tuttora con piena soddisfazione.
Gli sviluppatori di KXStudio continuano comunque a lavorare e mettono a disposizione il software che arricchiva la loro distro a chi lo voglia utilizzare sul proprio sistema operativo, non solo Linux ma, in alcuni casi, anche Windows e Mac OS (come avviene per l’insuperabile audio-plugin host Carla).
Se andiamo all’indirizzo https://kx.studio/ scopriamo questo nuovo modo di fruire di KXStudio.
In particolare, nella pagina Repositories -> About/How-To, possiamo scaricare il pacchetto kxstudio-repos.deb, installando il quale su una distro Ubuntu (da 18.04 in poi) o Debian (da 10 in poi) realizziamo l’unificazione del repository KXStudio con quelli raggiungibili da Synaptic.
In questo modo tutta la ricchezza di KXStudio può confluire su UbuntuStudio e AVLinux, oltre che su altre distribuzioni Ubuntu o Debian.

Qtractor: una DAW per principianti, ma non solo

Su questo blog ho avuto occasione di parlare di alcuni capolavori del software libero per fare musica con il computer.
Con l’articolo “Altra musica sempre con software libero” dell’ottobre 2015 ho presentato LMMS, ideale per la produzione di brani musicali soprattutto con sonorità ed effetti diversi dal solito, disponibile per tutti i sistemi operativi.
Con due articoli, “Rosegarden come sequencer MIDI” del dicembre 2015 e “Rosegarden come DAW” del luglio 2018, ho presentato il software Rosegarden, che per gli utenti Windows funge da ottimo sequencer MIDI e per gli utenti Linux è un’ottima e completa Digital Audio Workstation.
Con l’articolo “Intelligenza artificiale per l’improvvisazione musicale” del settembre 2018 ho presentato il software Impro-Visor, ideale per la produzione di brani musicali improntati all’improvvisazione jazzistica, disponibile per tutti i sistemi operativi.
Di questi software, solo Rosegarden e solo per il sistema Linux è una vera e propria DAW, secondo me la migliore che ci sia, soprattutto sul piano del rapporto tra qualità dei risultati e facilità di uso.
Sempre riservata a chi usa Linux esiste un’altra opportunità, che si chiama Qtractor: nonostante la modestia di chi ha prodotto questo software, che lo definisce “specially dedicated to the personal home-studio”, di fatto è una Digital Audio Workstation che non ha nulla da invidiare alle più blasonate, con il vantaggio di essere abbastanza facile da usare, a portata di volonteroso dilettante.
Nel manualetto allegato, vista la carenza di documentazione in lingua italiana su questa perla, mi propongo di introdurne il suo utilizzo.
Come sempre il documento è liberamente scaricabile, stampabile e distribuibile.

qtractor

AVLinux alla riscossa

Nell’allegato al mio articolo “Il suono di Linux” del maggio 2017 ho sommariamente descritto le tre distribuzioni Linux che, essendo basate su un kernel a bassa latenza, sono particolarmente adatte per lavorare con i suoni e con l’audio; distribuzioni che, oltre a raccogliere quanto di meglio esiste per il trattamento del suono, offrono tutta una serie di altri strumenti per la grafica e il trattamento del video e costituiscono veri e propri laboratori per la multimedialità.
Delle tre, Ubuntu Studio, KXStudio e AVLinux, quest’ultima risultava la meno consigliabile in quanto la versione 2016 in circolazione a quel tempo presentava alcuni difetti, primo tra i quali quello di essere legata alla versione 1 del server audio Jack e di non essere adatta ad una convivenza pacifica tra la versione 2 di Jack, quella ormai corrente all’epoca, con l’altro server audio Pulseaudio: il tutto risolvendosi in inspiegabili mutismi del nostro sistema.
Peccato, perché AVLinux ha dalla sua il pregio di essere una distribuzione direttamente basata su Debian, molto leggera e scattante, con comportamento della massima efficienza anche su macchine vecchiotte e poco dotate.
A quasi tre anni di distanza mi sono imbattuto nella versione AVLinux del 2019 (AVLinux 2019.4.10), il cui ultimo aggiornamento è del 3 dicembre del 2019, che è tutt’altra cosa: conserva tutti i pregi e non ha più alcun difetto.
Ci possiamo procurare l’immagine ISO del sistema (file isotester-avl64-2019.4.10.iso per la versione a 64 bit o isotester-avl32-2019.4.10.iso per la versione a 32 bit) all’indirizzo http://www.bandshed.net/avlinux/.
Si tratta dell’ultima versione disponibile anche a 32 bit in quanto, da qui in poi, verranno rilasciate solo versioni a 64 bit. L’attuale versione a 32 bit non funziona comunque su computer UEFI.
Se qualcuno ha un vecchio computer a 32 bit provi a risuscitarlo caricandovi il sistema operativo AVLinux: troverà modo di divertirsi. Il sistema operativo in quanto tale è leggerissimo. Ovviamente se le risorse hardware sono limitate non possiamo pretendere di fare cose molto impegnative, soprattutto con grafica e filmati.
Senza dimenticare che AVLinux è comunque un sistema operativo Debian che ci può consentire di fare tutte le cose che fa un computer al di fuori della multimedialità: basta caricarvi il software.
AVLinux è dotato di un ricco e chiaro manuale, purtroppo solo in lingua inglese. Ne possiamo scaricare una versione PDF dallo stesso indirizzo http://www.bandshed.net/avlinux/ ma, se installiamo il sistema, ne avremo a disposizione una copia raggiungibile dal menu delle applicazioni.
Come per tutte le distro Linux l’immagine ISO può essere masterizzata su DVD o inserita in una chiavetta USB avviabile e da qui essere provata in versione live oppure installata (su computer, su chiavetta o su disco esterno) seguendo una procedura guidata a prova di errore: basta grande attenzione nella scelta del luogo dove fare l’installazione.
Per fruire della live occorre inserire come nome utente la parola isotester e come password avl64 (o avl32 se siamo sulla versione a 32 bit).
L’installazione porta con sé il meglio del software libero nel campo della multimedialità, a mio avviso con alcune imperdonabili assenze basiche (lilypond, rosegarden e qsynth): possiamo comunque rimediare subito con il gestore di programmi previo upgrade dell’apt con AVLinux Assistant che troviamo nel menu delle applicazioni.
Sempre con AVLinux Assistant, attraverso Add New System Locales, possiamo scegliere la nostra lingua preferita per l’interfaccia di sistema.
Spulciando nel mio blog si trovano molte indicazioni su come arricchire il ventaglio delle applicazioni disponibili e se vogliamo recuperare in AVLinux qualche software che gira solo su Windows teniamo presente che AVLinux è per default dotato di Wine.
Se qualche applicazione gira su Java (ad esempio impro-visor) si tenga presente che il runtime Java (JRE) non è installato per default ma occorre installarlo.
Infine AVLinux risolve al meglio la coesistenza dei server audio Pulseaudio e Jack mantenendo il primo attivo in collegamento con il secondo: in tal modo è scongiurato il pericolo di mutismi inaspettati.
Buona creatività con AVLinux.