Archivi categoria: informatica e AI

Linguaggi di programmazione molto esoterici

“Hello World” in Piet (vedi https://en.wikipedia.org/wiki/Esoteric_programming_language#Piet )

Io sono molto anzyano, e sapevo dell’esistenza di linguaggi di programmazione volutamente incomprensibili come per esempio INTERCAL. Ho però appena scoperto che esiste una pletora di questi linguaggi, generalmente inventati per divertimento: trovate un elenco su esolangs.org e le relative implementazioni a tio.run.

Segnalo due linguaggi in particolare: Shakespeare, dove le istruzioni sono righe di opere in stile appunto scespiriano, e Rockstar, che invece usa testi metallari. (Per dire, cito dalla sua documentazione: «(Anche se non tipici, Eleanor Rigby, Peggy Sue, Black Betty, e Johnny B Goode sarebbero tutti nomi validi per una variabile in Rockstar.)»
Per darvi un esempio, ecco come verrebbe programmato il gioco per bambini FizzBuzz, quello in cui si conta da uno in su ma ogni volta che il numero è un tre o contiene un multiplo di tre bisogna dire Fizz! mentre se il numero è un 5 o contiene un multiplo di cinque bisogna dire Buzz!.

In Shakespeare (vedi qui per una spiegazione):

The Elucidation of Foul Multiples.

Romeo, the hopeless romantic.
Mercutio, the grave man.
Prince Henry, the noble.
Ophelia, the drowned.

Act I: The Revelation Of Wretched Multiples.

Scene I: Romeo The Sweet Talker.

[Enter Prince Henry and Romeo]

Romeo:
You are as rich as the sum of a handsome happy honest horse and a lovely fellow.
Thou art the square of thyself.

[Exit Prince Henry]

[Enter Ophelia]

Romeo:
You are the sum of a beautiful blossoming daughter and the moon.
[Exit Ophelia]

[Enter Mercutio]

Romeo:
You plum.

Scene II: A Pox Upon Both Houses.
Mercutio:
Is the remainder of the quotient between myself and the difference between Ophelia and a
warm wind as good as nothing?

Romeo:
If so, let us proceed to scene V.

Scene III: What's In A Name.
Mercutio:
Is the remainder of the quotient between myself and Ophelia as good as nothing?

Romeo:
If so, let us proceed to scene VI.

Scene IV: You Shall Find Me A Grave Man.
Romeo:
Open your heart!

Mercutio:
Let us proceed to scene VII.

Scene V: I Do Not Bite My Thumb At You.
Mercutio:
Thou art the sum of a warm lamp and Ophelia.
You are the product of thyself and the product of Ophelia and a brave squirrel.
Speak your mind!

You are the sum of yourself and the sum of a rich father and a mother. Speak your mind!

Thou art the sum of the sum of the square of a cute cunning squirrel and a plum and thyself.
Speak your mind! Speak your mind!

Is the remainder of the quotient between myself and Ophelia as good as nothing?

Romeo:
If not, let us proceed to scene VII.

Scene VI: Wherefore Art Thou Romeo.
Mercutio:
Thou art the sum of a fair fine angel and a gentle lovely flower.
You are the sum of a fair daughter and the square of thyself! Speak your mind!

You are as charming as the sum of yourself and the square of a beautiful lovely lamp.
Thou art the sum of thyself and the sum of a rich purse and a plum. Speak your mind!

Thou art the sum of thyself and Ophelia. Speak your mind! Speak your mind!

Scene VII: Good Night, Good Night, Parting Is Such Sweet Sorrow.
Romeo:
You are as noble as the sum of yourself and a Lord.

Mercutio:
You are the product of Ophelia and a warm wind. Speak your mind!

Mercutio:
Am I better than Prince Henry?

Romeo:
If not, let us return to Scene II.
[Exeunt]


Lo stesso programma, scritto in Rockstar (vedi qui per una versione meno metallara):

Midnight takes your heart and your soul
While your heart is as high as your soul
Put your heart without your soul into your heart

Give back your heart

Desire is a lovestruck ladykiller
My world is nothing
Fire is ice
Hate is water
Until my world is Desire,
Build my world up
If Midnight taking my world, Fire is nothing and Midnight taking my world, Hate is nothing
Shout "FizzBuzz!"
Take it to the top

If Midnight taking my world, Fire is nothing
Shout "Fizz!"
Take it to the top

If Midnight taking my world, Hate is nothing
Say "Buzz!"
Take it to the top

Whisper my world

Niente male, vero?

Ah, quello della figura è un programma scritto in Piet (nel senso di Mondrian), che se eseguito ritorna il classico “Hello World”.

A Firefox sono furbetti

Stamattina ho riacceso dopo un po’ il PC che uso in ufficio (a casa, anche se lavoro, ne uso uno diverso). Dopo una mezz’oretta non riuscivo più a connettermi a gmail e twitter: eppure la connessione pareva ok. Ho dato un’occhiata un po’ più attenta, e in alto a destra ho visto l’ormai classico pallino blu nel “menu hambuger”. In effetti mi veniva chiesto – non troppo gentilmente, visto cosa mi era successo – di riavviare il browsesr con la nuova versione che era stata scaricata e installata. Dopo il riavvio tutto è andato bene.

Ma caro Firefox, era proprio necessario fare così? non pensi a tutti quelli che non sono così esperti di informatica e pensano che si sia scassato tutto? (Sì, il classico “spegnere e riaccendere” in questo caso funziona, ma non è comunque una bella cosa basarsi sulle tecniche informatiche standard). Se proprio vuoi forzare la nuova versione, manda un popup…

Ultimo aggiornamento: 2022-11-24 11:20

niente registrazioni delle chiamate

Ho scoperto che dalla prossima settimana Google bloccherà la registrazione delle telefonate da parte di app di terze parti, rendendolo quindi impossibile in pratica per il mio Note9 (che non ha registrzione nativa). Se preferite leggere la cosa dal punto di vista di Google, viene tolto il loophole che permetteva ancora di farlo con Android 10 o successivi, dopo che Mountain View aveva già eliminato la possibilità ufficiale.

So bene che registrare una telefonata senza il consenso dell’interlocutore è illegale. Ma non avrei nessun problema a chiedere il consenso (e immaginare che il tipico interlocutore a cui lo chieda butta giù la chiamata…). Però Google non mi permetterà di farlo.

Quad9

Uno dei punti più fragili di Internet è sicuramente il DNS, il servizio che ci permette di scrivere per esempio https://xmau.com/ e arrivare al mio sito. Non solo la struttura del DNS è strettamente gerarchica con una decina o giù di lì di punti di partenza globali, ma soprattutto è possibile che il DNS resolver di default, cioè il servizio fornito dal nostro provider Internet per andare a fare le richieste DNS, impedisca di raggiungere alcuni siti che il provider stesso ritiene non validi (o illegali: in questo caso è la magistratura che impone ai service provider di farlo). Ecco dunque perché molta gente, almeno sui PC desktop dove la cosa è più semplice, usano altri resolver come per esempio 8.8.8.8 (quello di Google).

Certo però che usare 8.8.8.8 vuol dire legarsi ancora di più a Google, e magari questo non piace. Si può allora usare 208.67.222.222 (openDNS, cioè Cisco) oppure 1.1.1.1 (Cloudflare). Ma Valerio Perticone mi ha fatto conoscere Quad9, che ovviamente ha indirizzo 9.9.9.9 e afferma di essere nato pensando alla privacy. Vero o falso che sia, è sempre utile avere qualche altra possibilità in più!

le “raccomandazioni” Microsoft

Mi è capitato di dover usare Microsoft Edge su questo PC (banalmente non avevo voglia di scoprire come togliere il blocco dei popup del sito della banca online su Firefox o Vivaldi). Alla partenza mi è arrivata questa finestra qui. Notate il messaggio obliquo: non chiede se vuoi avere Edge come browser di default, ma ti invita a usare “le impostazioni consigliate”, con tanto di finestrella evidenziata, contro un anodino “non aggiornare”. Ma forse è ancora meglio la schermata che si apre cercando le impostazioni di Windows (10, sono arcaico) e che vedete qui sotto.

Posso comprendere che ti segnali che non sei entrato su OneDrive (in realtà lo sono, ma con l’account aziendale). Già non vedo perché ti mi debba dire che faccio male a non aderire al programma premi di Microsoft (potrò bene non volerlo, no?). Ma la parte che riguarda il browser, con scritto “ripristino raccomandato” dove per ripristino si intende appunto “metti Edge che è tanto bello”, non è un po’ illegale in quanto scritta in modo da confondere l’utente?

scaricabarile

Ieri pomeriggio ho cercato di scaricare alcune pagine del libro di scienze di Jacopo. Se non avete dei figli in età scolare, probabilmente non sapete che per legge gli editori di libri scolastici devono anche fornire una versione elettronica dei testi. Se avete dei figli in età scolare, probabilmente sapete che nella maggior parte dei casi le versioni elettroniche sono fatte in modo tale da rendere praticamente impossibile la fruizione del testo: si riesce sì e no a leggere gli esercizi e ascoltare il testo. Certo, si può anche usare un’apposita app, che ovviamente è diversa per ogni editore ed è ugualmente tarpata. Non mi è molto chiaro quale sia la paura – nessuno si metterebbe a stamparsi il libro – ma lasciamo stare.

Torniamo a noi. Apro il sito, mi loggo, apro il libro che mi serve… e il browser rimane lì in attesa. Provo a cambiare browser: nulla da fare. A questo punto scrivo all’assistenza Mondadori Education che risponde quasi subito dicendomi

Gentile cliente,
stiamo rilevando un problema generale a livello di connessione ai libri digitali, la cui entità varia a seconda del provider e della posizione geografica degli utenti interessati.
In base alle analisi fatte dal nostro team di sviluppo gli utenti interessati dal problema usano TIM, lo conferma?
Per il momento possiamo suggerire di provare in un secondo momento oppure usare una connessione diversa (es. hotspot del cellulare o diversa rete Wi-Fi).

Non che io abbia capito la logica di cambiare rete Wi-Fi, ma sorvoliamo. Alla mia conferma “Sì, uso una connessione fissa TIM, ma anche il telefonino comunque sarebbe TIM” la nuova risposta è stata

il problema sembra purtroppo a livello nazionale, in base al confronto con sviluppatori della piattaforma e dipende dalla modalità con cui TIM connette gli utenti ai server delle app HUB Young / HUB Kids. Al momento possiamo solo suggerirle di contattare l’assistenza TIM e segnalare il problema.

Sono più di quarant’anni che bazzico con l’informatica. Certo, in linea puramente teorica TIM potrebbe aver cambiato il tipo di connessione con i server, o aver perso i certificati. Ma mi pare molto strano che così di colpo sia cambiato qualcosa dal loro lato. Ad ogni modo non ho nemmeno risposto, ho fatto le foto alle pagine del libro cartaceo e mi sono arrangiato.

E in effetti stamattina mi arriva un nuovo messaggio dall’assistenza:

le comunichiamo che a partire dalle 9.45 di stamattina abbiamo rilevato miglioramenti nella fruizione dei libri digitali. Le suggeriamo di riprovare adesso.

Sono entrato, in effetti il libro era di nuovo apribile. Solo che c’era anche un messaggio iniziale che diceva che erano state aggiornate alcune caratteristiche del sito. La domanda è naturale: chi è che ha davvero fatto qualche modifica impercettibile che aveva fatto piantare tutto?

Ultimo aggiornamento: 2021-05-12 15:59

I chatbot hanno ancora tanta strada da fare

L’altro giorno stavo cercando dei libri su Google Play Books (sennò che me ne faccio degli spicci dei sondaggi Google Rewards?) e ho notato ancora una volta che mentre esiste un genere “science&technology” tra gli audiobook non c’è l’equivalente per gli ebook. Ho così provato a contattare l’assistenza e per una volta sono passato via chat. Il fatto che dovessi scrivere in inglese non era un grande problema. Sono il primo in coda, e arriva un certo Tae. Ecco la conversazione che abbiamo avuto.


You’re connected with agent Tae.
11:40 AM
Hi Tae! As I wrote, I would like to know why there is no list of ebooks in Science&Technology category in Google Play Books
Io · 11:41 AM

Thanks for contacting Google Support, My name is Tae, in case you need to refer to this chat interaction in the future, please take note of the following ID (0-2035000031624. How are you doing today maurizio?
Tae · 11:42 AM

Hello Tae, I'm quite fine. I hope the same of you
Io · 11:42 AM

I understand that you are contacting us regards to Play book. I can try to help.
Have you tried using the search in engine?
Tae · 11:43 AM

Search gives results with a specific term - eg, "Maths" - but I am trying to find books I don't know about. This means that I am not able to pinpoint a choice
Io · 11:45 AM

I understand, the books you see listed are the one that we have available. If we don't have the content you are looking for, you can submit feedback so that books as such can be added.
Tae · 11:47 AM

ok, thanks!
Io · 11:47 AM

Is there anything else I can help you with today?
Tae · 11:48 AM

no, thank you. Bye!
Io · 11:48 AM

Thank you for contacting Google Support. At the end of this chat there will be a brief survey about your support experience. Google appreciates your comments!
Tae left the chat.
11:48 AM
Thanks for chatting! Let us know how we did: [link redacted]
Tae · 11:48 AM

The session has ended.
11:48 AM

È chiaro che “Tae” è un chatbot. Se non fosse stato evidente dal fatto che non ha cominciato rispondendo al mio primo messaggio – ma quello potrebbe essere dovuto al fatto che inizio e fine di una conversazione in chat sono spesso precaricate – con il suo secondo messaggio la cosa è lampante. Inutile dire che a questo punto ho lasciato perdere la speranza di avere una risposta, e mi sono limitato a risposte il più neutre possibile: non vedo perché avrei dovuto scrivere qualcosa di non standard per fornire gratuitamente dati di addestramento a Big G.

Il problema non è dovere interagire con i chatbot. Beh, un po’ è anche quello, ma capisco che alla maggior parte delle richieste si possono dare risposte precotte, e avere un essere umano il cui lavoro è inviare quella rilevante è costoso per l’azienda e alienante per il lavoratore. Il problema è che questo chatbot non si è presentato come tale e questo non mi pare per nulla corretto, per quanto sia evidentemente legale. Perché bisogna negare la realtà? Ad Alphabet sono così certi che nessuno si accorga della differenza? Hanno paura che nessuno interagirebbe? Ci siamo adeguati agli alberi vocali quando telefoniamo, ci adegueremo anche ai chatbot: ma almeno lasciateci sapere di che morte dobbiamo morire.

E quale sarebbe la mia licenza digitale?

Quest’estate ho riscattato il mio vecchio notebook dell’ufficio. È poi rimasto lì a far niente, fino a che questo weekend sono stato costretto a riattivarlo. Dovevo formattare tutto l’hard disk, quindi mi serviva una licenza di Windows. Vado alla caccia di un sito dove comprarne una a poco prezzo, e intanto installo Windows 10 sul PC. Alla fine scopro di avere una licenza digitale per Win 10 Home “collegata al mio account Microsoft”. L’account è però il mio personale, non quello aziendale; e Windows non ha potuto trovare nulla sul mio hard disk, perché già che c’ero l’avevo sostituito con un SSD. E allora dove si è trovata questa licenza?

Ultimo aggiornamento: 2020-11-07 17:34