Categorie
Informatica

La nostra content policy

Microsoft, Meta mettiamoci in mezzo anche OpenAI, Google e le altre grandi aziende del settore pensano di avere il diritto (ma forse anche il dovere?) di decidere cosa sia meglio per noi, costringendoci ad un perenne stato di minorità. E se un tempo le decisioni erano demandate a degli esseri umani, adesso è l’algoritmo a decidere. Accusatore, giudice e boia.

Lo spunto per questa riflessione me l’ha dato il rifiuto opposto da DALL-E 2 e da Bing Image Creator alla mia richiesta di creare un’immagine (per un meme) anche abbastanza innocente. Se questi strumenti sono pensati per essere un supporto alla creatività dell’umano, perché non deve essere appunto l’umano a decidere cosa sia giusto e moralmente corretto? Perché deve essere lo strumento stesso ad imporre il suo punto di vista, quand’anche fosse condiviso o condivisibile, in modo assolutamente insindacabile?

Ovviamente la questione in punto di fatto è una quisquilia (fortunatamente, siamo ancora in grado di realizzare qualcosa a mano, anche se impiegandoci più tempo), ma apre il campo a problemi di ordine più generale che ormai fanno parte della nostra vita quotidiana.

Basti pensare agli algoritmi di moderazione dei social media, luogo dove oggi si svolge purtroppo gran parte del dibattito pubblico e perché no anche della comunicazione tra le persone, che spesso bloccano a ragione, ma tante volte bloccano contenuti legittimi senza alcuna possibilità di appello.

Il legislatore europeo è stato lungimirante e con il Regolamento (UE) sulla protezione dei dati personali, meglio conosciuto come GPDR, ha affermato il diritto di chiunque a “non essere sottoposto a una decisione basata unicamente sul trattamento automatizzato, compresa la profilazione, che produca effetti giuridici che lo riguardano o che incida in modo analogo significativamente sulla sua persona” nonché quello di “di ottenere l’intervento umano da parte del titolare del trattamento, di esprimere la propria opinione e di contestare la decisione”.

Articolo 22
Processo decisionale automatizzato relativo alle persone fisiche, compresa la profilazione

1. L’interessato ha il diritto di non essere sottoposto a una decisione basata unicamente sul trattamento automatizzato, compresa la profilazione, che produca effetti giuridici che lo riguardano o che incida in modo analogo significativamente sulla sua persona.

2. Il paragrafo 1 non si applica nel caso in cui la decisione:
a) sia necessaria per la conclusione o l’esecuzione di un contratto tra l’interessato e un titolare del trattamento;

b) sia autorizzata dal diritto dell’Unione o dello Stato membro cui è soggetto il titolare del trattamento, che precisa altresì misure adeguate a tutela dei diritti, delle libertà e dei legittimi interessi dell’interessato;

c) si basi sul consenso esplicito dell’interessato.

3. Nei casi di cui al paragrafo 2, lettere a) e c), il titolare del trattamento attua misure appropriate per tutelare i diritti, le libertà e i legittimi interessi dell’interessato, almeno il diritto di ottenere l’intervento umano da parte del titolare del trattamento, di esprimere la propria opinione e di contestare la decisione.

4. Le decisioni di cui al paragrafo 2 non si basano sulle categorie particolari di dati personali di cui all’articolo 9, paragrafo 1, a meno che non sia d’applicazione l’articolo 9, paragrafo 2, lettere a) o g), e non siano in vigore misure adeguate a tutela dei diritti, delle libertà e dei legittimi interessi dell’interessato.

Tuttavia, la diffusione che l’AI generativa sta già vivendo e vivrà in futuro, unita all’incontestabilità dell’algoritmo (stavolta anche per l’effettiva impossibilità di un appello umano) non potrà far altro che aprire nuove sfide e mettere a rischio “i diritti, le libertà e i legittimi interessi” di noi tutti.

Categorie
Informatica

Il menu accenti non funziona più

Il menu accenti è forse una delle più utili funzionalità offerte da macOS. Si richiama tenendo premuta una lettera e consente di selezionare varie opzioni relative ad accenti e segni diacritici, anche per le lettere maiuscole. È forse quest’ultima opzione che lo rende particolarmente importante per la nostra lingua!

Qualche mese fa però ha incominciato a disattivarsi in modo casuale e senza apparente motivazione. Inizialmente mi sono interrogato sulla questione senza trovare una risposta e ho deciso dunque di procedere nel modo più pigro possibile, cioè dando all’occorrenza il comando per riattivarlo nel Terminale, che riporto qui a vostro beneficio:

defaults write -g ApplePressAndHoldEnabled -bool true

Ad un certo punto mi sono accorto però che il fenomeno si presentava insistentemente quando usavo Parallels Desktop 15, l’ottimo software di virtualizzazione che consente di usare Windows su macOS.

Ho contattato il supporto che ha tagliato corto e mi ha consigliato di provare la versione 16. Effettivamente il problema ha smesso di verificarsi e quindi ho aggiornato definitivamente alla 16 (a pagamento, ovviamente).

Di necessità virtù, però, e così durante il periodo di separazione forzata dal menu accenti ho imparato ad usare anche i comodi shortcut per le lettere accentate maiuscole:

  • È si ottiene con Option (⌥) + Shift (⇧) + E
  • À si ottiene con Option (⌥) + Shift (⇧) + W
  • Ì si ottiene con Option (⌥) + Shift (⇧) + R
  • Ò si ottiene con Option (⌥) + Shift (⇧) + T
  • Ù si ottiene con Option (⌥) + Shift (⇧) + U

Sono dell’idea che usare gli shortcut, quando possibile, consenta a lungo andare di aumentare la produttività, ma ora che l’ho ritrovato, non penso che abbandonerò del tutto il caro menu accenti! 😄

Categorie
Informatica

Perché su Mac sento solo dalla cuffia destra o sinistra?

Da quando ho aggiornato il mio Macbook Pro a macOS Big Sur 11.0, l’auricolare sinistra delle mie Airpods Pro ha smesso di funzionare solo su Mac, mentre continuava ad andare benissimo sugli altri miei dispositivi. Reset, controreset e procedure varie non sono erano serviti a niente, così avevo gettato la spugna, persa ormai ogni speranza.

Cercando in giro però ho notato che delle persone con lo stesso problema hanno risolto semplicemente controllando le impostazioni di bilanciamento nella scheda “Uscita” della sezione “Suono” delle Preferenze di Sistema.

In effetti, il bilanciamento era stato completamente spostato verso destra, isolando così del tutto l’auricolare sinistro. Questo cambiamento di impostazioni si è verificato, in misura minore, anche per altre mie cuffie.

Non conosco la motivazione di questa modifica improvvisa e non richiesta, ma magari anche a voi può essere utile sapere che basta spostare uno slider per ritornare a godere appieno delle nostre cuffie.

Categorie
Informatica Opinioni

Non tanto live

A live stream concert. Ma certamente.

Come potete vedere dall’immagine, stasera a partire dalle 21 era previsto un concerto di Mika in live streaming per aiutare il Libano in seguito alla recente tragedia.

Ho però potuto apprendere a mie spese che il significato di live streaming, il quale mi sembra abbastanza chiaro ed inequivocabile, è sconosciuto a Mika e al suo entourage.

Leggendo durante la promozione dell’iniziativa live streaming e termini simili sembrava lecito supporre infatti che il concerto avvenisse nel momento stesso della trasmissione.

Ciò sembrano averlo pensato anche i commentatori su YouTube quando, esattamente come me, si sono visti davanti al posto di una diretta live, per l’appunto, questa scena.

È un video, un semplice video dalla durata di 1 ora, 35 minuti e 51 secondi, un comunissimo e normalissimo video: insomma proprio il contrario di live streaming.

Evitando le facili battute sul fatto che questa sia una situazione da articolo 640 del codice penale dato che comunque i ricavati dovrebbero essere destinati a scopi caritatevoli, mi sembra che non sia molto corretto da parte dagli organizzatori indurre in errore i consumatori lasciando loro credere che si trattasse di un evento in live broadcasting. Il fatto che si tratti di beneficenza non cambia poi molto.

Mi dispiace molto anche che a chi ha ideato questo show che lascia con l’amaro in bocca sia sconosciuta l’esistenza di un fantastico tool per dirette live e col quale avrebbero anche potuto mettere in piedi questo giochetto in un modo più credibile, volendo. Si tratta di Open Broadcast Studio, un software gratuito e open source, ma sono sicuro ne esistano molti altri anche a pagamento e professionali. Oltre al danno la beffa, insomma.

Livestream ticket dal costo di 10 euro. Mi sembra molto chiaro anche il significato di livestream ticket.
Categorie
Informatica

Una sciagurata idea

Ormai conoscerete le mie avventure con Ghost, dopo averne letto. Saprete dunque che ho rinunciato completamente ad ogni tentativo di installarlo nuovamente. Tra le sue dipendenze c’era mySQL, che non mi serve né ho intenzione di usare, dato che per le mie applicazioni impiego PostgreSQL.

Ho deciso quindi di cancellare, rimuovere, distruggere ed estirpare qualsiasi traccia di mySQL dal mio Ubuntu 20.04 che come saprete è stato da poco installato.

Rimuovo dunque tutti i pacchetti collegati con l’apposito comando e pulisco tutto:

sudo apt-get remove --purge -s 'mysql*'
sudo apt-get autoremove
sudo apt-get autoclean

e trovo sul web un comando per rimuovere

sudo rm -rf /etc/mysql /var/lib/mysql

Leggendo una delle tante guide su come disinstallare mySQL mi sovviene però una pazza, sciagurata, malsana idea! Il (mio) primo risultato su Google per “Uninstall mySQL” dice di dare anche questo comando:

sudo find / -iname 'mysql*' -exec rm -rf {} \;

Senza pensarci troppo do invio e poco dopo mi rendo conto della stupidaggine megagalattica appena fatta. In pochi istanti, esplodono tutte le mie applicazioni.

Quel comando cancella tutti i file che contengono mysql nel nome, purtroppo non solo i file collegati a mySQL hanno mySQL nel nome.

A quanto pare infatti, ci sono anche dei file di un componente fondamentale Ruby on Rails, che sono automaticamente inclusi in ogni applicazione.

Nonostante non abbia capito cosa abbia effettivamente condotto all’errore in cui mi sono imbattuto, ho capito benissimo che una cosa del genere non va fatta a meno che non vogliate essere chiamati dal vostro servizio di monitoring alle 2:00 e dover reinstallare tutte le applicazioni a quell’ora della notte (e menomale che non ci sono stati altri problemi). Chiedo perdono al mio server per le atrocità commesse.


Vuoi sapere quali sono le applicazioni Ruby on Rails di cui sto parlando? Trovi tutto sul mio Github, non saranno fatte benissimo ma almeno possono essere utili 😀

Categorie
Informatica

Addio Ghost

Dopo un anno e qualche mese ho finalmente deciso di intraprendere una buona e giusta migrazione da Ghost, una piattaforma di blogging, a WordPress, sempre una piattaforma di blogging ma a quanto pare decisamente migliore. In questo articolo vi racconto perché e perché dovreste evitare Ghost anche voi.

Un’installazione tormentata

A parole installare Ghost è la cosa più semplice del mondo. Installi le dipendenze, dai un comandino in una cartella da un utente creato ex-novo e le voilà la tua istanza di Ghost è pronta, SSL compreso.

Qualche giorno fa ho cambiato server perché ho trovato un’offerta più vantaggiosa (a proposito, addio 95.217.2.93, ti ho voluto bene) e ho dovuto quindi fare l’intera procedura da capo.

L’installazione è già partita male: l’installer informava di non essere compatibile con Ubuntu 20.04, rilasciato ad aprile 2020 e in esecuzione sul mio server.

Andando avanti, Ghost ha provato a creare il suo utente mySQL e non ci è riuscito perché non compatibile con mySQL 8 incluso in Ubuntu 20.04. Sono stato costretto a farlo io per lui, ma l’installazione è fallita lo stesso, dopo diversi tentativi, o per problemi con SSL o per altri non specificati problemi. Il server non risultava quindi raggiungibile.

Così, mi sono stancato e ho detto basta. Non avevo voglia di perdere altro tempo a risolvere altri problemi (tra l’altro, la prima installazione su Ubuntu 18.04 era andata liscia come l’olio). Era giunto il momento di fare una cosa che avrei dovuto fare da tempo: usare una piattaforma con un minimo di community, di universalità e di supporto.

Eccoci qui dunque, il mio blog ora è su un’installazione WordPress che ha richiesto pochi minuti e non ha dato problemi.

Una migrazione dolorosa

Mi sono reso conto troppo tardi che Ghost, nonostante sia software libero, è una terribile gabbia. Ci sono tanti modi per migrare a Ghost, ma alcun modo per migrare da Ghost.

Insomma, mi sono dovuto arrangiare. Neanche a dirlo, quando ho provato a spostare la mia installazione di ghost da ferdinando.me (questo sito) a blog.ferdinando.me per poter spostare i contenuti con calma su WordPress, si è rotto tutto e sono stato costretto ad esportare i contenuti dal mio blog Ghost sul server e importarli manualmente sul mio computer in un’istanza locale appositamente preparata e collegata al mondo attraverso ngrok. Facendo così, però, sono andate perse le immagini, nonostante abbia importato la cartella content/images e fatto quanto necessario per renderle visibili.

Ho riscontrato pure problemi con l’importazione tramite RSS non ha funzionato quasi per niente. L’unico plugin gratuito parzialmente funzionante tra i tanti che ho provato è stato CyberSEO Lite che ha importato egregiamente solo gli ultimi sei articoli.

Mi sono dunque dovuto arrendere all’evidenza: esportare da Ghost verso WordPress è per me impossibile e quantomeno difficile (magari esiste qualche metodo che non ho considerato).

Per salvare il salvabile ed evitare di perdere altro tempo sono riuscito a far importare automaticamente gli articoli che avevo su Medium, ma dato che il servizio online consigliato dalla maggior parte delle guide si rifiutava di accettare il mio file di esportazione Medium (ritenendolo “troppo grande”), ho dovuto usare l’importazione integrata in WordPress.com ed esportare da lì un file compatibile con WordPress.

Il resto, purtroppo, l’ho dovuto fare a mano.

Conclusioni

Dopo questo anno e mezzo e dopo aver finalmente provato Gutenberg su WordPress, posso serenamente dire che:con l’introduzione di un editor come Gutenberg in WordPress, Ghost ha perso tutto l’appeal che aveva nei miei confronti, quindi non vale la pena imbarcarsi in un’avventura problematica come quella di usare Ghost per un proprio blog, senza tra l’altro possibilità di fuga. Mentre infatti è possibile tranquillamente migrare da WordPress a Ghost o addirittura da Medium a Ghost, fare il contrario vi toglierà tempo e vi provocherà molti problemi, nonostante Ghost sia assolutamente open source. Insomma, il gioco non vale la candela, soprattutto se è nelle vostre intenzioni cambiare nuovamente piattaforma.

Categorie
Informatica Wikimedia

Un’app per Wiki Loves Monuments Italia

Giocando con Appcelerator Titanium, un framework open source e rilasciato con licenza Apache per lo sviluppo di applicazioni mobile native a partire da una sola codebase, ho realizzato un’applicazione per il concorso Wiki Loves Monuments Italia. Trovate il codice sorgente su https://github.com/ferdi2005/monumenti.

In una settimana, è stato possibile implementare la possibilità di trovare monumenti tramite geolocalizzazione e mostrarli su una mappa, sia qualla di cercare una determinata località italiana (per esempio, Roma) e vedere i monumenti ivi presenti. In più, c’è anche una bellissima scheda per ogni monumento e un simpatico tasto refresh da premere quando ci si sposta, per esempio durante una wikigita.

La documentazione dell’API qui riportata è ferma a qualche versione fa per quanto riguarda il contenuto della risposta, ora c’è qualche parametro in più.

Backend

Ebbene, quando scrivi un’app mobile ti serve anche un backend! Ho deciso quindi di riutilizzare il mio progetto wlm.puglia.wiki ed ho esposto quindi alcune nuove simpatiche API in alcune delle nuove versioni. Quella piccola webapp prima aveva solamente la stessa funzione dell’app e dava la possibilità di trovare i monumenti vicino a sé con Leaflet + OSM, mentre ora svolge anche da backend dell’app. Per ragioni tecniche (non c’era un framework per Appcelerator Titanium), non ho potuto utilizzare OSM anche sull’applicazione mobile, quindi troverete su Android le mappe di Google e su iOS quelle di Apple, ma tutto il lavoro di geocoding è fatto da OSM, precisamente da Mapbox con OSM.

È stato duro anche trovare il modo di far funzionare l’URL di caricamento del monumento, che ora viene restituito insieme alle informazioni del monumento ed è generato miscelando informazioni dalla query SPARQL e dall’esecuzione tramite l’API parse di MediaWiki del Modulo:WLM su Wikipedia!

Trovare i monumenti

Il primo endpoint che ho messo a disposizione, un bel po’ di tempo fa già prefigurandomi l’app, è /monuments.json, che accetta come parametri sia latitude e longitude che city, per cercare invece i monumenti vicino ad una città.

La risposta è di questo tipo, il secondo array rappresenta il centro della mappa, cioé il punto al centro di tutti i risultati o, in caso di città, la localizzazione della città:

[[{"id":34746,"item":"Q61905499","wlmid":"16A6620042","latitude":"41.132779","longitude":"16.838713","itemlabel":"Non creiamo precedenti","image":null,"created_at":"2020-06-07T22:54:03.906Z","updated_at":"2020-06-07T22:54:03.906Z","itemDescription":"Scultura presso lo Stadio della Vittoria","distance":0.69212135568994,"bearing":"109.201534968318"}], [41.13698328712448,16.826640973289223]]

Più informazioni sul singolo monumento

A vostra disposizione c’è anche l’endpoint /show.json che accetta il parametro id corrispondente all’id del monumento che si ottiene attraverso la prima richiesta API. La risposta corrisponderebbe, visitando wlm.puglia.wiki/show.json?id=34746, a:

{"id":34746,"item":"Q61905499","wlmid":"16A6620042","latitude":"41.132779","longitude":"16.838713","itemlabel":"Non creiamo precedenti","image":null,"created_at":"2020-06-07T22:54:03.906Z","updated_at":"2020-06-07T22:54:03.906Z","itemDescription":"Scultura presso lo Stadio della Vittoria","distance":0.69212135568994,"bearing":"109.201534968318"}

Notare che gli ID cambiano ad ogni risincronizzazione del database e questo endpoint è stato creato esplicitamente per fornire le informazioni dall’app.

Indirizzo

Dato che il geocoding a quanto pare non funziona benissimo su iOS, ho predisposto un endpoint API del tipo /address.json che accetta il parametro id, sempre corrispondente all’id del monumento ottenuto sempre nel primo endpoint.

Per esempio wlm.puglia.wiki/address.json?id=34746 risponde:

Piazzale Vittorio Emanuele Orlando, Bari, Bari, 70132, Italy

Ringraziamenti

Siamo ormai giunti alla versione 1.1.3. 😁 Per il raggiungimento di questo risultato mi preme ringraziare i miei fidi beta tester anticipati Yacine Boussoufa e Stupeficium, ma anche il carissimo sviluppatore Titanium Michael Gangolf, che mi ha dato alcuni importanti consigli per l’applicazione

Download

Siete convinti adesso? Mentre risolvo i problemi con la burocrazia per pubblicare su iOS (magari ottenendo lo sconto della quota per il no profit), vi lascio i link per scaricare l’applicazione su Android. Notate che per utilizzare l’app è necessario avere i Google Play Services attivi.

Non dimenticate di lasciare una recensione o un commento, o di scrivermi se avete qualche dubbio!

Categorie
Guide Informatica

Siete pronti al DVB-T2?

È giunta l’ora di verificare se la vostra TV sia compatibile con il DVB-T2 o no. Potete farlo in modo molto semplice, andando sul canale 200 o sul canale 100. Se non trovate il canale, neanche dopo una risintonizzazione, o trovate solo una schermata nera, significa che la vostra TV non è compatibile e presto la dovrete cambiare, a seconda di quando avverrà lo switch-off nella vostra regione:

  • dal 1° settembre al 31 dicembre 2021: Valle d’Aosta, Piemonte (Torino), Lombardia (Milano), Veneto, Friuli-Venezia Giulia, Emilia-Romagna, Trentino-Alto Adige;
  • dal 1° Gennaio al 31 Marzo 2022: Liguria (Genova), Toscana, Umbria, Lazio (Roma), Campania (Napoli), Sardegna;
  • dal 1° Aprile al 30 Giugno 2022: Sicilia, Calabria, Puglia, Basilicata, Abruzzo, Molise, Marche.

Dopo lo switch-off, non sarete in grado di vedere più nulla e tutte le trasmissioni avverranno col nuovo standard. Questo porta numerose innovazioni (quella di poter vedere programmi in 4K per esempio) e libera frequenze utili al 5G.

Siete ancora in tempo, inoltre, per richiedere il bonus TV messo a disposizione dal Ministero dello Sviluppo Economico, per comprare una nuova TV o decoder se la vostra non risulta essere compatibile

Categorie
Informatica Opinioni

Un termostato intelligente, anche troppo

Qualche anno fa abbiamo deciso di far installare a casa un termostato intelligente Nest perché è più facile da impostare rispetto soliti termostati, ma anche perché volevamo sperimentare una novità.

Sin da subito ha funzionato parecchio bene e si è rivelato molto utile, soprattutto nelle fredde serate invernali, potendo accendere il riscaldamento anche fuori casa, dall’app.

Abbiamo però incominciato a notare una strana attivazione del riscaldamento, specialmente la notte, quando non era invece necessario.

Quindi ho deciso di curiosare nelle impostazioni ed ho notato che era attiva la funzionalità di apprendimento automatico della programmazione, che nel nostro caso non esiste, dato che lo regoliamo in base alle necessità giorno per giorno, progettando quindi un calendario completamente sballato.

Forse per alcuni può risultare utile, ma in questo caso è stato anche “troppo intelligente”!

Categorie
Informatica Opinioni Telegram

I miei post più letti… su Medium!

Mentre qui su questo blog mi ritrovo con pochissimi lettori, su Medium c’è ancora gente che legge la guida su Altervistabot, nonostante la base sia stata deprecata e la guida sia molto elementare. L’indice ha avuto addirittura 9.000 visualizzazioni/anno.

Per questo motivo ho deciso semplicemente di non ripubblicarla su questo blog. Come esperimento, però, ho deciso di attivare la monetizzazione su Medium, per capire se è davvero efficace e quante persone leggono la guida con il Paywall (tendenzialmente 0).

La parte 1 ha 7,9k visualizzazioni, la parte 2 ne ha 3,5k, molta gente evidentemente abbandona la guida dopo aver letto la prima parte. Inoltre, la parte 1 è presente da più tempo dell’indice, considererei quindi come indicatore di gente che segue al guida proprio la parte 2 del bot, che è poi quella che contiene la parte più sostanziosa di codice.

È chiarissimo ovviamente che tutto il traffico provenga da Google (7,7k su 9k, l’85%), anche se sinceramente non vedo tutto questo interesse per la creazione di bot Telegram, che è rimasto molto costante nel periodo di interesse della guida.


Ora vi starete chiedendo, perché questi dati? Non lo so neanche io, ma mi è arrivata la mail periodica di Medium sulle statistiche e mi piaceva l’idea di condividere con qualcuno questa stranezza, anche se quel qualcuno è nessuno (come i lettori di questo blog).

Momento pessimismo, molto probabilmente (in base alle statistiche) queste righe non verranno lette da nessuno, ma va bene così.