Global templates/Proposed specification, short version/pt-br

Os projetos Wikimedia tem um problema. O software neles é uma mistura de códigos que vêm de duas fontes:


 * 1) Softwares implantados: O software MediaWiki core e suas extensões, que são desenvolvidas, implantadas e centralmente internacionalizadas via,  e ferramentas relacionadas.
 * 2) Personalizações locais: Uma grande coleção de ferramentas on-wiki que são desenvolvidas localmente em cada wiki:  (templates),  e .

Para os editores e leitores dos sites, as diferentes tecnologias são entrelaçadas e aparecem como um produto. Contudo, os diferens processos de desenvolvimento dos softwares apresentam alguns desafios:


 * As personalizações locais podem ser úteis para diversas línguas, mas é muito difícil e demorado migrá-las de um projeto para outro.
 * Os softwares como o e o  não têm acesso a essas personalizações locais. Por exemplo, infocaixas ("infoboxes") são uma característica notável de várias wikis, mas são implementadas separadamente em cada. Dessa forma, o editor visual não pode ter um botão de "insira infobox", somente um botão de "  ". Cabe então ao editor saber o nome da predefinição e digitá-la.
 * Wikis com comunidades menores estão em desvantagem por que não tem tantos indivíduos com expertise para desenvolver predefinições e gadgets, e portar entre wikis é complicado. Novas wikis, particularmente, começam com instalações bem cruas do MediaWiki e suas extensões, enquanto projetos mais antigos tem uma gama de funcionalidades possiblitadas por predefinições e módulos.
 * As incompatibilidades entre o software implantado e as personalizações locais causam bugs difíceis de prever e detectar. Corrigi-los deve ser feito em cada site wiki separadamente. Isso pode até levar à rejeição de alguns funções pela comunidade, desperdício de recursos de desenvolvimento e atritos entre os desenvolvedores de software e os editores. Tudo isso poderia ser evitado.
 * As diferenças entre as personalizações locais tornam os artigos mais difíceis de traduzir. Resolver esse problema aumentará drasticamente a velocidade com que o conteúdo é traduzido e disponibilizado para partes maiores da humanidade.

Apesar de serem muito grandes, esses problemas quase sempre passam despercebidos. O software dos diferentes grupos é geralmente misturado perfeitamente à interface do usuário do site. As pessoas que editam principalmente em um idioma ou projeto podem não perceber que uma função está disponível apenas nesse projeto e pensar que está disponível em todos os lugares. Mesmo designers e desenvolvedores de software experientes costumam cometer esse erro.

A solução proposta:


 * 1) Permitir tornar alguns módulos e predefinições globais, de forma semelhante às imagens em Commons, páginas JS e CSS pessoais compartilhadas por todas as wikis, páginas globais do usuário, etc. (Gadgets também devem ser globais, mas isso já é possível praticamente, usando hacks como os usados pelo HotCat. Não é perfeito, mas é muito menos problemático do que a questão das predefinições. Os gadgets, portanto, não estão no escopo desta proposta.)
 * 2) Each editors community will keep its independence to maintain local templates and to make local changes to global templates’ functionality and the information they present to readers.
 * 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 in all wikis 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.

If this sounds interesting, and you want to know more, please read the full detailed.

For discussion about this proposal, see the page and the talk page of the full proposal.