Predefinições globais/especificação proposta, versão curta
Os projetos Wikimedia têm um problema. O software é uma mistura de códigos com duas origens diferentes:
- Software implementado: O software MediaWiki core e suas extensões, desenvolvidas, implementadas e centralmente internacionalizadas via Gerrit , translatewiki e ferramentas relacionadas.
- Personalizações locais: Grande coleção de ferramentas on-wiki desenvolvidas localmente em cada wiki: predefinições (templates), módulos Lua e gadgets .
Para editores e leitores da plataforma, as diferentes tecnologias são entrelaçadas e aparecem como um produto. Contudo, os diferentes processos de desenvolvimento do software apresentam alguns desafios:
- As personalizações locais podem ser úteis em diversas línguas, mas é muito difícil e demorado migrá-las de um projeto para outro.
- Aplicativos como o Editor visual e o Tradutor de conteúdos 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 "Inserir → Predefinição". Cabe então ao editor saber o nome da predefinição e digitá-lo.
- Wikis com comunidades pequenas estão em desvantagem, porque não têm tantos editores com a experiência necessária para desenvolver predefinições e gadgets e migrar código entre wikis pode ser complicado. Novas wikis, em particular, começam com instalações muito básicas do MediaWiki e suas extensões, enquanto que projetos mais antigos têm uma gama de funcionalidades disponibilizadas por predefinições e módulos.
- As incompatibilidades entre o software implementado e as personalizações locais causam falhas difíceis de prever e detetar. Corrigi-los tem de ser feito em cada site wiki em separado. Isso pode, inclusive, levar à rejeição de algumas 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 a mais pessoas.
Apesar de muito significativos, esses problemas quase sempre passam despercebidos. O software dos diferentes grupos é geralmente misturado de forma perfeita à 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 desenhadores e desenvolvedores de software experientes costumam cometer esse erro.
Solução proposta:
- Permitir tornar globais alguns módulos e predefinições, 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 no caso das predefinições. Por esse motivo, os gadgets não estão no escopo desta proposta.)
- Cada comunidade de editores permanecerá independente para manter predefinições e alterações locais na funcionalidade das predefinições globais, assim como nas informações que apresentam aos leitores.
- Os textos usados na interface do usuário das predefinições globais devem ser traduzíveis em uma interface do tipo translatewiki, semelhante às extensões.
- Os módulos e predefinições ainda serão editáveis como páginas wiki e imediatamente utilizáveis em todas as wikis após a publicação.
- Políticas de manutenção, compartilhamento, proteção e exclusão dos módulos e predefinições serão desenvolvidas pela comunidade de editores.
Construir a infraestrutura para módulos e predefinições globais é difícil. No entanto, os principais desenvolvedores da plataforma afirmaram várias vezes que é possível e, principalmente, requer gestão de produto e dedicação. Isso tem que ser feito, porque a falta de predefinições globais é o maior desafio de usabilidade para todos os interessados: desenvolvedores, novos editores, editores veteranos e tradutores, em todos os idiomas e todos os projetos wiki.
Se isto parece interessante e deseja saber mais, leia a proposta detalhada e completa de Predefinições globais .
Para discussão da proposta, veja a página Global templates/Discuss e a página de discussão da proposta completa. {{🌎🌍🌏}}