Global templates/Proposed specification, short version/it

I progetti Wikimedia hanno un problema. Il software che utilizzano è un mix di codice che proviene, fondamentalmente, da due fonti:


 * 1) Software principale: MediaWiki e le sue estensioni, che sono sviluppate, distribuite e tradotte centralmente tramite Gerrit, Translatewiki e strumenti correlati.
 * 2) Personalizzazioni locali: una vasta raccolta di strumenti sviluppati localmente su ogni wiki, come template, moduli Lua e gadget.

Per gli utenti e i lettori delle varie wiki, le varie tecnologie si mescolano insieme e sembrano essere un unico prodotto, ma il differente processo di sviluppo delle sue parti talvolta crea o pone dei problemi:


 * Le personalizzazioni in locale sono spesso utilissime su varie lingue, ma la loro portabilità fra progetti è complessa e richiede un sacco di tempo.
 * Alcune estensioni come Visual Editor e Content Translation non possono riconoscere queste personalizzazioni locali; per esempio, gli infobox sono una caratteristica principale di molte wiki, ma sono implementate separatamente in ogni versione, al punto che per inserirli tramite Visual Editor serve cliccare sul pulsante “Inserisci template” (non “Inserisci infobox”) e conoscere il nome corretto del template da inserire.
 * Le comunità wiki più piccole sono svantaggiate perché non hanno la capacità di sviluppare template e gadget da sole e non c'è modo di importarle in modo semplice. In particolare le wiki appena create iniziano con un “minimo sindacale” fornito da MediaWiki e le principali estensioni, mentre molte delle funzionalità delle comunità più grandi o più vecchie sono basate su template e moduli, che non possono essere installate automaticamente e devono essere importate manualmente.
 * Le incompatibilità fra software e localizzazioni possono creare dei bug che sono difficili da individuare o prevedere e che possono essere risolti solo su una wiki alla volta. Questo può portare una comunità a rinunciare ad adottare una funzione, a sprecare risorse e a generare frizioni non necessarie fra utenti e sviluppatori - tutte cose che possono essere tranquillamente evitate.
 * Le differenze fra versioni locali rendono più difficili le traduzioni. Risolvere questo problema potrebbe aumentare notevolmente la velocità nella traduzione di contenuti, che si possono rendere accessibili a più ampie parti dell'umanità.

Nonostante siano molto evidenti, questi problemi vengono molto spesso trascurati. Le differenti parti vengono spesso integrate senza soluzione di continuità nell'interfaccia utente del sito. Le persone che collaborano principalmente a un solo progetto potrebbero non rendersi conto che una determinata funzione è disponibile solo su quel progetto e pensare che sia disponibile ovunque. Anche gli sviluppatori esperti spesso commettono questo errore.

La soluzione proposta:


 * 1) Rendere alcuni template e moduli globali, similmente a quanto avviene per le immagini tramite Wikimedia Commons, i JS e i CSS personali, le pagine utente globali, eccetera (in realtà, anche i gadget dovrebbero essere globali, ma questo è già parzialmente possibile tramite dei piccoli trucchetti, come quelli usati da HotCat; non è il massimo, ma sicuramente è una situazione meno problematica di quella dei template, pertanto i gadget non rientrano nello scopo di questa proposta).
 * 2) Ogni comunità manterrebbe la sua autonomia nel gestire alcuni template in locale, ma avrebbe anche la possibilità di fare dei cambi locali alle funzionalità dei template globali, in modo da poter decidere autonomamente sulle informazioni che intendono presentare ai propri lettori.
 * 3) I parametri e le stringhe dei template globali dovrebbero essere rese traducibili attraverso un'interfaccia simile a Translatewiki, come avviene adesso per le estensioni.
 * 4) I template e i moduli sarebbero comunque editabili come normali pagine wiki e immediatamente riutilizzabili dopo la pubblicazione.
 * 5) Le linee guida sulla manutenzione, la condivisione, la protezione e la cancellazione di template e moduli sarà interamente sviluppata dalla comunità di utenti.

Costruire l'infrastruttura per template e moduli globali è complicato, ma gli sviluppatori di MediaWiki hanno detto più volte che è possibile e che è largamente una questione di gestione del prodotto e di dedizione. È qualcosa che tuttavia va fatto, perché la mancanza di template globali è il problema principale di fruibilità per tutti: sviluppatori, utenti nuovi, utenti esperti e traduttori, di tutte le lingue e di tutti i progetti.

Se ti sembra interessante e vuoi approfondire la questione, puoi leggere la proposta dettagliata.