<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Guillaume Paumier&#039;s weblog &#187; MediaWiki</title>
	<atom:link href="http://www.gpaumier.org/blog/tag/mediawiki/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.gpaumier.org/blog</link>
	<description>open knowledge, design &#38; technology</description>
	<lastBuildDate>Thu, 26 Jan 2012 15:14:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>State of the language selection in MediaWiki and Wikipedia</title>
		<link>http://www.gpaumier.org/blog/633_state-of-language-selection-mediawiki-wikipedia/</link>
		<comments>http://www.gpaumier.org/blog/633_state-of-language-selection-mediawiki-wikipedia/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 23:15:10 +0000</pubDate>
		<dc:creator>Guillaume Paumier</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Wikimedia Technology]]></category>
		<category><![CDATA[language]]></category>
		<category><![CDATA[language selection]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[multilingualism]]></category>

		<guid isPermaLink="false">http://www.gpaumier.org/blog/?p=633</guid>
		<description><![CDATA[This article is meant as an introduction to my next article, about language selectors, which is the one I originally intended to write. As it was growing longer and longer, I decided to split this review into a dedicated post. There are two main use cases for language selection across Wikimedia projects: the language of the content, and the language of the interface. In this article, I am reviewing a few examples of tools related to language selection on MediaWiki websites, and particularly on Wikimedia wikis. <a href="http://www.gpaumier.org/blog/633_state-of-language-selection-mediawiki-wikipedia/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><em>This article is meant as an introduction to <a href="http://www.gpaumier.org/blog/628_universal-language-picker/">my next article, about language selectors</a>, which is the one I originally intended to write. As it was growing longer and longer, I decided to split this review into a dedicated post.</em></p>
<p>There are two main use cases for language selection across Wikimedia projects: the language of the content, and the language of the interface. In this article, I am reviewing a few examples of tools related to language selection on <a title="MediaWiki" href="http://www.mediawiki.org">MediaWiki</a> websites, and particularly on <a title="Wikimedia projects" href="http://wikimediafoundation.org/wiki/Our_projects">Wikimedia</a> wikis.</p>
<h2>Interface language selection</h2>
<h3>Language setting in user preferences</h3>
<p>On each MediaWiki website, users who create an account can select the language of the software interface. That means, for example, that you can read Wikipedia articles in Italian, but with the interface in French. This feature is particularly useful for Wikipedia participants who are familiar with the interface in their mother tongue.</p>
<div id="attachment_624" class="wp-caption aligncenter" style="width: 490px"><img class="size-full wp-image-624" title="language-selector-prefs" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/language-selector-prefs.png" alt="language selector prefs State of the language selection in MediaWiki and Wikipedia" width="480" height="234" /><p class="wp-caption-text">Drop-down menu from MediaWiki&#39;s user preferences to select the language of the interface</p></div>
<p>The default language for MediaWiki messages is English. The localization of MediaWiki has been made possible with the <a title="translatewiki" href="http://www.translatewiki.net">translatewiki.net</a> platform (former &#8220;betawiki&#8221;) and the hundreds of volunteer translators who try to keep up with the ever changing MediaWiki messages. And <a title="Localization statistics for MediaWiki" href="http://www.mediawiki.org/wiki/Localisation_statistics">they&#8217;re doing a terrific job</a>.</p>
<p>This language setting, though, only works for registered users. If you&#8217;re only a reader and you don&#8217;t have a user account, you&#8217;re stuck with the default language specified for the website. Usually, the default interface language is the same as the content language, and most readers are content with that.</p>
<p>The problem comes with multilingual wikis, i.e. wikis that contain content in several languages. For example, <a title="Wikimedia Commons" href="http://commons.wikimedia.org">Wikimedia Commons</a>, <a title="Wikimedia meta-wiki" href="http://meta.wikimedia.org">Wikimedia meta-wiki</a> and the <a title="Wikimedia Foundation website" href="http://wikimediafoundation.org">Wikimedia Foundation website</a> are multilingual wikis; they are central places for Wikimedians from all projects in all languages.  Only one interface language can be used as the default, and it&#8217;s generally English. If you can&#8217;t read English and you&#8217;re looking for media files on Wikimedia Commons, you&#8217;re going to have a hard time navigating the site.</p>
<h3>The <em>uselang</em> parameter</h3>
<p>A workaround is to use the <strong><em><a title="Parameters to index.php on mediawiki.org" href="http://www.mediawiki.org/wiki/Manual:Parameters_to_index.php#User_preference_overriding">uselang</a></em></strong> parameter to specifically ask MediaWiki to render the interface in a given language<sup class='footnote'><a href='#fn-633-1' id='fnref-633-1' onclick='return fdfootnote_show(633)'>1</a></sup>. An example of its use is the &#8220;Commons&#8221; template, used on some Wikimedia projects to provide a visible link to the Commons page or category about a specific topic. If you&#8217;re reading the <a title="Katalonien article on the German-language Wikipedia" href="http://de.wikipedia.org/wiki/Katalonien">Catalonia article on the German-language Wikipedia</a>, and scroll to the bottom, you&#8217;ll find a link to Commons directing you to the <a title="Catalonia category on Commons, using uselang" href="http://commons.wikimedia.org/wiki/Category:Catalonia?uselang=de">Catalonia category on Commons</a>, but with the interface in German.</p>
<p>This method has obvious drawbacks: first, you need to actually know it exists, and how to use it. You also need to know the <acronym title="International Organization for Standardization">ISO</acronym> 639 code of the language, but if you know the <em>uselang</em> parameter exists, I&#8217;ll assume you know that language code as well.</p>
<p>More importantly, the <em>uselang</em> parameter isn&#8217;t persistent, i.e. it will go away as soon as you leave the page you were viewing. There&#8217;s an open bug to preserve the <em>uselang</em> parameter during sessions (<a title="bug 4125 on Wikimedia's bug tracker" href="https://bugzilla.wikimedia.org/show_bug.cgi?id=4125">bug 4125</a>). But for now, if you land on a page rendered in a specific language using <em>uselang</em>, it&#8217;ll revert to the default language as soon as you move away from that page.</p>
<h3><em>LanguageSelector</em> extension for MediaWiki</h3>
<p>Going a bit further, Daniel Kinzler developed an extension for MediaWiki called <strong><em><a title="LanguageSelector extension for MediaWiki" href="http://www.mediawiki.org/wiki/Extension:LanguageSelector">LanguageSelector</a></em></strong>. The first feature it provides is to automatically detect the browser language<sup class='footnote'><a href='#fn-633-2' id='fnref-633-2' onclick='return fdfootnote_show(633)'>2</a></sup> of unregistered readers and defaults the interface to their language.</p>
<p>Such an automatic system would be desirable for some Wikimedia websites, especially Commons, but it requires scalability improvements: it would fragment the cache, on which we rely heavily for performance. Nonetheless, it&#8217;s an issue that&#8217;ll have to be addressed in any case.</p>
<p>The <em>LanguageSelector</em> extension also provides a drop-down selector that can be included in pages. This setting seems to follow the user at least during the session. You can see an example of it used on the home page of <a title="translatewiki" href="http://translatewiki.net">translatewiki.net</a>.</p>
<div id="attachment_622" class="wp-caption aligncenter" style="width: 379px"><img class="size-full wp-image-622" title="langselect-mwext" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/langselect-mwext.png" alt="langselect mwext State of the language selection in MediaWiki and Wikipedia" width="369" height="244" /><p class="wp-caption-text">Drop-down language selector from the LanguageSelector MediaWiki extension</p></div>
<h2>Content language selection on monolingual wikis</h2>
<h3>Wikipedia.org portal</h3>
<p>Wikipedia and most other Wikimedia websites are available in many different languages — over 250 at the time of writing. And that&#8217;s just existing Wikipedia editions; several thousand languages are spoken across the world population.</p>
<p>On monolingual wikis (i.e. wikis whose content is in only one language), there are two occasions where you may want to select a language: the first is when you choose what site you want to visit, e.g. Wikipedia in English <em>or</em> Wikipedia in Spanish. The second occasion is when you want to navigate from one language edition to another, e.g. from Wikipedia in English <em>to</em> Wikipedia in Spanish.</p>
<p>On Wikipedia, the first choice happens on the multilingual <a title="wikipedia.org portal" href="http://www.wikipedia.org">wikipedia.org</a> portal, if you ever happen to go there.</p>
<div id="attachment_627" class="wp-caption aligncenter" style="width: 600px"><a href="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/Wikipedia.org-portal.png"><img class="size-medium wp-image-627" title="Wikipedia.org portal" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/Wikipedia.org-portal-590x434.png" alt="Wikipedia.org portal 590x434 State of the language selection in MediaWiki and Wikipedia" width="590" height="434" /></a><p class="wp-caption-text">Screenshot of the Wikipedia.org portal</p></div>
<p>On this (<a title="Project portals page on meta-wiki" href="http://meta.wikimedia.org/wiki/Project_portals">manually curated</a>) portal, each language is displayed in the language&#8217;s language<sup class='footnote'><a href='#fn-633-3' id='fnref-633-3' onclick='return fdfootnote_show(633)'>3</a></sup>: English is displayed as &#8220;English&#8221;, German as &#8220;Deutsch&#8221;, French as &#8220;Français&#8221;, etc. The sorting order is based on the size of each language edition, measured in number of articles. In a word, the bigger the Wikipedia, the more prominent the place. &#8220;Small&#8221; Wikipedia editions are at the very end of the list.</p>
<p>In most cases, though, you don&#8217;t have to make this choice; your search engine conveniently directs you to the language edition of Wikipedia in your language. Once you are on a specific language edition of Wikipedia, though, you can still navigate to related articles in other languages, using interlanguage links.</p>
<h3>Interlanguage links</h3>
<p><strong>Interlanguage links</strong> are a specific subset of <a title="Interwiki links on Wikipedia" href="http://en.wikipedia.org/wiki/Interwiki_links">interwiki links</a>; they allow users to navigate between different language versions of the same page.</p>
<p>Links and their order are curated by humans or &#8220;bots&#8221;, i.e. external programs that interact with the software as humans would, but are not part of the MediaWiki software</p>
<div id="attachment_620" class="wp-caption aligncenter" style="width: 421px"><a href="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/interlanguage-links-apple.png"><img class="size-full wp-image-620" title="interlanguage links apple" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/interlanguage-links-apple.png" alt="interlanguage links apple State of the language selection in MediaWiki and Wikipedia" width="411" height="509" /></a><p class="wp-caption-text">List of interlanguage links of the Apple article on Wikipedia in English, and the wikitext that generates them</p></div>
<p>The sorting order differs from a Wikipedia to another; they have <a title="Interwiki sorting order on meta-wiki" href="http://meta.wikimedia.org/wiki/Interwiki_sorting_order">different standards</a>. That means interlanguage links will be sorted in a different order, whether you&#8217;re reading an article on the Polish Wikipedia, the Finnish Wikipedia, or the Serbian Wikipedia. Convenient, eh?</p>
<p>The default behavior for interlanguage links is to display all the available links. For the <a title="list of articles every Wikipedia should have, on meta-wiki" href="http://meta.wikimedia.org/wiki/List_of_articles_every_Wikipedia_should_have">most common topics</a>, the list can grow quite long. The main page, for example, is the page all language editions are sure to have in common. The interlanguage list for the main page is usually truncated by Javascript in order to avoid having 250 links there.</p>
<div id="attachment_621" class="wp-caption aligncenter" style="width: 157px"><a href="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/interlanguage-links-main-page-enwp.png"><img class="size-full wp-image-621" title="interlanguage links main page enwp" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/interlanguage-links-main-page-enwp.png" alt="interlanguage links main page enwp State of the language selection in MediaWiki and Wikipedia" width="147" height="850" /></a><p class="wp-caption-text">List of interlanguage links displayed on the main page of Wikipedia in English</p></div>
<h2>Content language selection on multilingual wikis</h2>
<h3>Multilingual wikis</h3>
<p>Wikipedia editions exist in only one language at a time. It&#8217;s the same for most of the Wikimedia websites, like Wikisource or Wikibooks. Some projects, though, are meant to be a central place for all Wikimedians.</p>
<p>For example, <a title="Wikimedia Commons" href="http://commons.wikimedia.org">Wikimedia Commons </a>(&#8220;Commons&#8221;) is the central media repository for all Wikimedia projects. Rather than duplicating media files on all of them, they&#8217;re centralized into one media library.</p>
<p><a title="Wikimedia meta-wiki" href="http://meta.wikimedia.org">Wikimedia meta-wiki</a> (&#8220;meta&#8221;) is another multilingual wiki. Its purpose is to serve as a central coordination platform for the Wikimedia community.</p>
<p>Both these wikis are &#8220;multilingual&#8221;: they host content in a variety of languages. But MediaWiki wasn&#8217;t originally designed for such a use; it was designed to host content in only one language. The community has had to work around this limitation by implementing various tricks &amp; hacks.</p>
<h3>JavaScript language select tool</h3>
<p>For a few years, meta has been experimenting with the <strong><em><a title="Language select on meta-wiki" href="http://meta.wikimedia.org/wiki/Meta:Language_select">Language select</a></em></strong> tool. Language select is a JavaScript hack<sup class='footnote'><a href='#fn-633-4' id='fnref-633-4' onclick='return fdfootnote_show(633)'>4</a></sup> that basically hides the text that isn&#8217;t in the language you&#8217;ve selected.</p>
<p>There too, you have to know the <acronym title="International Organization for Standardization">ISO</acronym> language code, and the user interface isn&#8217;t very intuitive, but it was a start. The newer JavaScript method detects the language of your browser automatically.</p>
<div id="attachment_623" class="wp-caption aligncenter" style="width: 414px"><img class="size-full wp-image-623" title="language-select-meta" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/05/language-select-meta.png" alt="language select meta State of the language selection in MediaWiki and Wikipedia" width="404" height="78" /><p class="wp-caption-text">Screenshot of the language select JavaScript tool on meta-wiki</p></div>
<p>A similar system is also available on Commons, through the <em><a title="Multilingual description template on Commons" href="http://commons.wikimedia.org/wiki/Template:Multilingual_description">Multilingual description</a></em> template. As far as I know, though, this template is very rarely used; instead, individual language templates are the standard way of labeling (and sometimes, choosing) content in different languages.</p>
<h3>Language templates</h3>
<p><strong><a title="Language templates on Commons" href="http://commons.wikimedia.org/wiki/Commons:Language_templates">Language templates</a></strong> are used to specify the language of a specific part of a content&#8217;s page, for example descriptions of a picture on Commons. They also allow registered users to hide content they don&#8217;t understand, by specifying a &#8220;blacklist&#8221; of languages they don&#8217;t want to display. It&#8217;s particularly useful for <a title="Featured pictures on Commons" href="http://commons.wikimedia.org/wiki/Commons:Featured_pictures">Featured pictures</a>, or <a title="Picture of the day on Commons" href="http://commons.wikimedia.org/wiki/Commons:Picture_of_the_day">Pictures of the Day</a>, that contain many translations for the caption.</p>
<div id="attachment_672" class="wp-caption aligncenter" style="width: 600px"><a href="http://www.gpaumier.org/blog/wp-content/uploads/2010/06/language-templates.png"><img class="size-medium wp-image-672" title="language-templates" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/06/language-templates-590x103.png" alt="language templates 590x103 State of the language selection in MediaWiki and Wikipedia" width="590" height="103" /></a><p class="wp-caption-text">Description of a Picture of the Day on Commons in various languages</p></div>
<h3>Langswitch &amp; Autotranslation</h3>
<p><em>Langswitch</em> and <em>Autotranslate</em> are two similar methods used on Commons to show a given text depending on the user&#8217;s language (as specified in their preferences). They&#8217;re more elaborate systems than <em>Language select</em> and <em>Language templates</em>, but they essentially try to address the same issue.</p>
<p><strong><em><a title="Langswitch template on Commons" href="http://commons.wikimedia.org/wiki/Template:LangSwitch">Langswitch</a></em></strong> is more lightweight and used for <a title="Templates using Langswitch" href="http://commons.wikimedia.org/wiki/Category:Internationalization_templates_using_LangSwitch">simple templates</a>: all translations are contained in one page. For example, the &#8220;<a title="Wikitext of the France template on Commons" href="http://commons.wikimedia.org/w/index.php?title=Template:France&amp;action=edit">France</a>&#8221; template on Commons uses <em>Langswitch</em>; it includes the translation of the word &#8220;France&#8221; in all available languages, and provides a link to the appropriate article in the associated language edition of Wikipedia. If the user&#8217;s language is German, they will only see &#8220;<a title="Frankreich on the German Wikipedia" href="http://de.wikipedia.org/wiki/Frankreich">Frankreich</a>&#8220;.</p>
<p><strong><em><a title="Autotranslate template on Commons" href="http://commons.wikimedia.org/wiki/Template:Autotranslate">Autotranslate</a></em></strong> is used for heavier templates that contain more text; in this case, it is easier to segregate the translations into dedicated subpages. This is how license templates have worked (although they&#8217;re now being replaced, see below).</p>
<p>A template using <em>Autotranslate</em> (called &#8220;autotranslated template&#8221;) typically consists of a subpage defining the template&#8217;s layout, and a subpage for each translation of the template&#8217;s messages. The &#8220;<a title="PD-self template on Commons" href="http://commons.wikimedia.org/wiki/Template:PD-self">PD-self</a>&#8221; template is autotranslated, for example; it has a layout <a title="PD-self template layout" href="http://commons.wikimedia.org/wiki/Template:PD-self/layout">subpage</a>, and subpages for all available languages, such as <a title="PD-self template in English" href="http://commons.wikimedia.org/wiki/Template:PD-self/en">English</a>, <a title="PD-self template in Japanese" href="http://commons.wikimedia.org/wiki/Template:PD-self/ja">Japanese</a> and <a title="PD-self template in Russian" href="http://commons.wikimedia.org/wiki/Template:PD-self/ru">Russian</a>.</p>
<h3>The {{int:}} MediaWiki &#8220;magic word&#8221;</h3>
<p><strong>{{int:}}</strong> is a <a title="int MediaWiki magiw word" href="http://www.mediawiki.org/wiki/Help:Magic_words#Miscellaneous">MediaWiki magic word</a> used to show a MediaWiki interface message in the user&#8217;s language (as set in their preferences). Its main limitation is that it only works for MediaWiki interface messages. Yet, I am placing it into the &#8220;Content language selection&#8221; section, because it has recently been used to replace <em>Langswitch</em> and <em>Autotranslation</em>.</p>
<p>Using {{int:}} to display something in the user&#8217;s language is a more robust system; it&#8217;s also the reason for which license templates were converted to system messages (and bundled into the <a title="WikimediaMessages MediaWiki extension" href="http://www.mediawiki.org/wiki/Extension:WikimediaMessages">WikimediaLicenseTexts</a> extension).</p>
<p>Basically, in the case of Commons, many templates requiring translation rarely change (e.g., the <a title="Copyright tags on commons" href="http://commons.wikimedia.org/wiki/Commons:Copyright_tags">licensing templates</a>). As templates, they belong to the content, not the interface. But licenses are managed with templates <em>because</em> the software doesn&#8217;t provide a built-in interface for them. Ideally, licenses would be managed by MediaWiki itself (or an extension). But we&#8217;re not there yet.</p>
<p>So, what&#8217;s currently happening is, these licensing templates are being replaced by alternatives that use custom MediaWiki messages. The content that was once stored in the templates is being moved to dedicated interface messages. That way, they can be automatically displayed in the user&#8217;s language using {{int:}}. And they can also be translated by the translatewiki.net community.</p>
<p>This system doesn&#8217;t solve the issue for unregistered users, though.</p>
<h2>Conclusion</h2>
<p>There is a multitude of cases where a user may want or come to select a language while navigating a Wikimedia site. They may want to choose in what language the website interface will be displayed, or select the language of the content.</p>
<p>For multilingual Wikimedia wikis like Commons and meta, language selection is a regular issue, because they intrinsically target a multilingual audience. Some ad-hoc systems have been developed over time to try and work around the technical limitations of MediaWiki, but they can&#8217;t replace a built-in language management system.</p>
<p>Current language selection solutions also don&#8217;t cater for the needs or unregistered readers, who are the majority of the people visiting Wikimedia projects. That issue will have to be addressed at some point if we want to reach a truly global audience.</p>
<p>Another challenge with language selection is the interface you provide the user with to make their choice, i.e. the actual &#8220;selector&#8221;. It is not obvious what design is the best and allows the user to select the language they want in the most efficient manner. This will be the topic of my next article.</p>
<h2>Notes</h2>
<div class='footnotes' id='footnotes-633'>
<div class='footnotedivider'></div>
<ol>
<li id='fn-633-1'>As a sidenote, the <em>uselang</em> method has also been <a title="UploadForm.js documentation on Wikimedia Commons" href="http://commons.wikimedia.org/wiki/MediaWiki:UploadForm.js/Documentation">diverted from its original purpose</a> to hack a Javascript-enhanced upload form at Wikimedia Commons. <span class='footnotereverse'><a href='#fnref-633-1'>&#8617;</a></span></li>
<li id='fn-633-2'>For techies: the Accept-Language header. <span class='footnotereverse'><a href='#fnref-633-2'>&#8617;</a></span></li>
<li id='fn-633-3'>This is getting confusing, I know. I&#8217;m doing my best, believe me. <span class='footnotereverse'><a href='#fnref-633-3'>&#8617;</a></span></li>
<li id='fn-633-4'>See <a title="Common.js on meta" href="http://meta.wikimedia.org/wiki/MediaWiki:Common.js">http://meta.wikimedia.org/wiki/MediaWiki:Common.js</a> , section &#8220;Implements language selection for multilingual elements&#8221;. <span class='footnotereverse'><a href='#fnref-633-4'>&#8617;</a></span></li>
</ol>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.gpaumier.org/blog/633_state-of-language-selection-mediawiki-wikipedia/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Scaling up Software development for Wikimedia websites (Part II: Tools)</title>
		<link>http://www.gpaumier.org/blog/520_scaling-up-software-development-for-wikimedia-websites-tools/</link>
		<comments>http://www.gpaumier.org/blog/520_scaling-up-software-development-for-wikimedia-websites-tools/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 17:05:50 +0000</pubDate>
		<dc:creator>Guillaume Paumier</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Wikimedia Technology]]></category>
		<category><![CDATA[Bug tracker]]></category>
		<category><![CDATA[bugzilla]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[Product management]]></category>
		<category><![CDATA[Project management]]></category>
		<category><![CDATA[Redmine]]></category>
		<category><![CDATA[Requirements management]]></category>

		<guid isPermaLink="false">http://www.gpaumier.org/blog/?p=520</guid>
		<description><![CDATA[I have previously explained why the current setup of the Wikimedia bug tracker is not ideal. I have also advocated for a more managed &#038; scientific software development strategy. This article aims to discuss an appropriate tool to support this strategy, and at the same time fix what is broken. <a href="http://www.gpaumier.org/blog/520_scaling-up-software-development-for-wikimedia-websites-tools/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><em>During the past few weeks, I have been thinking about a more structured way to manage software and product development within the Wikimedia community. The result is a list of ideas and recommendations I have compiled and submitted to the relevant staff members at the Wikimedia Foundation. I am also publishing them here in order to allow for a wider feedback. This article is the fourth and last of a series dedicated to this topic.</em></p>
<p><em><strong>Disclaimer:</strong> The content of this article reflects only my personal opinion and is not an official plan or communication of the Wikimedia Foundation.</em></p>
<p>I have previously explained why <a href="http://www.gpaumier.org/blog/494_wikimedia-mediawiki-bugs-issues-and-requests/">the current setup of the Wikimedia bug tracker is not ideal</a>. I have also advocated for a <a href="http://www.gpaumier.org/blog/519_scaling-up-software-development-for-wikimedia-websites-human-resources/">more managed &amp; scientific software development strategy</a>. This article aims to discuss an appropriate tool to support this strategy, and at the same time fix what is broken.</p>
<div id="attachment_819" class="wp-caption aligncenter" style="width: 600px"><a href="http://commons.wikimedia.org/wiki/File:Tooled_Flatty_by_flattop341.jpg"><img class="size-medium wp-image-819" title="Tooled_Flatty_by_flattop_640" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/03/Tooled_Flatty_by_flattop_640-590x442.jpg" alt="Tooled Flatty by flattop 640 590x442 Scaling up Software development for Wikimedia websites (Part II: Tools)" width="590" height="442" /></a><p class="wp-caption-text">“Give us the tools, and we will finish the job.” (CC-by by fattop341)</p></div>
<h2>Software lifecycle &amp; Project management</h2>
<p>Right now, there is little project management of the technical activities at the Foundation. When someone does manage projects, they often use personal desktop applications that don&#8217;t allow collaborative work. There isn&#8217;t any real development roadmap or product requirements. If we want to be serious about structuring our activities, <strong>we need a project management strategy &amp; the appropriate associated tools</strong> that allow us to manage things such as project scope, schedule, budget &amp; financial resources, quality assurance, human resources, communications, risks &amp; opportunities, procurement and coordination.</p>
<p>I asked around to see what the needs of the various members of the team were. Naoko Komura, who has been project-managing the Wikipedia Usability Initiative, and is now overseeing all <acronym title="User experience">UX</acronym> programs, is particularly interested in the integration of the Project management platform with calendars &amp; issue tracking. Operations staff members also said they were interested in Project management features such as time and task tracking.</p>
<p>I think it is way past time to have a more organized development process &amp; software lifecycle management. The recent hiring of a new Chief Technical Officer is a step towards a more structured organization of technological activities. Of course, changing our bug tracker alone won&#8217;t automatically structure our activities, but it is a step in this direction.</p>
<p><strong>Recommendation: Use tools that allow a better management of, and integration between, the different stages in our product(s) lifecycle.</strong></p>
<h2>Requirements</h2>
<p>A few months ago, I asked Priyanka Dhanda (our new Code maintenance engineer) to explore open-source collaborative project management platforms that could be easily integrated with bugzilla (or that included a bug tracking system of their own). The Wikimedia tech community was <a title="Tracker/PM discussion call" href="http://thread.gmane.org/gmane.science.linguistics.wikipedia.technical/46544">invited</a> to <a title="Tracker/PM_tool requirements" href="http://www.mediawiki.org/wiki/Tracker/PM_tool">list requirements of such a tool</a>, as well as possible solutions.</p>
<p>From the feedback we received, we can summarize what the required features for an issue tracker are: integration with our Version control system, being FLOSS, multiple projects support and ability to separate between &#8220;tasks&#8221; and other items such as bugs and feature requests. Additional, &#8220;nice to have&#8221; features include: ability to import data from existing Bugzilla instance and fined-grained e-mail subscription options</p>
<p>Similarly, the required features for a Project management tool are: being web-based to facilitate collaboration, multiple projects support, calendar/scheduling and roadmap, assignments &amp; resource management and time tracking per task/user/project. Additional, &#8220;nice to have&#8221; features include: Gantt charts, public/private projects, fine-grained access to projects by user, basic accounting &amp; budget management and requirements management.</p>
<h2>Redmine</h2>
<p>I haven&#8217;t found many Project management softwares that can be easily integrated with Bugzilla. However, I have discovered alternatives to Bugzilla that include project management features like those we&#8217;re looking for. <a title="Redmine" href="http://www.redmine.org/projects/redmine">Redmine</a> seems to be a good project management software and provides an advanced issue tracking system as well. It supports multiple projects, public/private projects, calendars &amp; Gantt chart, <a title="List of features of Redmine" href="http://www.redmine.org/wiki/redmine/Features">and a lot of other neat stuff</a>. It also offers the ability to distinguish between features/improvements and bugs; this would be particularly useful to prioritize development efforts. We are now considering using Redmine as project management software and taking this opportunity to move our Bugzilla setup to Redmine. Initial research shows that a lot of people seem to praise Redmine compared to Bugzilla; there are migration scripts to import an existing Bugzilla setup into a new Redmine one.</p>
<p><a title="who is using Redmine" href="http://www.redmine.org/wiki/redmine/WeAreUsingRedmine">Major projects</a> such as <a title="forge.typo3.org" href="http://forge.typo3.org">TYPO3</a> are using Redmine. The software seems to benefit from a dynamic community of developers and it is also possible to sponsor custom development. There are many plug-ins to extend the default core features; popular plug-ins are usually included into the core software at some point.</p>
<p>Priyanka set up a local test instance of Redmine to let us play with it a bit; a <a title="test Redmine platform" href="http://project2.wikimedia.org:3000/">public test platform</a> was later made available for wider testing and the Wikimedia Tech community was invited to pitch in. So far, I personally like it and it fits my needs perfectly. Wider testing is now necessary to see if it fits the needs of the tech community.</p>
<p>Because the time I can devote to this change is limited, I haven&#8217;t reviewed other alternatives than Redmine, and don&#8217;t plan to unless another major alternative is suggested.</p>
<p><strong>Recommendation: Move from Bugzilla to Redmine after careful preparation, especially regarding the organization of the platform.</strong></p>
<h2>Read also in this series</h2>
<ul>
<li><a href="http://www.gpaumier.org/blog/494_wikimedia-mediawiki-bugs-issues-and-requests/">Wikimedia &amp; MediaWiki bugs, issues and requests</a></li>
<li><a href="http://www.gpaumier.org/blog/503_wikimedia-user-experience-programs/">Wikimedia User experience programs: a systematic approach</a></li>
<li><a href="http://www.gpaumier.org/blog/519_scaling-up-software-development-for-wikimedia-websites-human-resources/">Scaling up Software development for Wikimedia websites (Part I: Human resources)</a></li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://www.gpaumier.org/blog/520_scaling-up-software-development-for-wikimedia-websites-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scaling up Software development for Wikimedia websites (Part I: Human resources)</title>
		<link>http://www.gpaumier.org/blog/519_scaling-up-software-development-for-wikimedia-websites-human-resources/</link>
		<comments>http://www.gpaumier.org/blog/519_scaling-up-software-development-for-wikimedia-websites-human-resources/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 19:57:44 +0000</pubDate>
		<dc:creator>Guillaume Paumier</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Wikimedia Technology]]></category>
		<category><![CDATA[Community management]]></category>
		<category><![CDATA[interaction design]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[Product management]]></category>
		<category><![CDATA[Software development]]></category>

		<guid isPermaLink="false">http://www.gpaumier.org/blog/?p=519</guid>
		<description><![CDATA[Our human resources are currently focusing on what happens after the code has been written: we review it, we try to ensure quality, we try to automate testing, we file bugs, etc. However, there is little preparation before the development is actually done. This has led to a developer-driven design, resulting in an interface based on the implementation model. We need a more systematic approach to User experience and development management if we want to scale up properly. <a href="http://www.gpaumier.org/blog/519_scaling-up-software-development-for-wikimedia-websites-human-resources/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><em>During the past few weeks, I have been thinking about a more structured way to manage software and product development within the Wikimedia community. The result is a list of ideas and recommendations I have compiled and submitted to the relevant staff members at the Wikimedia Foundation. I am also publishing them here in order to allow for a wider feedback. This article is the third of a series dedicated to this topic.</em></p>
<p><em><strong>Disclaimer:</strong> The content of this article reflects only my personal opinion and is not an official plan or communication of the Wikimedia Foundation.</em></p>
<p><em> </em></p>
<div id="attachment_822" class="wp-caption aligncenter" style="width: 600px"><em><em><a href="http://commons.wikimedia.org/wiki/File:Brighton_University_usability_lab_by_Danny_Hope.png"><img class="size-medium wp-image-822" title="Brighton_University_usability_lab_by_Danny_Hope640" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/03/Brighton_University_usability_lab_by_Danny_Hope640-590x394.jpg" alt="Brighton University usability lab by Danny Hope640 590x394 Scaling up Software development for Wikimedia websites (Part I: Human resources)" width="590" height="394" /></a></em></em><p class="wp-caption-text">User research is critical in order to understand the users and design products that make sense to them. (CC-by by Danny Hope)</p></div>
<p><em> </em></p>
<p>I am not going to give specific advice about how many developers the Wikimedia Foundation should hire: there are other people more knowledgeable about how many we need, and what they should work on. However, there are other key positions that I think are need to scale up.</p>
<p>Our human resources are currently focusing on what happens <em>after</em> the code has been written: we review it, we try to ensure quality, we try to automate testing, we file bugs, etc. However, there is little preparation <em>before</em> the development is actually done. This has led to a developer-driven design, resulting in an interface based on the implementation model. We need <a href="http://www.gpaumier.org/blog/503_wikimedia-user-experience-programs/">a more systematic approach to User experience</a> and development management if we want to scale up properly.</p>
<h2>Product management &amp; Design</h2>
<p>In the Software development world, Product managers and Designers are the most common bridges between users and engineers. Product managers identify the needs of users and prioritize features &amp; improvements; their goal is to translate the users&#8217; experience and feedback into explicit requirements to meet the users&#8217; expectations. It is then the role of the designers to create innovative, well-thought solutions to address these issues and meet the requirements. Finally, developers provide feedback about the technical feasibility of these solutions, and implement them the best way possible. This is of course a simplistic summary, but it helps get the point across.</p>
<p>&#8220;Designer&#8221; can have a lot of different meanings. A lot of people think that &#8220;design&#8221; is just making things pretty. When I talk about designers, I think mainly of <a title="Interaction Design on Wikipedia" href="http://en.wikipedia.org/wiki/Interaction_design"><em>Interaction</em> Designers</a>, i.e. people who design solutions to improve the user experience and the way the product interacts with the user.</p>
<p>The community of MediaWiki users is amazingly large, partly because they include participants from all Wikimedia Websites. Similarly, MediaWiki also benefits from a large base of volunteer developers. Product managers and designers have been the missing piece in this picture; their bridging role is critical, simply because there aren&#8217;t any volunteers to take up this task. Admittedly, some users are also developers, and some developers keep themselves informed of the users&#8217; wishes. But <strong>without product managers, clear requirements &amp; prioritization are missing</strong>. And <strong>without designers, the technical solutions created by the developers don&#8217;t meet the users&#8217; expectations</strong> and mental model.</p>
<p>In my experience, developers prefer to focus on the actual development and rarely enjoy meta-activities related to it. They usually dislike project management and writing product specifications, and rightly so: it is not their job. However, <strong>a successful software product strategy cannot rely only on development</strong>. We benefit from a large community of volunteer developers, but we lack management &amp; design resources; it is the role of the Foundation to supplement this lack. It doesn&#8217;t mean we shouldn&#8217;t expand our development team: our number of paid core developers is ridiculously small. It only means we should also invest where the weakness lies.</p>
<p><strong>Recommendation: Recruit Product managers and Designers to strengthen the development cycle of our technological platform</strong></p>
<h2>Research team</h2>
<p>The <a title="Multimedia usability hub" href="http://usability.wikimedia.org/wiki/Multimedia:Hub">Multimedia usability project</a> has relied heavily on initial research in order to gather as much information as possible about users and their goals. A lot of useful information was already available, but a lot of specific metrics were also missing; collecting and analyzing them took a lot of time and it will still take months to get all the metrics we need. Research is critical in order to make the right decisions, especially about design. <strong>Research is the only way know our users in order to make the best design &amp; management decisions.</strong> Good research is the best basis on which product managers, designers and developers can then respectively specify, design and build awesome solutions.</p>
<p>Right now the only researcher we have is Erik Zachte as Data analyst, but his job seems to essentially focus on providing operational metrics. While this work is much needed, we also need some more specific data on a case by case basis. I see at least three other positions needed:</p>
<ul>
<li> A <strong><acronym title="User experience">UX</acronym> research specialist</strong>, who would conduct regular in-house low-cost usability testing, and generally manage <acronym title="User experience">UX</acronym> studies</li>
<li>A <strong>Metrics engineer</strong>, who would develop integrated metrics in the software and be able to extract specific information from the database on a case by case basis.</li>
<li>A <strong>Community specialist</strong>, with a good knowledge of social psychology and online interaction, who would especially focus on improving the interaction between participants by identifying the community issues and proposing ways to fix them.</li>
</ul>
<p><strong>Recommendation: Build a Research team to guide design &amp; strategic decisions about our technological platform</strong></p>
<h2>Volunteer developers</h2>
<p>We benefit from a fantastic community of volunteer developers, but we underestimate their potential; I think we are not doing enough to support their work and engage them into our activities. In 2007, the Foundation hired Cary Bass to try and coordinate the large pool of volunteers willing to help us with meta activities. Similarly, <strong>we need a <em>Dev community manager</em> to care for our volunteer developers</strong>. We need someone who knows the developer community very well, and knows their strengths and weaknesses in order to find the right person for each job. We need someone who can help orient new volunteers, organize real-life meet-ups and manage projects such as the Google Summer of Code.</p>
<p><strong>Recommendation: Recruit a Community manager to coordinate the efforts of volunteer developers.<br />
</strong></p>
<h2>Read also in this series</h2>
<ul>
<li><a href="http://www.gpaumier.org/blog/494_wikimedia-mediawiki-bugs-issues-and-requests/">Wikimedia &amp; MediaWiki bugs, issues and requests</a></li>
<li><a href="http://www.gpaumier.org/blog/503_wikimedia-user-experience-programs/">Wikimedia User experience programs: a systematic approach</a></li>
<li><a href="http://www.gpaumier.org/blog/520_scaling-up-software-development-for-wikimedia-websites-tools/">Scaling up Software development for Wikimedia websites (Part II: Tools)</a></li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://www.gpaumier.org/blog/519_scaling-up-software-development-for-wikimedia-websites-human-resources/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Wikimedia &amp; MediaWiki bugs, issues and requests</title>
		<link>http://www.gpaumier.org/blog/494_wikimedia-mediawiki-bugs-issues-and-requests/</link>
		<comments>http://www.gpaumier.org/blog/494_wikimedia-mediawiki-bugs-issues-and-requests/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 01:26:46 +0000</pubDate>
		<dc:creator>Guillaume Paumier</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Wikimedia Technology]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[bugzilla]]></category>
		<category><![CDATA[issues]]></category>
		<category><![CDATA[MediaWiki]]></category>

		<guid isPermaLink="false">http://www.gpaumier.org/blog/?p=494</guid>
		<description><![CDATA[During the past few weeks, I have been thinking about how to improve (or rather, kick off) a more structured way to manage software and product development within the Wikimedia community. The result of this thoughts is a list of ideas and recommendations I have compiled and submitted to the relevant staff members at the Wikimedia Foundation. I am also publishing them here in order to allow for a wider feedback. This article is the first of a series dedicated to this topic. <a href="http://www.gpaumier.org/blog/494_wikimedia-mediawiki-bugs-issues-and-requests/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><em>During the past few weeks, I have been thinking about a more structured way to manage software and product development within the Wikimedia community. The result is a list of ideas and recommendations I have compiled and submitted to the relevant staff members at the Wikimedia Foundation. I am also publishing them here in order to allow for a wider feedback. This article is the first of a series dedicated to this topic.</em></p>
<p><em><strong>Disclaimer:</strong> The content of this article reflects only my personal opinion and is not an official plan or communication of the Wikimedia Foundation.</em></p>
<p><em> </em></p>
<div id="attachment_804" class="wp-caption aligncenter" style="width: 600px"><em><em><a href="http://www.flickr.com/photos/14516334@N00/2839538750"><img class="size-medium wp-image-804" title="bug_sunflower" src="http://www.gpaumier.org/blog/wp-content/uploads/2010/03/bug_sunflower-590x392.jpg" alt="bug sunflower 590x392 Wikimedia & MediaWiki bugs, issues and requests" width="590" height="392" /></a></em></em><p class="wp-caption-text">Bug on a sunflower. (CC-by by Louise Docker)</p></div>
<p><em> </em></p>
<h3>Bugs &amp; Bugzilla</h3>
<p>Right now, the bug tracker we use is based on Bugzilla and located at <a title="bugzilla on wikimedia.org" href="http://bugzilla.wikimedia.org">bugzilla.wikimedia.org</a>. Many major free projects use a generic &#8220;bugs&#8221; or &#8220;issues&#8221; prefix or suffix in their URL: <a title="Bugs on kde.org" href="http://bugs.kde.org">bugs.kde.org</a>, <a title="Bugs on gentoo.org" href="http://bugs.gentoo.org">bugs.gentoo.org</a>, <a title="Issues on apache.org" href="http://issues.apache.org">issues.apache.org</a>, <a title="Bugs on debian.org" href="http://www.debian.org/Bugs">www.debian.org/Bugs</a>. Some projects use the &#8220;bugzilla&#8221; prefix like we currently do, like <a title="Bugzilla setup on gnome.org" href="http://bugzilla.gnome.org">bugzilla.gnome.org</a>. The latter is an example of a choice based on the implementation model: the name reflects the technical implementation of the bug tracker, not its actual purpose. <strong>A better name would be closer to the user model and describe the actual goal of the platform: to report and manage bugs and issues related to a specific project.</strong> If we do change our tracker, the current name will have to change too, because it is specific to a given tool.</p>
<p><strong>Recommendation: Use a generic descriptive prefix rather than one based on the tool we use.</strong></p>
<h3>Wikimedia &amp; MediaWiki</h3>
<p>Another current issue is the confusion caused by the similar names used for the organization (Wikimedia) and the software (MediaWiki). A good example of this confusion is the number of MediaWiki users who join the <a title="#wikimedia channel on Freenode" href="irc://irc.freenode.net/wikimedia">#wikimedia</a> <acronym title="Internet Relay Chat">IRC</acronym> channel instead of <a title="#mediawiki channel on Freenode" href="irc://irc.freenode.net/mediawiki">#mediawiki</a> to ask for software support. The confusion is even worsened by the fact that we have a unique bug tracker located at <a title="bugzilla on wikimedia.org" href="http://bugzilla.wikimedia.org">bugzilla.wikimedia.org</a>, dealing with issues related to both Wikimedia websites <em>and</em> the MediaWiki software.</p>
<p>There are obviously strong ties between Wikimedia projects and MediaWiki: all Wikimedia projects use the MediaWiki software, and the MediaWiki software is primarily developed with Wikimedia projects in mind. However, there is also a growing community of MediaWiki users who are not Wikimedia users and we should provide them with tools relevant to them. This might be for instance a support forum dedicated to MediaWiki users.</p>
<p>Wikimedia projects and MediaWiki are separate products and they should be acknowledged as such: as a consequence,<strong> the separation between bugs in the MediaWiki software, and Wikimedia-specific operations &amp; configuration requests should be made more explicit</strong>. Obviously, we would prefer to have a unique back-end to support both sites, particularly to be able to move bugs and requests from one platform to another, but this is easily configurable. Possible names could be <a title="dev.mediawiki.org" href="http://dev.mediawiki.org">dev.mediawiki.org</a> and <a title="tech.wikimedia.org" href="http://tech.wikimedia.org">tech.wikimedia.org</a>; both are currently unused. They are pretty wide prefixes, because we may host a real project management platform there, rather than just bug trackers.</p>
<p><strong>Recommendation: Offer two different public-facing platforms for MediaWiki- and Wikimedia-related issue tracking.</strong></p>
<h3>Read also in this series</h3>
<ul>
<li><a href="http://www.gpaumier.org/blog/503_wikimedia-user-experience-programs/">Wikimedia User experience programs: a systematic approach</a></li>
<li><a href="http://www.gpaumier.org/blog/519_scaling-up-software-development-for-wikimedia-websites-human-resources/">Scaling up Software development for Wikimedia websites (Part I: Human resources)</a></li>
<li><a href="http://www.gpaumier.org/blog/520_scaling-up-software-development-for-wikimedia-websites-tools/">Scaling up Software development for Wikimedia websites (Part II: Tools)</a></li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://www.gpaumier.org/blog/494_wikimedia-mediawiki-bugs-issues-and-requests/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Ten features that would dramatically improve Wikimedia Commons</title>
		<link>http://www.gpaumier.org/blog/251_ten-features-that-would-dramatically-improve-wikimedia-commons/</link>
		<comments>http://www.gpaumier.org/blog/251_ten-features-that-would-dramatically-improve-wikimedia-commons/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 11:22:30 +0000</pubDate>
		<dc:creator>Guillaume Paumier</dc:creator>
				<category><![CDATA[Wikimedia Commons]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[usability]]></category>
		<category><![CDATA[Wikimedia]]></category>

		<guid isPermaLink="false">http://www.gpaumier.org/blog/?p=251</guid>
		<description><![CDATA[About two years ago, I said "Commons may be the next coolest project, as soon as developers find the time to improve its usability to make it more user-friendly". Wikimedia Commons hasn't evolved much in terms of usability since then. MIT's Technology Review recently published an article about improvements to come regarding the management of video content on Wikipedia and Wikimedia websites. I heard a lot of people say: "Good, but what about pictures?" Some technical improvements described by the Technology Review will be useful for both images and videos, such as the media and upload wizard currently developed by Michael Dale. However, Wikimedia Commons still needs many little (or big) features that would dramatically improve its user-friendliness. <a href="http://www.gpaumier.org/blog/251_ten-features-that-would-dramatically-improve-wikimedia-commons/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div id="attachment_271" class="wp-caption alignright" style="width: 210px"><img src="http://www.gpaumier.org/blog/wp-content/uploads/2009/06/Commons-logo.png" alt="Commons logo Ten features that would dramatically improve Wikimedia Commons" title="Commons-logo" width="200" height="271" class="size-full wp-image-271" /><p class="wp-caption-text">Logo of Wikimedia Commons</p></div>
<p><a href="http://www.gpaumier.org/blog/40_found-on-flickr-reused-from-commons/">About two years ago</a>, I said &#8220;Commons may be the next coolest project, as soon as developers find the time to improve its usability to make it more user-friendly&#8221;. Sadly, Wikimedia Commons hasn&#8217;t evolved much in terms of usability since then. <acronym title="Massachusetts Institute of Technology">MIT</acronym>&#8217;s Technology Review recently published an article about <a title="Article of the MIT Technology Review" href="http://www.technologyreview.com/web/22900/page1/">improvements to come regarding the management of video content</a> on Wikipedia and Wikimedia websites. I heard a lot of people say: &#8220;Good, but what about pictures?&#8221; Some technical improvements described by the Technology Review will be useful for both images and videos, such as the <a title="Media Wizard on Wikimedia's tech blog" href="http://techblog.wikimedia.org/2009/03/add-media-wizard-and-firefogg-on-testwikipediaorg/">media and upload wizard</a> currently developed by Michael Dale. However, Wikimedia Commons still needs many little (or big) features that would dramatically improve its user-friendliness.</p>
<h3>Browsing &amp; reusing</h3>
<ol>
<li><strong>Automatic localization</strong>: Websites such as Wikimedia Commons and meta-wiki host content in various languages and have a multilingual audience. These multilingual wikis should automagically <a title="Article on Delphine Ménard's weblog" href="http://blog.notanendive.org/post/2008/09/25/I-don-t-spreche-Deutsch-merci-beaucoup">detect the locale of the user&#8217;s browser</a> and use it as language of the interface<a title="Article on Delphine Ménard's weblog" href="http://blog.notanendive.org/post/2008/09/25/I-don-t-spreche-Deutsch-merci-beaucoup"></a>, especially for unregistered users. As for users with an account, their browser&#8217;s locale should be set as the default language in their preferences.</li>
<li><strong>Usage-centric page layout</strong>: It&#8217;s all very nice to know that such image is a &#8220;retouched picture&#8221; or that such diagram was &#8220;made using Inkscape&#8221;. But I think what most of the users want to know is: how to use the picture (in Wikimedia projects or elsewhere) and how to download it (using the best resolution available). Many people use the right-click-save-as method to save pictures from the Internet. If they do that on Commons, they will only save the low-resolution preview. There should be a big button « Download high-res », as well as snippets of code to embed a file with proper attribution.</li>
</ol>
<h3>Metadata</h3>
<p>Full metadata support is the cornerstone of many other features. EXIF is probably the most known type of metadata, but there are also others such as IPTC or XMP.</p>
<ol start="3">
<li><strong>Pull metadata from files on upload</strong>: this idea is not a new one, yet it hasn&#8217;t been implemented. A fair amount of photographers add a lot of metadata to their files: author, description, copyright information, geotags, keywords, etc. and it is extremely cumbersome to have to redo all the work by hand during the upload.</li>
<li><strong>Store metadata in a database</strong> to make search and attribution easier, especially: description, license, media type (photo, diagram, map, etc.). It should be connected to the MediaWiki <acronym title="Application Programming Interface">API</acronym> to allow for easy extraction of these data.</li>
<li><strong>Push metadata to files on download</strong>: In the field of publishing, storing credit information directly into the file&#8217;s metadata is strongly recommended and is a standard practice to avoid losing track of it.</li>
</ol>
<h4>Related open bugs</h4>
<ul>
<li><a title="Bug 6672" href="https://bugzilla.wikimedia.org/show_bug.cgi?id=6672">bugzilla:6672</a>: EXIF orientation not used (rotation from digital cameras)</li>
<li><a title="Bug 3361" href="https://bugzilla.wikimedia.org/show_bug.cgi?id=3361">bugzilla:3361</a>: Image author, description, and copyright data saved in EXIF fields</li>
<li><a title="Bug 16956" href="https://bugzilla.wikimedia.org/show_bug.cgi?id=16956">bugzilla:16956</a>: Show IPTC metadata on image description page</li>
<li><a title="Bug 657" href="https://bugzilla.wikimedia.org/show_bug.cgi?id=657">bugzilla:657</a>: Pull copyright metadata from files on upload</li>
<li><s><a title="Bug 11484" href="https://bugzilla.wikimedia.org/show_bug.cgi?id=11484">bugzilla:11484</a>: Include <acronym title="International Organization for Standardization">ISO</acronym> rating in abbreviated exif metadata.</s></li>
</ul>
<h3>Editing</h3>
<ol start="6">
<li>Built-in <strong>basic editing features</strong> (lossless rotate, crop) and ability to save under another name (i.e. for crops). Similarly, a built-in <strong>geocoding feature</strong> using OpenStreetMap. <a title="Commons:Geocoding" href="http://commons.wikimedia.org/wiki/Commons:Geocoding">Geocoding</a> images means attaching geographic information about the place where the work was made. This may be made easier by the <a title="OpenStreetMap and Wikimedia" href="http://techblog.wikimedia.org/2009/04/openstreetmap-maps-will-be-added-to-wikimedia-projects/">current initiative to integrate OpenStreetMap</a> with Wikimedia projects. And of course it should save the coordinates as metadata.</li>
</ol>
<h3>Rating</h3>
<ol start="7">
<li>Some sort of community-managed <strong>rating feature</strong>; as someone said elsewhere, &#8220;Commons is a depository, and depositories are expected to host lots of junk&#8221;. A rating feature would allow the best of Commons to be presented first during the search, and junk to be presented last.</li>
</ol>
<h3>Searching</h3>
<p>With currently more than 4.6 million files (and counting), it is becoming increasingly important to improve the search features of Wikimedia Commons.</p>
<ol start="8">
<li><strong>An &#8220;advanced search&#8221; feature</strong> similar to <a title="flickr's advanced search" href="http://www.flickr.com/search/advanced/?">flickr&#8217;s</a>. It should be possible to search by media type, by license, and to add toggles such as &#8220;safe mode&#8221; (explicit content) or &#8220;personality rights&#8221;.</li>
<li><strong>Multilingual search</strong>: Files on Commons are ordered in hierarchical categories, using English as <em>lingua franca</em>. If you want to find a file, you have to search in English. I imagine it is possible to use some dictionary (coupled to the language detection) to give good results for a search in any language.</li>
<li><strong>Google-Images-friendliness</strong>. A lot of people use Google Images to find pictures, but images from Wikimedia Commons rarely appear in these results (unless they are used on a Wikipedia page).</li>
</ol>
<p>Note: All these ideas are given from a user point of view; their technical feasibility has to be assessed by a MediaWiki-literate developer.</p>]]></content:encoded>
			<wfw:commentRss>http://www.gpaumier.org/blog/251_ten-features-that-would-dramatically-improve-wikimedia-commons/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
