sabato, dicembre 02, 2017

Bloccare contenuti con Firefox

Preambolo.
A partire dalla versione 57 Firefox non è più compatibile con le "estensioni classiche" ma solo con quelle sviluppate sulla base delle API "webextensions", che sono più o meno analoghe alle estensioni di Chrome.

Bloccare i contenuti (diciamo la "pubblicità") con Firefox significa utilizzare una estensione (o "addon") che, a partire da una lista di "regole", blocca il caricamento degli oggetti di varia natura che sono contenuti nelle pagine che vengono visualizzate dal browser. Gli stessi contenuti si possono "nascondere" modificandone gli attributi CSS ma questa opzione è puramente cosmetica.

Fino a qualche tempo fa utilizzavo l'estensione Adblock Plus.
Questa estensione si componeva di due parti, una dove si potevano scegliere quali liste pre-definite utilizzare e una, che per me rappresentava la ragione d'essere della estensione, tramite la quale si poteva "ispezionare" il codice della pagina in modo da localizzare gli oggetti in questione e scrivere le regole "personalizzate" per bloccarli. Ad un certo punto lo sviluppatore di questa estensione fondò una società per "commercializzarla", cosa che si risolse nell'aggiunta di una lista di "pubblicità accettabili", ovvero le agenzie pubblicitarie che rispettano determinati criteri "non-invasivi" possono sottoscrivere una specie di "abbonamento" in modo da essere incluse in questa lista. La lista "annulla" il blocco eventualmente impostato dalle liste usate dall'utente dell'estensione. Fortunatamente la lista delle "pubblicità accettabili" si poteva disabilitare nelle impostazioni.

L'abbandono delle "estensioni classiche" di Firefox in funzione delle estensioni "tipo Chrome" ha costretto l'azienda che sviluppa Adblock Plus a cestinare la versione precedente e a fare un "porting" della versione per Chrome, la quale in sostanza manca completamente della seconda parte descritta sopra, quella che assiste l'utente nella compilazione delle proprie regole per filtrare i contenuti. Ergo, praticamente l'unica modalità d'uso attuale consiste nel sottoscrivere le liste pre-definite e per me questa modalità è troppo limitata.

A questo punto sono passato a uBlock Origin.
La storia di UBlock Origin è completamente differente e questo è evidente da come l'estensione funziona. In origine era parte di una estensione più complessa che includeva una specie di "firewall", questa parte è stata scorporata in un'altra estensione chiamata uMatrix.

uBlock Origin ha due modalità di funzionamento.
La prima è quella predefinita/automatica e assomiglia ad Adblock Plus nel senso che include una serie di opzioni tramite le quali si selezionano le liste pre-definite, che incidentalmente sono le stesse usate da Adblock Plus. Sono chiamate "regole statiche" perché filtrano il codice di tutte le pagine usando delle "parole chiave". La differenza è che uBlock consente una maggiore personalizzazione delle liste e di come vengono adoperate e che non c'è nessuna lista di "pubblicità accettabili". In questa modalità l'utente non deve fare niente.

Attenzione: più liste caricate, più risorse di RAM e CPU l'estensione andrà a consumare. Vi suggerisco di disabilitare le regole "cosmetiche" (in due punti nelle opzioni) e di limitare le liste predefinite a quelle "proprietarie" di uBlock più le tre generali "Easylist".

La seconda modalità viene abilitata selezionando "sono un utente avanzato". In pratica aggiunge alla modalità "tipo-Adblock Plus" quello che l'autore chiama "filtraggio dinamico" e che in sostanza è una versione semplificata del "firewall" di uMatrix. Stringendo, si intende la possibilità di bloccare le connessioni in ingresso che provengono dalla lista di URL/indirizzi che il browser contatta a partire dalla pagina e che viene visualizzata dall'estensione cliccando sulla icona.


La interfaccia presenta una "tabella" di righe con in alto le categorie di oggetti che si possono bloccare e in basso la lista degli URL/indirizzi e di colonne che consentono rispettivamente di bloccare (rosso), fare passare da sopra a sotto (grigio), disattivare le liste statiche (verde), divise in due, a sinistra "globali" e a destra "locali" (cioè valide solo per il sito). Le celle "trasparenti", cioè rossine, verdine, grigine, ereditano lo stato da quelle sopra, quindi da globale a locale, da sinistra a destra.

Facciamo un esempio: apro l'interfaccia, vado sulla riga "script di terze parti", significa le funzioni JS che il sito "A" esegue caricandole da altri siti "B", "C" e "D". Clicco in modo da fare diventare rossa la cella di sinistra. In questo modo ho impostato uBlock per bloccare tutti i JS di terze parti in modalità "globale", cioè per tutti i siti.

Adesso guardo sotto e vedo l'elenco degli indirizzi da cui il browser scarica degli oggetti. Mettiamo che tra questi ci sia "mario.it". Se voglio fare in modo che gli script siano scaricati da "mario.it" ed eseguiti per tutti i siti che visito, nonostante il "blocco globale" impostato sopra, devo marcare la cella di sinistra in grigio. Se invece voglio che siano scaricati ed eseguiti solo nel sito che ho aperto in questo momento, devo marcare la cella di destra in grigio. Per tutti gli indirizzi, quando non sono sottoposti alle regole "dinamiche" impostate tramite la "tabella", quindi anche se sono celle "grigie", rimangono valide le regole "statiche" delle liste.

uBlock Origin è concepito dall'inizio nella modalità "come Chrome" e quindi manca degli strumenti per ispezionare le pagine. Per fortuna ha una finestra di "log", che si attiva coll'apposito bottone (secondo in alto da destra). Il log non visualizza nulla se non si ricarica la pagina e per vedere quali sono gli oggetti bloccati (e come/da cosa sono bloccati) bisogna imporre il filtro "|--" (senza virgolette).

Per la maggior parte degli utenti uBlock si può usare nella prima modalità che è la stessa di Adblock Plus col vantaggio di un ipotetico minore consumo di risorse (che però io non posso verificare) e del fatto che non ci sono le "pubblicità accettabili". Il vantaggio di adoperare la seconda modalità consiste nell'aggiunta di una funzionalità tipo "firewall" che emula anche per certi versi l'estensione NoScript.

Documentazione qui.

Nota: il "plus" e lo "origin" sono aggiunte causate da liti tra sviluppatori e conseguenti "fork", cioè separazioni in due estensioni diverse da un predecessore comune. Questo significa che è tutta roba che adesso c'è e domani boh. Capisco che per chi non è interessato ai tecnicismi sia tutto uno sbattimento privo di senso.

21 commenti:

  1. Lore', dai. Pure l'esegesi della Bibbia
    Non ce la posso fare...

    RispondiElimina
    Risposte
    1. Colpa tua che dai ospitalità a certi fenomeni. Io non faccio esegesi di cui non sarei capace, mi limito a citare dei fatti storici.

      Per esempio, come dicevo al mutante in questione, il voto di castità è una cosa di cui in concreto non importa a nessuno mentre il celibato fu imposto per evitare che i figli dei chierici potessero ereditare i beni della Chiesa in un'epoca in cui Vescovi e Papi, rampolli cadetti di famiglie nobili, senza alcuna vocazione, figliavano allegramente.

      Elimina
    2. Andava anche nell'altra direzione, ovvero le famiglie nobili parcheggiavano i cadetti nelle cariche ecclesiastiche cosi che i loro figli uscissero dall'asse ereditario (legittimo) e si potessero quietare con somme di denaro invece che beni immobili.

      Elimina
    3. Certi fenomeni :)
      Io non ospito, il mio blog è anarchico

      Elimina
    4. Ho messo la moderazione, anche se la odio

      Elimina
    5. Per esempio, il cardinale personaggio celeberrimo dei Tre Moschettieri (che poi erano quattro):

      "Nato nel 1585 a Parigi, era figlio di François du Plessis, signore di Richelieu, militare e cortigiano che prestò servizio come Grand prévôt de France e di Susanna de La Porte, figlia di un noto giurista. Quarto di cinque figli, era destinato a una carriera militare, ma si trovò ad affrontare invece una carriera ecclesiastica, nel 1605, al posto del fratello Alfonso, che l'aveva rifiutata."

      Elimina
    6. Quindi il tuo blog non è poi tanto anarchico. Non so se dispiacermi del fatto che alla fine tocca a me togliere il solito tappo al solito Vaso di Pandora.

      Comunque se vuoi mi asterrò da ulteriori commenti, per gli altri, che commentano con frasi fatte e leccate di piedi, probabilmente non ti serve la moderazione.

      Elimina
    7. Ma no, commenta pure come vuoi, figurati
      Anzi stamattina a lavoro mi sono annoiata e ogni tanto buttavo l'occhio sul vostro siparietto :)

      Elimina
    8. Vostro di chi?
      Io ero intento a redimerti con il metodo socratico quando arriva Fra' Bertoldo a menare il torrone. Che per inciso è la stessa cosa che fa abitualmente il signor Francesco, per motivi curiosamente affini.

      Elimina
    9. Menare il torrone.
      scocciare, spec. con discorsi protratti e volontariamente infastidenti

      Elimina
    10. Presumo si riferisca al gesto di mescolare e rimescolare il composto in pasticceria.

      Elimina
    11. Io avevo inteso il torrone come riferimento alla forma fallica
      Francesco, che possa piacere o no, non mi pare uno che si dilunga in discorsi inutili

      Elimina
    12. Ma cosa dici, il torrone è un dolce che si solidifica a forma di "piastra" e che poi si taglia nella dimensione voluta, per esempio questa (clicca). Dove la vedi la forma fallica?

      Francesco tu non lo conosci, o meglio, lo conosci nella forma dei messaggini tipo foglietto dei Baci Perugina che scrive nel tuo blog. Devi sapere che vaga di blog in blog raccontando che io vivo con la pensione di invalidità (inventata) di mia mamma perché secondo lui questo dovrebbe zittirmi rispetto al fatto che "sparlo" di tutto e di tutti. In particolare, ovviamente, di lui e dei "compagni-ex-compagni" come lui, altrimenti detti "liberali di sinistra".

      Elimina
    13. Meccanismo classico:

      1. Sara che racconta della "italia migliore" che aspetta Renzi in stazione per gridare "Matteoooo" al suo appalesarsi.
      2. io gli dico che oltre alla scena della "pia donna" un po' trita, Renzi non solo se ne sbatte ma teme e disprezza il "popolo" che lo acclama. Oltre tutte le solite cose sul Renzi provinciale e narcisista patologico che ripete gli slogan "crozziani" che gli scrive il suo "think tank".
      3. Arriva Francesco e premesso "Lorenzo, tu sei una pessima persona, ma della peggiore specie", ripete la storiella della pensione.

      Altro trucchetto classico è la "captatio benevolentiae" per cui nell'esempio di cui sopra se Lorenzo è una persona orrenda, Sara è una donna fantastica. Tipo il Milanese Ibruttito che incontra qualcuno e dice "grandissimo! numero unooo".

      Elimina
    14. Mi spiace se chiunque si sia riferito a te in termini non appropriati, ma non voglio iniziare una discussione in merito

      Elimina
    15. Non c'è nessuna discussione, è una descrizione che non prevede che tu interloquisca. Se non te ne frega una beata ceppa lo capisco.

      Elimina
    16. Premesso che qui si parlava di software ma non è un problema. Premesso che fatico a leggere la tua prosa un po' involuta ma provo a interpretarla.

      Il difetto nel tuo discorso è nel concetto di Verità Rivelata. Rivelata a chi? Se al "credente", ad ogni "credente" apparisse Dio e gli rivelasse la Verità, non ci sarebbe bisogno di fede e non esisterebbe il dubbio.

      Ma Dio tace.

      Si è confidato in un remoto passato con certi profeti e l'ha fatto sempre in modo che nessun altro potesse ascoltarlo.

      Come risultato la Verità Rivelata è in realtà una verità raccontata. Raccontata attraverso i secoli, con lingue differenti, all'interno di culture differenti. Non basta, il racconto, oltre ai problemi linguistici e culturali, è anche spesso e volentieri enigmatico, come da antica tradizione degli oracoli. Quindi la verità raccontata diventa verità interpretata. Cosa avrà voluto dire veramente Dio? Cosa avrà voluto dire veramente il profeta Tizio? Mille elucubrazioni, varianti, teorie, cavilli, messaggi codificati e decodificati, conseguenze da determinate premesse.

      Per esempio (cito):
      "Un altro conflitto sorse quando, nel 482, l'imperatore bizantino Zenone emanò un editto conosciuto come l'Henotikon, che cercava di riconciliare le differenze fra i monofisiti (che credevano che Gesù avesse la sola natura divina) con la dottrina riconosciuta ufficialmente dalla Chiesa di Stato (per la quale Gesù Cristo aveva due nature: umana e divina)."

      Oppure, Sant'Agostino attorno al 400 D.C., massimo teorico della Cristianità (il che è tutto dire), cito:
      "Dolore, fame, malattia e peccato hanno però la stessa origine metafisica, ontologica, sono mancanza di essere, nell'anima e nel corpo, così come teorizzava la filosofia classica. Il male non è concepibile da parte di Dio, mentre lo è da parte dell'uomo, che può attuarlo poiché è creato libero, "a immagine e somiglianza di Dio", come afferma la Genesi. In questo senso l'uomo può fare il male, mentre Dio no. Ciò non significa che l'uomo è più libero, o che la divinità cristiana non è onnipotente, ma che l'uomo, errando, può commettere atti che lo rendono imperfetto e infelice. Non commettere il male non è un limite, ma un segno di perfezione."

      Quindi a me pare che il "cattolico", che non è sinonimo di "cristiano", nella maggior parte dei casi non sappia quasi niente delle cose di cui parla. Non ne sa niente per due motivi, primo perché sono cose intrinsecamente complesse che si sono stratificate una sull'altra per millenni, secondo perché nella prassi cattolica la dottrina è demandata ai sacerdoti e il "credente" si limita a seguire il "pastore" come fa il gregge. La messa consiste nella lettura di un brano, una volta in una lingua che nessuno capiva e poi nella "spiegazione" che finiva con una morale, come una favola e come le favole questi passaggi erano illustrati sulle pareti delle chiese, a scopo didattico.

      La cosa grave però non è la confusione nella testa del cattolico riguardo la sua religione, quanto la sostanziale ignoranza della Storia che è un po' più univoca delle Scritture. Per esempio quanti cattolici sanno che il Natale non è una festa cristiana ma è la festa romana del Sol Invictus? E quanti sanno che la Pasqua la festeggiava anche Gesu mentre era vivo perché è la festa che ricorda la fuga degli Ebrei dall'Egitto? Cose banali, però mettono tutto in prospettiva.

      Elimina
    17. Alla fine c'è una palese contraddizione tra "mistero" e "verità".

      Dove c'è uno non può esistere l'altra e viceversa. Anche nel senso scientifico della verità, ovvero la verità temporanea e falsificabile, non metafisica.

      Il concetto di "mistero" non implica tanto il "dubbio", implica semplicemente la ignoranza. Ovvero il postulato che non si possa mai conoscere perché l'oggetto della conoscenza è per definizione oltre la capacità di comprensione umana.

      Da cui, se esiste "mistero" e il mistero implica l'ignoranza, non capisco che senso abbia affermare la Verità. A Socrate si attribuisce il famoso "dubbio metodologico" nell'aforisma "so di non sapere". Qui siamo oltre, siamo nella condizione "non posso sapere".

      Allora semplifico: Gus ne sa di Cristianesimo quanto io di Fisica Quantistica.

      Elimina
    18. No, la prima "virtù" cristiana non è la fede ma in teoria dovrebbe essere l'amore per il prossimo, "ama il prossimo come te stesso", che era l'originalità del messaggio di Gesu rispetto all'ebraismo dei suoi tempi. Da questo deriva la tendenza "perdonistica" e "accoglientistica" odierna.

      Dio non ci rivela niente perché è un Dio muto. Quello che sappiamo viene dalle Scritture, che, per chi ci crede, sono si la Sua parola ma trasmessa per bocca dei profeti e degli scrivani che l'hanno ricopiata.

      Elimina