Küresel şablonlar/Önerilen şartname, kısa sürüm
Wikimedia projelerinde bir sorun var. Üzerlerindeki yazılım, iki kaynaktan gelen bir kod karışımıdır:
- Dağıtılmış yazılım: Gerrit , translatewiki ve ilgili araçlarla merkezi olarak geliştirilen, dağıtılan ve uluslararasılaştırılan MediaWiki çekirdeği ve uzantıları.
- Yerel özelleştirmeler: Her wiki sitesinde yerel olarak geliştirilen geniş bir viki araçları koleksiyonu: şablonlar , Lua modülleri ve araçlar .
Sitelerin editörleri ve okuyucuları için, farklı teknolojiler bir araya gelir ve tek bir ürün olarak görünür, ancak farklı yazılım geliştirme süreci de bazı zorluklar doğurur:
- Yerel özelleştirmeler çoğu dilde yararlı olabilir, ancak bunları viki ve diller arasında taşımak son derece zor ve zaman alıcıdır.
- Görsel Düzenleyici ve Content Translation gibi yazılım özellikleri bu tür yerel özelleştirmelerden haberdar olamaz. Örneğin, bilgi kutuları birçok vikinin dikkate değer bir özelliğidir, ancak her birinde ayrı ayrı uygulanır, bu nedenle Görsel Düzenleyici'de bir "Bilgi kutusu ekle" düğmesi olamaz, yalnızca bir "Ekle → Şablon" düğmesi vardır ve her düzenleyicinin şablonun adını yazın.
- Daha küçük topluluklara sahip vikiler dezavantajlıdır, çünkü şablon ve gadget geliştirme konusunda uzmanlığa sahip değildirler ve bunları kolayca taşımanın bir yolu yoktur. Özellikle yeni vikiler, MediaWiki ve uzantıların çok çıplak kemikli bir kurulumuyla başlarken, daha eski ve daha büyük sitelerin işlevselliğinin çoğu, hızlı bir şekilde yüklenemeyen ve manüel olarak içe aktarılması gereken şablonlar ve modüller tarafından sağlanır.
- Konuşlandırılan yazılım ile yerel özelleştirmeler arasındaki uyumsuzluklar tahmin edilmesi ve algılanması zor hatalara neden olur. Bunların düzeltilmesi her viki sitesinde ayrı ayrı yapılmalıdır. Bu, topluluk tarafından bazı özelliklerin reddedilmesine, geliştirme kaynaklarının israfına ve yazılım geliştiricileri ile editörler arasındaki sürtünmeye bile yol açabilir. Bütün bunlar önlenebilir.
- Yerel özelleştirmeler arasındaki farklar maddelerin çevrilmesini zorlaştırır. Bu sorunun çözülmesi, içeriğin çevrilme ve insanlığın daha büyük bölümlerine erişilebilir hale getirilme hızını önemli ölçüde artıracaktır.
Çok büyük olmasına rağmen, bu sorunlar çoğu zaman göz ardı edilir. Farklı gruplardan gelen yazılımlar genellikle sitenin kullanıcı arayüzüne sorunsuz bir şekilde karıştırılır. Öncelikle tek bir dilde veya projede düzenleme yapan kişiler, belirli bir özelliğin yalnızca o projede mevcut olduğunu fark edemeyebilir ve her yerde kullanılabilir olduğunu düşünebilir. Deneyimli yazılım tasarımcıları ve geliştiricileri bile bu hatayı yapar.
Önerilen çözüm:
- Bazı şablonların ve modüllerin küresel olmasına izin ver, Commons, küresel kişisel JS ve CSS sayfalarındaki, küresel kullanıcı sayfalarındaki vb. görüntülere benzer şekilde (Küçük araçlar da küresel olmalıdır, ancak bu pratikte HotCat tarafından kullanılanlar gibi hackleri kullanarak zaten mümkündür. Mükemmel değil, ama çok fazla şablonlarla ilgili sorundan daha az sorunlu. Küçük araçları bu nedenle bu teklifin kapsamında değildir.)
- Her editör topluluğu, yerel şablonları korumak ve küresel şablonların işlevselliğinde ve okuyuculara sundukları bilgilerde yerel değişiklikler yapmak için bağımsızlığını koruyacaktır.
- Genel şablonların kullanıcı arabirimi dizeleri, uzantılara benzer şekilde, translatewiki benzeri bir arabirimde çevrilebilir olmalıdır.
- Şablonlar ve modüller viki sayfaları olarak düzenlenebilir ve yayınlandıktan sonra tüm vikilerde hemen kullanılabilir.
- Şablonların ve modüllerin bakımı, paylaşımı, korunması ve silinmesine ilişkin politikalar editörler topluluğu tarafından geliştirilecektir.
Küresel şablonlar ve modüller için altyapı oluşturmak zordur, ancak çekirdek platform geliştiricileri birçok kez mümkün olduğunu ve çoğunlukla ürün yönetimi ve özveri gerektirdiğini söylemişlerdir. Bunun yapılması gerekir, çünkü global şablonların eksikliği tüm paydaşlar için en büyük kullanılabilirlik zorluğudur: geliştiriciler, yeni editörler, kıdemli editörler ve çevirmenler, tüm dillerde ve tüm viki projelerinde.
Bu kulağa ilginç geliyorsa ve daha fazla bilgi edinmek istiyorsanız, lütfen ayrıntılı Küresel şablon şartname sayfasını okuyun.
Bu teklifle ilgili tartışma için Küresel şablonlar/Tartışma ve tüm teklifin tartışma sayfası sayfasına bakın. {{🌎🌍🌏}}