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 crea 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 comunità 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) The user interface strings of the global templates must be translatable in a translatewiki-like interface, similarly to extensions.
 * 4) The templates and modules will still be editable as wiki pages and immediately usable after publishing.
 * 5) Policies about maintenance, sharing, protection, and deletion of templates and modules will be developed by the editors community.

Building the infrastructure for global templates and modules is challenging, however the core platform developers have said multiple times that it’s possible, and mostly requires product management and dedication. It has to be done, because the lack of global templates is the biggest usability challenge for all stakeholders: developers, new editors, veteran editors, and translators, in all languages and in all wiki projects.

Una proposta più dettagliata su come potrebbe funzionare si trova in questa pagina.