Aristotele contro il flat indexing: perché abbiamo scelto i tag invece delle directory
· Stefano Diana

La ricerca dell’ordine è da sempre una necessità umana. Solo ciò che si ripete regolarmente permette di prevedere un minimo di futuro, e allenta la morsa del perenne abbraccio del caso. Le leggi di natura scoperte dal metodo scientifico sono essenzialmente fenomeni che si ripetono. La verità stessa, secondo Simon Baron-Cohen, è per noi umani qualcosa che si ripete. Come neuropsicologo esperto di autismo ha studiato a fondo i tipi umani più capaci di riconoscere gli schemi e le ripetizioni intorno a sé, e ha identificato i cosiddetti hyper-systemizer nelle cui schiere troviamo i grandi scienziati, inventori, matematici, artisti.
L’origine del nostro metodo di organizzazione del mondo si può far risalire al primo esempio eccellente di hyper-systemizer e cercatore di schemi della nostra storia: Aristotele. Le sue “categorie” – sostanza, quantità, qualità, relazione, ecc. – erano i caratteri primari e supremi di tutto, come un insieme di coordinate che prendendo valori specifici per ogni cosa identificavano il suo posto nell’ordine universale. Le categorie dovevano permettere di catalogare tutto ciò che esiste, e anche di descriverne il divenire con le loro variazioni.
L’aspirazione di Aristotele all’ordinamento universale non è mai morta e la sua sistematica ha trovato sempre nuovi adepti a rinnovarne il fuoco. In generale si dimostrò al di sopra delle capacità umane: nel reame sfumato e complesso della esperienza quotidiana, gli universali aristotelici erano impotenti e ogni presunta regola si trova di fronte a innumerevoli eccezioni possibili. Wittgenstein ne addolcì le pretese riducendoli a una semplice “aria di famiglia”, una somiglianza tra i fenomeni che si può intuire ma non descrivere con precision.
Tuttavia il metodo è stato applicato con successo in ambiti circoscritti. Nell’era moderna tutte le discipline accademiche hanno prodotto le loro ontologie, cioè le loro particolari “scienze dell’essere” fatte di categorie, per strutturare la conoscenza e per limitare la complessità. Famoso esempio è la tassonomia che Carlo Linneo istituì nel ‘700 nelle scienze naturali, a partire dalla coppia <genere, differenza specifica> prescritta da Aristotele nella Metafisica. Linneo estese questa gerarchia a livelli sempre più raffinati per incasellare tutti i viventi conosciuti. Essendo aperta, si è potuta modificare e ampliare nel corso del tempo e nonostante i secoli è rimasto un fondamentale strumento di organizzazione della conoscenza scientific.
La tassonomia è stata adoperata efficacemente anche per gli artefatti culturali. Ad esempio i documenti, oggetto dell’archivistica. Questa diventa una scienza a sé nel XVI secolo, distaccandosi da paleografia e diplomatica, per dedicarsi alla conservazione della memoria. Il culmine dei suoi sforzi è la General International Standard Archival Description o ISAD(G), del 1994, che definisce i descrittori necessari a organizzare e individuare in modo coerente e completo documenti di qualsiasi tipo. Anche qui i descrittori sono strutturati in livelli gerarchici e procedono dal generale al particolare.
Un altro caso notevole sono i libri. Nelle biblioteche all’inizio dell’epoca moderna le diverse istituzioni usavano diversi schemi di catalogazione: ad esempio alla Sorbona di Parigi i libri erano ordinati prima per argomento, e poi alfabeticamente. Alla fine del XVIII secolo arriva l’invenzione dei cataloghi a card: ciascuna card è un record bibliografico che rappresenta virtualmente una determinata opera fisica mediante un insieme fisso di dati come autore, titolo, ecc., detti index terms (ci ritorneremo più avanti).
Concettualmente la card è un grande passo in avanti verso la nostra epoca: se ci pensate, infatti, i descrittori della risorsa contenuti nella card non sono altro che metadati. La transizione ai sistemi computazionali infatti si mantiene nella tradizione, in quanto a organizzazione della conoscenza: la sua versione informatica è quel costrutto estremamente familiare a tutti noi che è il file system. Il file system è il componente del sistema operativo che segmenta una immane e indistinta massa di bit, assegnando un nome e certe proprietà – metadati, appunto – a ogni sua porzione significativa. Non a caso il termine “file” è lo stesso che veniva usato per i cataloghi cartacei: chiara dimostrazione della totale continuità concettuale tra l’archiviazione analogica e quella digitale. La continuità si ritrova anche nell’architettura dell’informazione: fra i princìpi e gli accorgimenti inaugurati dal sistema operativo Multics nel 1964, che faranno scuola e saranno più o meno fedelmente adottati in tutti i sistemi operativi successivi, c’è il file system gerarchico col consueto albero di directory.
Anche l’idea del layer informativo sovrapposto al mondo fisico, che era già nelle card bibliografiche, viene ripresa e anabolizzata nei sistemi computazionali per ridurre una complessità disumana. Ciò che vede l’utente viene disaccoppiato da ciò che vede la macchina. «La struttura di base del file system è indipendente da questioni legate alla macchina. Nell’ambito di una gerarchia di file, l’utente è a conoscenza solo di indirizzi simbolici. Tutti gli indirizzi fisici di un insieme di dispositivi di memorizzazione secondaria a più livelli sono gestiti dal file system e non sono visibili all’utente. (…) In generale, l’utente non sa come o su quale dispositivo è memorizzato un file.»[1] Questo trucco servirà anche a presentare all’utente uno spazio di memoria virtuale più grande di quella fisica, e permettere l’esecuzione di programmi che non entrerebbero in quella fisica, usando uno swap file.
Tali artifici furono riproposti e ampliati da Ken Thompson sin dalle prime versioni di Unix, dove troviamo la versione matura del file system gerarchico come albero di profondità arbitraria. In Multics anche le directory erano “file”; in Unix questo concetto di file generalizzato si estende all’astrazione dei device. Nella nuova interpretazione, le directory sono contenitori virtuali che elencano solo i nomi dei file con i relativi puntatori ai cosiddetti inodes, che a loro volta contengono gli attributi del file e gli indirizzi dei blocchi di memoria dove si trovano i dati. Unix disaccoppiava completamente le informazioni sulla gerarchia da quelle di accesso ai file, e aveva bisogno di un indice numerico per passare dall’una all’altro nella tabella di accesso: di qui il nome i-node, short for index node.
Con ciò nasce la possibilità di avere più nomi file in directory diverse che puntano agli stessi dati, e il file system è in grado di mappare dei grafi sull’albero. Probabilmente l’innovazione rispecchia il fatto che la semplice struttura ad albero cominciasse già a stare stretta, e che fosse avvertita la necessità di moltiplicare i modi di mettere i file in relazione fra loro. Essendo machine-agnostic la struttura logica dei file, come organizzarla diventa una libera scelta dei progettisti.
Come i linguaggi di programmazione, il livello logico d’interfaccia è andato raffinando e ampliando le capacità di astrazione a mano a mano che la potenza di elaborazione cresceva. Se vent’anni fa poteva mostrare come un oggetto unico e coerente dei dati che di fatto erano sparpagliati in piccoli chunks su un disco, magari per ottimizzare lo spazio o le operazioni read/write, nelle infrastrutture cloud odierne possiamo vedere come un oggetto unico ciò che è distribuito su molti host in continenti diversi, possiamo far girare molte macchine virtuali su uno stesso sistema fisico, e perfino virtualizzare i sistemi operativi stessi eseguendone piccole parti in container separati.
Il diluvio di informazione attuale, in cui i motori di ricerca sono la nostra indispensabile guida, ci ricorda che l’inseparabile compagno della conservazione è il recupero dell’informazione. Ciò che viene archiviato si deve poter ritrovare e riesumare con ragionevole facilità, e perché questo accada sono necessarie tecniche che tengano conto sia di come è fatta l’informazione sia delle capacità cognitive e psicologiche degli esseri umani che ne hanno bisogno. Il citato standard archivistico ISAD(G) ad esempio si propone dichiaratamente di «identificare ed illustrare il contesto e il contenuto della documentazione archivistica per promuoverne l’accessibilità̀», di favorire il «controllo intellettuale, necessario per far sì che documenti descrittivi affidabili, autentici e significativi siano trasmessi nel tempo», e di facilitare «il recupero e lo scambio di informazioni (…) in un sistema informativo unificato».
Nel recupero dell’informazione sono essenziali gli indici, quelli che abbiamo visto nelle card come index terms e in Unix come index nodes. In generale gli indici sono segni che, appunto, indicano altre cose. Nella semiotica di Peirce legano significante e significato in una relazione di contiguità, specialmente di causa-effetto: le orme di un animale e la presenza dell’animale, il fumo e il fuoco. Così l’insieme degli index terms che compongono un record bibliografico indica un determinato libro nella biblioteca. Gli index terms delle card formano il dizionario dei record bibliografici: in pratica sono le “categorie aristoteliche” di quel mondo, i parametri necessari e sufficienti a catalogare l’universo dei libri di una biblioteca fisica in modo da ritrovarli a colpo sicuro.
Chi ha usato nel 1995 il primo search engine popolare, Altavista, ricorderà che conservava sulla colonna sinistra un elenco di directory tematiche: erano chiare vestigia del vecchio metodo di catalogazione, che in quell’era già remota si pensava ancora di poter imporre in un web fatto da una manciata di siti – 23.500 secondo la stima di NetCraft and Internet Live Stats. La distanza tra la homepage di Altavista e il minimalismo della homepage odierna di Google racconta meglio di qualunque parola la trasformazione radicale che ha subito l’information retrieval: è sopravvissuto solo un campo per l’input utente, dato che ormai i siti sono circa 2 miliardi, gli index terms sono più delle stelle in cielo, e l’unica cosa sensata è dare carta bianca. Questa libertà è assistita da suggerimenti che derivano anch’essi dalla statistica dalle chiavi di ricerca degli utenti.
Le categorie top-down erano già state messe in discussione su un altro fronte: la new wave del web sorta all’inizio degli anni 2000. La pigra interattività delle pagine web riceve uno slancio vertiginoso grazie a innovazioni nella UI come Asynchronous Javascript And XML (AJAX), e comincia a materializzarsi l’utente come produttore attivo di scelte, input, contenuti, scambi, conversazioni. È la nascita di quello che Tim O’Reilly battezza Web 2.0, caratterizzato più di ogni altra cosa dall’onnipresente pulsante “share”, e la marea degli user generated content inizia ad ingrossare la rete senza freni.
La partecipazione di massa dal basso rende possibili fenomeni del tutto nuovi, in cui la spinta collettiva di persone distanti e sconosciute si può sincronizzare su un unico obiettivo online e concretizzare in risultati straordinari dal punto di vista dei numeri. Sono numeri di grandezze mai viste prima, sono i nuovi fenomeni di massa ai quali siamo abituati oggi: ad esempio i tanti tipi di crowdsourcing, o l’effetto virale che può portare rapidamente degli egregi sconosciuti dall’oblio a milioni di visualizzazioni o ascolti in brevissimo tempo. E le folle immense, atomizzate e loquaci di questa società globale superconduttiva sono più che mai impermeabili ai vecchi metodi di catalogazione top-down. Le persone sono così tante, a interagire, che per un’autorità è impossibile pretendere di impostare dei modi esaustivi e universali di leggere il mondo e ordinarlo (fatta eccezione per i proprietari delle piattaforme che impongono i loro parametri, ovviamente).
Così nascono le categorie bottom-up, scelte dagli utenti: i tag. Aristotele si sarà rivoltato nella tomba a vedere persone qualunque decidere le keyword preferite da associare ai propri beni digitali, per organizzarli, esplorarli e ritrovarli a loro modo. L’ordine idiosincratico della propria camera da letto si estende all’intero Web 2.0. Con i tag le tassonomie sono rimpiazzate dalle folksonomy: sistemi di classificazione, come suggerisce la composizione del neologismo, che al posto dei taxa gerarchici prefissati mettono la spontaneità del folk, il popolare opposto all’autoritativo, il senso comune della gente.
L’aspetto davvero nuovo e notevole è che i tag sono visibili orizzontalmente fra utenti, si collegano fra loro con link, si sovrappongono, e dànno vita a fenomeni inauditi. Ad esempio i miracoli che fa Photosynth per qualche anno dal 2008. Era una piattaforma collaborativa, oggi purtroppo scomparsa, in cui chiunque poteva caricare le foto di viaggio con i loro bravi tag. Poi una tecnologia di elaborazione immagini di Microsoft Research, avanzatissima per l’epoca, le combinava in base ai tag riconoscendo gli elementi in comune tra le scene ritratte, tenendo in conto le prospettive diverse, e calcolando così lo scenario tridimensionale di cui facevano parte. Si trovavano sul sito stupendi pointclouds, nugoli di punti luminosi che formavano la gestalt 3D di un panorama o di un edificio, come la basilica di S. Marco a Venezia.
Questi modelli 3D erano navigabili nel browser e, cosa ancor più straordinaria, si poteva passare in ogni momento dal divisionismo della pointcloud alla visualizzazione fotografica, per esplorare la location attraverso le sue costituenti primarie: le migliaia di foto taggate “San Marco” o simile che tante persone avevano scattato nei loro viaggi, ognuna per conto suo, senza mai immaginare che stavano costruendo un’opera collaborativa. Le foto erano mostrate nella prospettiva giusta rispetto al viewpoint corrente nel browser, offrendo un’esperienza intermediale davvero unica.
Ma il primo servizio basato sugli user-defined tags che ricordo di aver usato è stato il comodissimo social bookmarking di del.icio.us, fondato nel 2003. Salvare i siti più interessanti nel mio profilo online invece che nella solitudine del mio browser, navigare i tag altrui scoprendo altri mondi, fu la mia prima vera esperienza di espansione orizzontale immediata della conoscenza, tipica della società dell’informazione. Quella che ora, mai incontrando una qualunque resistenza, è scivolata nel nostro normale disorientamento da information overload, un velo costante di nausea e di ansia da prestazione.
I tag user-defined si sono dimostrati gli index terms più adatti all’ecosistema informativo della rete globale, duttili abbastanza da adattarsi alla enorme varietà di sorgenti e di pratiche d’uso che si incontrano nel mondo. È la vittoria del particolare sull’universale aristotelico. Collegandosi tra loro, i tag possono comporre telai di grande complessità, che su grande scala si strutturano spontaneamente grazie alle proprietà statistiche dell’insieme. Tuttavia anche in contesti locali la loro modularità non gerarchica permette di creare grafi d’interesse, ad esempio operando sui dizionari idiomatici propri di un ambito del sapere o del lavoro.
È per questo che in Mnemonica abbiamo adottato i tag invece del file system gerarchico, quando ci siamo trovati davanti alla principale scelta di design: come organizzare i contenuti caricati. Nelle piattaforme di media asset management del settore di norma si ricalca lo schema classico del file system per organizzare le clip: un progetto contiene dei folder, ogni folder ospita dei contenuti, su ogni folder si possono fare certe operazioni (ad esempio l’invio a una serie di destinatari), sui file contenuti si possono fare altre operazioni. Queste piattaforme si ispirano al principio di abitudine: essendo il file system gerarchico così assolutamente familiare per tutti, dopo 30 anni abbondanti di home computing, è ciò che tutti si aspettano di trovare in un’interfaccia di gestione file, e tutti sanno come usarlo senza ulteriori istruzioni.
Ma anche qui l’universale non va necessariamente d’accordo col particolare. Era il file system la struttura informatica più adatta a chi lavora nella produzione cinematografica, considerando le loro specifiche modalità di lavoro, i tempi rapidi con cui devono accedere ai contenuti, il tipo di dati che generano, l’ordine in cui lo fanno e poi tornano a consultarli, il modo in cui interagiscono fra loro, e così via? La nostra risposta è stata negativa. A noi il file system, come del resto il folder stesso, sono sembrati arcaici e troppo rigidi rispetto alle esigenze quotidiane del cloud cinema. Quel modo fluido di lavorare seguendo un piano ma adattandosi continuamente alle circostanze meritava di essere assecondato da un’impalcatura altrettanto flessibile. E il giunto perfetto per costruirla era il tag.
Così abbiamo progettato il nostro flat indexing, che è una delle caratteristiche più speciali di Mnemonica.
Come funziona? Tanto per cominciare, i media sono ospitati in Screening Room che non sono folder ma ambienti di fruizione sociale controllata, fatti apposta per i requisiti della produzione film/tv. Sono ambienti attivi, nel senso che sono anche capaci di elaborare automaticamente i loro contenuti, ad esempio nell’applicazione dei watermark, e di distribuire contenuti a pubblici separati in tempi diversi.
Poi abbiamo i Day e i Bin, che sembrano contenitori o folder ma non sono né l’uno né l’altro. Sia i Day, i giorni di lavorazione, che i Bin, contenitori multi-purpose utilizzabili ad esempio come scene oppure come ruoli per il casting o locations, sono in realtà tag associati ai media. A questi si possono associare altri tag a piacere, mentre ai Bin si possono associare sia tag generici che tag contrassegnati semanticamente come location e character.
La semplicità con cui realizzano l’information retrieval, proprio grazie alla struttura a tag sottostante, è davvero unica. E qui dobbiamo osservare una cosa en passant: quando si crede che il file system sia la cosa migliore perché si può usare out-of-the-box, senza nulla da apprendere, si dimentica che c’è un altro caso in cui il manuale non serve: quando le cose si spiegano da sé mentre le usi. Così avviene in Memonica: quando tocchi un Day e lo vedi illuminarsi e al contempo vedi ridursi sia il media pool che la lista Bin accanto, e poi lo tocchi di nuovo e vedi tornare tutto come prima, capisci al volo che quel Day funziona come un filtro sul media pool che seleziona le sole clip che esso contiene. Come anticipato, però, “contiene” è solo una comoda metafora che aiuta efficacemente l’apprendimento della UI: la vera azione di un Day è selezionare un tag in un insieme di media.
Lo stesso vale per i Bin, il cui comportamento è del tutto analogo. E anche questa utilissima simmetria è possibile solo perché Day e Bin sono tag dei media e non sono annidati gerarchicamente, cosa che limiterebbe le possibilità. Sono entità di pari livello, collegate attraverso i media. Dunque per fare una playlist posso selezionare prima un qualunque Day, e poi una delle scene girate in quel Day; oppure, viceversa, posso selezionare prima una scena qualunque, e poi uno dei Day in cui è stata girata. Questa efficace immediatezza è ampliata e ulteriormente potenziata dal sistema combinato di tutti gli altri tag che gli utenti possono definire in Mnemonica, e che sono tutti filtrabili con i campi search disseminati ovunque nella UI.
Questo è secondo noi, e secondo i nostri utenti, il tipo di elasticità nell’ordinamento dei contenuti che meglio si addice alla gente di cinema. Because #welovefilmmakers.
[1] R.C. Daley (MIT), P.G. Neumann (Bell Labs), *A General-Purpose File System For Secondary Storage *https://www.multicians.org/fjcc4.html
Scopri come Mnemonica si adatta al tuo flusso di lavoro.
Richiedi una demo

