Google é indiscutibilmente il principale motore di ricerca online, tanto che l’atto di cercare qualcosa sul web viene espresso col suo nome (“non sai nulla di questo argomento? Googolalo!”).

Uno dei motivi del successo di Google é che si tratta di un ottimo motore di ricerca, effettivamente capace di trovare quel che cerchi nella stragrande maggioranza dei casi.

D’altro canto Google é anche un’azienda imponente e ramificata che vive di raccolta e vendita dati, che si ricorda cos’hai cercato, quando e quante volte e che collega queste informazioni ad altre che ha raccolto su di te attraverso una miriade di servizi che affiancano quello di ricerca web. E questo é un grosso problema! Un grosso problema che é sotto gli occhi di chiunque ma che al tempo stesso viene raramente affrontato.

Ciò che é poco noto, invece, é che la maggior parte dei suoi servizi può benissimo esser sostituita con altri meno invasivi, compreso il motore di ricerca.

Sostituire il motore di ricerca di Google é certamente un passo importante per arginare il pericolo di avere un’unica azienda a controllo di tutti i dati che forniamo ogni volta che facciamo una ricerca online. Dati che vengono spiati, raccolti, classificati e venduti.

Oltre a Google difatti esistono diversi motori di ricerca validi. Parte di questi in realtà sono assai specifici ed utilizzabili solo per ricerche assai specifiche (ad esempio TinEye per il reverse search di immagini), ma la maggior parte consente di fare ricerche generiche e funziona in modo molto simile Google.

Per proseguire é però necessario comprendere alcuni concetti base su cui si poggia un motore di ricerca. Uno dei componenti base di un motore é il suo CRAWLER (può essere reso con “ispezionatore”), ossia un programma che naviga in automatico nel web, saltando di link in link e registrando nei database del motore di ricerca ogni parola, immagine, file che trova (creando quella che viene chiamata “copia CACHE”). Una volta che il crawler ha scoperto e registrato i contenuti, il motore di ricerca classifica ogni contenuto attraverso un proprio ALGORITMO.

Un buon crawler idealmente trova il 100% dei contenuti di un sito ed un buon algoritmo é in grado di classificare come si deve ogni contenuto. Al contrario un cattivo crawler potrebbe non scoprire mai l’esistenza del tuo sito o scoprirne solo una parte ed un cattivo algoritmo, quando cerchi informazioni su “spaghetti” potrebbe mettere nei primi risultati pagine che non parlano della pastasciutta ma i post di un tizio che si firma “Mr. Spaghetti” (chi si ricorda i primi motori di ricerca degli anni ’90 conosce bene questo tipo di situazioni). Ogni motore di ricerca usa un proprio crawler ed un proprio algoritmo, diversi da quelli degli altri motori.

Non va poi sottovalutato l’intervento umano: é per scelta degli amministratori di Google ad esempio che certi siti compaiono sempre in testa ai risultati (come Wikipedia quando si cerca il nome di una persona nota o Booking quando si cercano località turistiche). É sempre per una scelta voluta che i suggerimenti di ricerca di Google non contengano mai termini volgari o riferimenti a contenuti per adulti.

PRINCIPALI DIFFERENZE CON GOOGLE

Chi utilizza per la prima volta un motore di ricerca diverso dal onnipresente Google non può non notare che questi restituiscono risultati diversi.

SERP DIFFERENTI: Ognuno di questi motori genera per ogni ricerca dei risultati un pò diversi (tecnicamente S.E.R.P.: Search Engine Results Page): quello che per Google é il primo risultato, per un altro motore di ricerca può essere il decimo. Questo può dipendere da principalmente dal crawler e dall’algoritmo usati.

IMMAGINI, NEWS ECC: Molti motori di ricerca sono focalizzati sulla ricerca di pagine web e dunque peccano dal lato di ricerca news e immagini

RICERCA AVANZATA: Google offre diversi strumenti di ricerca avanzata che spesso mancano agli altri motori di ricerca, per esempio Google Trends o la possibilità di visionare la pagina cache.

Un paio di motori di ricerca alternativi a Google sono ad esempio:

DuckDuckGo

É più o meno riconosciuto come il principale motore alternativo a Google. I risultati di ricerca sono ottimi, anche per la ricerca immagini, ma pecca riguardo alle news. L’azienda proprietaria, statunitense, si pubblicizza come molto focalizzata su privacy e sicurezza e parte del software é open source. Si finanzia pubblicando inserzioni pubblicitarie e tramite affiliazioni.

Qwant

Motore di ricerca realizzato in Francia. Anch’esso si promuove come fortemente incentrato sulla privacy degli utenti. I risultati sono molto buoni anche per quanto riguarda immagini e news. Si finanzia in parte ricevendo commissioni da alcuni grossi portali a cui indirizza il traffico e in parte tramite finanziamenti pubblici.

L’elenco completo sarebbe lunghissimo e includerebbe Bing, Yahoo, Lycos, WebCrawler e molti altri (un elenco dettagliato é disponibile in questa pagina Wikipedia). Quel che però appare già evidente é un che motore di ricerca per esistere ha necessità di molti fondi per poter reggere economicamente (basta solo vedere le dimensioni delle serverfarm di Google per rendersi conto dei costi spaventosi che genera) e ciò causa immancabilmente una situazione da gatto che si morde la coda, con i motori di ricerca che alterano i propri risultati per favorire gli sponsor e vendono i dati di navigazione dei propri utenti (data mining) per poter garantire a quegli stessi utenti un servizio costante e sempre aggiornato.

Inoltre ognuno di questi motori di ricerca appartiene sempre ad una sola azienda, la quale si trova dunque sempre in condizione di poter manipolare i risultati. Insomma, non se ne esce fuori: per quanto possano esser buone le intenzioni e le persone che li gestiscono, i comuni motori di ricerca sono strutturati in modo tale da lasciare in mano ai loro gestori un potere considerevole nei confronti degli utenti. Come se ne esce?

METAMOTORI DI RICERCA

Una prima soluzione é quella di usare un metamotore di ricerca, ossia un motore che non si sbatte a ispezionare il web e classificarne i contenuti (ergo: non fa crawling), ma trasmette la tua ricerca a motori di ricerca veri e propri e ne assembla i risultati. Si tratta, in poche parole, di un “motore di motori di ricerca”.

Se cerchi “spaghetti” su un metamotore di ricerca (ad esempio SearX), questo cercherà “spaghetti” su dei motori di ricerca veri e propri, come Google, DuckDuckGo e Qwant, e poi restituirà una S.E.R.P. ottenuta assemblando quello che i motori han trovato.

In questo modo, per capirci, tutti gli utenti che utilizzano il metamotore di ricerca, verranno intesi da Google come un unico, gigantesco utente che fa un numero talmente elevato e variegato di ricerche da divenir inclassificabile. Il metamotore di ricerca, tuttavia, potrebbe sempre tener traccia di quel che fai tu. É già qualcosa.

MOTORI COLLABORATIVI (P2P ETC.)

Una seconda soluzione é quella di utilizzare una soluzione collaborativa tra server e/o utenti diversi in modo da formare assieme un grande motore di ricerca. Qui incontriamo nuovamente il concetto di reti decentralizzate e distribuite già descritte nei post sul Fediverso e su Mastodon.

Riassumendo: una rete centralizzata (A) é come Google, in cui tutti gli utenti si rivolgono idealmente ad un unico server chiamato Google che detiene il totale controllo dei dati. Una rete decentralizzata (B) é formata da più server che collaborano fra loro, dando la possibilità ad ogni utente può scegliere a quale server connettersi (il quale può avere delle peculiarità diverse rispetto agli altri) e da qui può interagire con gli altri server della rete. Una rete distribuita (C) invece, é una rete in cui ogni singolo utente funge da server di sé stesso e, in maniera del tutto indipendente, può connettersi ad altri utenti con cui interagire.

Come si traducono questi tipi di rete con i motori di ricerca? Prendiamo ad esempio una rete decentrata ed immaginiamoci l’esistenza di diversi server, su ognuno dei quali é stato installato lo stesso software di motore di ricerca. Ognuno di questi server ha il suo crawler che ispeziona il web e si crea il proprio database con le informazioni sulla porzione di Internet che ha ispezionato (“porzione” perché si parte dal presupposto che ognuno di questi server sia di per sé troppo piccolo perché possa ispezionarlo tutto). Ognuno di essi é un piccolo motore di ricerca che magari conosce perfettamente una certa parte del web (ad esempio, solo i siti in italiano). Ma qui viene il bello: in una rete decentralizzata diversi server possono interagire fra loro, in modo tale che, messi assieme, formino una sorta di mega-motore di ricerca diffuso su scala globale.

Qui la cosa si può già fare molto interessante: i diversi server potrebbero sì condividere e scambiarsi informazioni andando a formare assieme un unico database comune da cui attingere informazioni e tuttavia essere personalizzati per presentare S.E.R.P. personalizzate. Potresti dunque scegliere di fare la stessa ricerca su diversi server specializzati in modo differente. Per esempio, un certo server potrebbe essere impostato per mostrare solamente contenuti adatti ai bambini, un altro potrebbe dare la precedenza ai contenuti più nuovi e un altro ancora potrebbe organizzare i risultati escludendo fonti ritenute inattendibili.

Oltre a tale personalizzazione dei risultati, i server potrebbero scambiarsi anche diverse informazioni tecniche aiutandosi vicendevolmente a mappare meglio porzioni di web e classificarne i contenuti.

A questo punto é facile capire che una rete distribuita funzionarebbe allo stesso modo, ma in questo caso non sarebbero solo i diversi server a partecipare a questo lavoro collaborativo, ma pure i singoli computer dei singoli utenti. Per capirci: su ogni computer si avrebbe installato del software che si occupa di ispezionare il web comunicando al database diffuso quel che ha scoperto ed archiviando una porzione di esso sul proprio disco fisso. Ogni utente inoltre potrebbe personalizzare a proprio piacimento personale il modo ed ordine in cui comparirebbero i risultati di ricerca.

SearX é un metamotore di ricerca open source. Il suo software é liberamente scaricabile, modificabile ed installabile da chiunque sul proprio computer o su un server che può esser anche reso pubblico. In effetti sono già oltre un centinaio i server SearX pubblici noti e molti di questi presentano delle caratteristiche proprie. É un pò come dire che ci sono cento versioni diverse di Google. SearX non é un motore collaborativo e quindi ogni singola macchina con installato SearX funziona in maniera del tutto scollegata dalle altre.

Tra i tanti server SearX pubblici, possiamo ad esempio osservare e fare un paragone tra https://search.disroot.org/, ovvero la versione di SearX installata sui server dell’organizzazione Disroot, e https://framabee.org/, la versione di SearX installata sui server dell’associazione FramaSoft. Oltre alle diversa veste grafica, basta fare una semplice prova per osservare quanto cambino i risultati (PS: search.disroot é impostata decisamente meglio).

Inoltre SearX permette ad ogni utente di personalizzare diversi fattori, anche molto tecnici. Ad esempio é possibile selezionare su quali motori di ricerca deve basarsi SearX, differenziandoli a seconda che si tratti di ricerche generali, di immagini, news, o documenti. Si possono impostare diverse preferenze riguardanti il tracciamento e la modalità di organizzazione dei risultati. Ogni server SearX dunque fornisce risultati diversi a seconda di come é stato impostato e può permettere un certo grado di personalizzazione all’utente. Una caratteristica interessante di SearX é che utilizza come cache i salvataggi pagina su archive.org.

Per quanto riguarda la qualità dei risultati, dunque, molto dipende dal server SearX scelto. La S.E.R.P. principale di https://search.disroot.org/ non é affatto male, tranne che per immagini e notizie, ma questo sembra essere una mancanza dello stesso software SearX e non una caratteristica del server specifico. Oltre alla minor qualità dei risultati su immagini e news mancano diverse comode funzioni presenti in Google: non c’é la ricerca per colore e non é presente alcun aggregatore di notizie.

Yacy invece é un motore di ricerca distribuito e collaborativo basato su P2P. Si tratta di un progetto molto piccolo e, allo stato attuale, troppo complesso per poter esser davvero proposto come alternativa ai più comuni motori di ricerca disponibili online. A livello di usabilità risulta ancora abbastanza macchinoso, in quanto sono più le occasioni in cui non restituisce alcun risultato di quelle in cui trova qualcosa, come é possibile verificare in questa pagina demo.

Tuttavia va segnalato anche a chi non é interessato ad uno strumento ancora in via di sviluppo perché già allo stato attuale permette di far capire come funziona una rete collaborativa che costruisce assieme un database comune distribuito.

Ipoteticamente, una rete distribuita é quasi indistruttibile: in uno scenario in cui tutti i computer del pianeta facessero parte della rete Yacy, anche se la maggior parte di questi fosse improvvisamente tagliata fuori o distrutta da un colossale meteorite, é sufficiente che solo una minima parte resti attiva perché tutto il database comune resti attivo. Progetto interessantissimo dunque, ma che dovrebbe essere reso molto più user-friendly per sperare in una adozione di massa. Chi volesse provare ad installarselo e smanettarci lo trova qui.

IN CONCLUSIONE

Esistono diverse alternative al motore di ricerca di Google, alcune molto valide come DuckDuckGo ed altre meno, ma gli strumenti già disponibili permettono a di poter fare tranquillamente a meno delle ricerche su Google.

Anche la prassi di utilizzare diversi motori di ricerca per ricerche di diverso tipo può essere un modo per non diffondere su una sola piattaforma tutte le informazioni che solitamente vengono messe in mano a Google. Esistono poi strumenti come SearX che, nonostante alcuni limiti, possono contribuire ulteriormente a creare una maggior distanza tra sé e le compagnie di data mining come Google e, potenzialmente, qualsiasi grosso motore di ricerca centralizzato. Gettando lo sguardo ancora più avanti, poi, osserviamo strumenti come Yacy che, idealmente, potrebbero davvero contribuire a riportare in mano alle persone il controllo dei propri dati ma questo, a patto che ci sia al tempo stesso uno sforzo da parte degli sviluppatori di semplificare tali strumenti ed uno sforzo da parte degli utenti per imparare a districarsi meglio nelle complessità dell’informatica.

Non sarebbe male arrivare un giorno ad avere un motore di ricerca collaborativo distribuito, magari pure ibridato con un metamotore di ricerca capace di confrontare la propria S.E.R.P. con quella fornita da altri motori che non fanno parte della rete condivisa. Una sorta di fusione tra SearX e Yacy in cui possano partecipare sia server dedicati che i singoli utenti, andando a formare reti federate di ricerca.