Elettrotecnici VS Informatici

Può sembrare assurdo agli occhi di molti ma elettrotecnici e informatici non si scambiano quasi mai pareri.

Farò un esempio grazie al fatto che papà da poco tempo è in pensione. Un elettrotecnico in pensione.

Il problema è che il parroco lo ha scoperto e le sue più intime fantasie erano essere legate ai presepi automatizzati.

Le specifiche parrocchiali

Le specifiche iniziali erano di allestire nel giardino della parrocchia un presepe con un brano che partisse ad una certa ora e fosse dannatamente semplice da controllare. Un gioco da ragazzi.

Evoluzione successiva: doveva illuminarsi anche una specie di capanna insieme al brano; poi ad un’altra ora doveva partire un altro brano e accendere luci su un gruppo di palme, poi cori, accendere re magi e illuminazione su altri riferimenti biblici a me ignoti. Una sobria fusione fra il cristianesimo e una discoteca (cristoteca?).

Ma che c’entrate voi?

Sentite, non so perché stiamo seguendo questa cosa. A volte ci si appassiona a certi progetti pensando di poter redimere tutti i peccati, magari dopo brutte parole dette quando il pullman n. 47 fa manovra in piazza Freguglia, tappando tutto il traffico, mentre resti lì, impotente, di fronte agli orari pianificati mostrati dall’app Libre BusTO.

Andiamo avanti.

L’implementazione elettrotecnica

L’implementazione prevista in assenza di un informatico in casa (ricordo che ora sto a Milano) è semplicemente formidabile e prevede un circuito progettato da papà che identifica il segnale audio in uscita dalle casse di uno normalissimo stereo, acceso a mano dal parroco, ed, in funzione di questo segnale musicale (!), accende la sequenza di illuminazione corrispondente. Ripeto. Il parroco semplicemente sgnacca play su un vecchio lettore CD o dal suo telefono o cosa cavolo vuole, e magicamente si accende il resto dello spettacolo. Quando il parroco spegne il party musicale, il presepe vivente torna in quiete.

Pura follia, genialità e magia.

L’implementazione informatica

Inutile dire che un qualsiasi sviluppatore software, se le specifiche non fossero cambiate, avrebbe preso un calcolatore GNU/Linux a caso (e.g. un RaspberryPI) e aggiunto librerie Python quanto basta.

La svolta ibrida

Avendo entrambi preso la decisione di scambiarsi pareri più spesso, e soprattutto di non cambiare le specifiche (piaceva troppo questa cosa che la moooseca controllasse tutto) abbiamo unito er meglio della creatività elettrotecnica con il peggio dell’informatica. L’implementazione risultante da questa fusione di competenze prevede il computer portatile con GNU/Linux di una dolcissima signora, vicina di casa nostra (la quale si era cuccata il solito cryptolocker su Microsoft Windows qualche anno prima e quindi era migrata a Xubuntu facilmente). Il suo portatile è stato scelto perché era manipolabile anche da un elettrotecnico senza dover capire con quale saldatore ci si collega con SSH ad un single-board computer. In breve, la macchina della vicina ha una stupida regola crontab per riprodurre il brano alle ore desiderate. Cosa che fra parentesi per suonare ogni mezz’ora dalle 19 alle 21 si fa così:

crontab -e
*/30 19-21 * * * /opt/jingle.sh

E poi in jingle.sh:

#!/bin/sh
export XDG_RUNTIME_DIR="/run/user/1000"
ffplay -hide_banner -nodisp -autoexit /home/omissis/Music/SantoNatale.ogg > /dev/null

A margine, a parte la sintassi non proprio naturale per un elettrotecnico o per un parroco, il processo che esegue crontab, anche se è eseguito dal proprio utente, non ha idea del contesto X desiderato, quindi non funzionerà l’audio senza l’export di XDG_RUNTIME_DIR. Ovviamente questo un parroco lo scopre solo dopo anni di lettura del manuale della propria distribuzione, o decifrando StackOverflow. Ma andiamo avanti. Questo è il genere di discorsi che non farà innamorare dell’informatica un elettrotecnico.

A questo punto il circuito di papà, ripeto, collegato a cascata soltanto al jack audio del portatile della vicina, resta letteralmente in ascolto della partenza del brano per far scattare il corretto impianto di illuminazione.

La soluzione è a prova di bomba. Intanto perché da un lato l’elettrotecnico non sbaglia mai, e poi perché se l’informatico avesse sbagliato qualcosa il parroco può sempre sostituire a caldo il portatile con un lettore CD a caso e ricondursi al caso precedente.

Completamente assurdo. Carino però. No?

Riassumiamo cos’ho imparato oggi.

Cosa può stupire un elettrotecnico

  • crontab: far partire un brano ad un’ora precisa via software è una cosa che, nonostante sia stata banalizzata da almeno 46 anni di informatica (riuscendo nell’intento di non introdurre mai alcuna semplificazione da allora) sembra ancora far luccicare gli occhi di molti elettrotecnici.
  • controllo degli stati: “sì ma non è che poi il file audio riparte da tipo metà se lo gestisci via software? uh?
    Se ho capito bene sono riuscito a stupire almeno un elettrotecnico semplicemente garantendo che il software era in grado di riprodurre un brano, più volte, partendo dall’inizio. Sicuramente c’è una preoccupazione elettrotecnicamente intelligente e concreta sotto, per ora però l’elettrotecnica con questa questione ha perso punti. Eh sì.
  • asterisk: il fatto di poter creare una rete telefonica locale e poter chiamare un numero la cui segreteria telefonica ti dice “benvenuto nel presepe più figo del mondo prema 5 per far partire la cristoteca” e che quando lo fai parta il brano e si accenda l’impianto d’illuminazione e si spenga dopo, fa definitivamente percepire la supremazia dell’informatica sull’elettrotecnica.
    P.S. Stranamente non stupisce se quest’ultima cosa non sono riuscito a mostrargliela in cinque minuti e quindi non abbia colpito molto. Ma sì può fare, dannazione! Provaci con l’elettrotecnica! Dai! Su!

Cosa può stupire un informatico

  • avere una scheda da pochi centesimi, scollegata dalla linea elettrica e alimentata solo con una batteria di un dannato telecomando, con autonomia di settimane o mesi, in grado di rilevare quando c’è musica riprodotta da uno stereo e solo in quel caso far partire un impianto di illuminazione, ecco, questo per un informatico può essere l’evento mindblowing per ristabilire l’orgoglio elettrotecnico.
  • avere la stessa scheda di prima che, collegata ad un doppino telefonico, collegata a sua volta ad un telefono da 9$, sia in grado di rilevare la frequenza audio di ognuno dei tasti numerici per far partire un impianto di illuminazione a scelta.
    Pura magia senza un computer.
    P.S. Me l’ha dimostrato e funzionava tutto perfettamente, con una singola batteria AAAA perché, per una serie di coincidenze, l’aveva già sviluppata per il soccorso speleologico. Maledetto.
    Qui l’elettrotecnica ha fatto punti, e di brutto.

Conclusioni

Destiniamo una giornata all’anno dedicata all’incontro fra informatici ed elettrotecnici. Invito a chiudere entrambi in una stanza per arricchimento reciproco.

Esercizio a casa per informatici

Prendete un elettrodomestico a caso e sostituite un componente con una pipeline più informatica.

Esempio: eliminate il pezzo di plastica che chiude il circuito della luce del vostro frigo. Da domani, un’apertura sufficientemente ampia dello sportello del vostro frigo deve essere filmato da una videocamera con OpenCV e, a movimento riconosciuto, deve attivare la luce del frigo usando un’API REST.