Wikipedia:Wikipedia Signpost/2011-09-26/Technology report

1.18 initial partial deployment "mostly went well"
Sticking to the schedule detailed in last week's "Technology report", 1.18 has so far been released to seven Wikimedia wikis for testing and evaluation. Developer Rob Lanphier has since written on the wikitech-l mailing list that the partial deployment (the first such deployment in Wikimedia's history) "mostly went well", with only the LiquidThreads extension and a series of compatibility fixes with the ResourceLoader needing to be adjusted at the eleventh hour. The deployment means that those seven wikis now have access to a range of newer features, with meta.wikimedia.org, en.wikiquote.org, en.wikibooks.org, beta.wikiversity.org, eo.wikipedia.org, nl.wikipedia.org and incubator.wikimedia.org following today. The preparatory work for today's updates has been causing intermittent server overloads, resulting in edits not being processed. Nonetheless, the problems are expected to be temporary, and all remaining wikis remain set to be changed over by 4 October.

In addition to those features outlined in last week's report, Brion Vibber chose this week to highlight the resolution of bug #6672, allowing for the native support of photos where EXIF metadata specifies a non-default orientation. Vibber explained the pre-1.18 problem (1, 2): This is very common in photos taken with digital cameras; a portrait-mode image may be saved [as landscape] with an orientationtag stating it must be rotated 90 or 270 degrees ... While most photo-editing applications understand this metadata natively and will simply show the image at its natural size, web browsers don't -- and neither did the server-side processing that MediaWiki was doing.

When this support goes live on Wikimedia Commons, it'll be a nice help for people uploading [photographs directly from their camera], as it will no longer be necessary to manually fix the rotation of your photos. WMF localisation team member Gerard Meijssen passed on a reminder to administrators reading his blog (originally written by Right-to-Left expert Amir Aharoni) to check for broken Right-to-Left-related JavaScript and CSS on their home wikis after the deployment of 1.18, which makes a number of these so-called "hacks" superfluous.

Subversion to be abandoned in favour of Git
MediaWiki code is collaborated on using a system known as Subversion (see previous Signpost coverage for details), which, for a long time, was the standard in collaborative code development. In recent years, however, several alternatives have become popular, each offering a diverse array of possible improvements over traditional Subversion. Most significantly, the rise of distributed revision control systems offers developers a chance to abandon the linearity of Subversion commits in favour of dynamic "changesets", which can be applied in a different order from predecessor changes, or simply not at all. This ability derives from the fact that under a distributed system there is no central repository, and so no canonical order of changes in the first place, allowing developers the freedom to code without the prospect of a time-consuming merge at the end of the process (the developer equivalent of a complex edit conflict). As a result, a move away from Subversion (which is increasingly seen as outdated) to a distributed system such as Git has been suggested a number of times in the past, including in March of this year.

On 22 September, developer Rob Lanphier re-opened the case on the wikitech-l mailing list, if only to declare victory for those in support of a move. "For a long time, we've been talking about migrating from Subversion to Git," wrote Lanphier. "It's time to start getting more serious about it. ... There has been resistance to this in the past, and there still may be some resistance. However, I think we've worn everyone down. :)". Historically, criticism of any move has focussed on the practicalities, rather than direct criticism of Git itself, which has over time acquired something of the "mythical" about it, in the words of bugmeister Mark Hershberger, writing earlier this year. On this basis, Lanphier concluded that "the questions shift from "if?" to "when?" and 'how?'" and proposed a timetable that would see Git replace Subversion in November. With linearity abandoned, the long-talked-about goal of continuous integration (for example, weekly deployments of the newest code to Wikimedia wikis) has been brought forward accordingly and would, if the migration went according to plan, begin during December.

In brief
Not all fixes may have gone live to WMF sites at the time of writing; some may not be scheduled to go live for many weeks.
 * Improved statistics: On his Infodisiac blog, WMF data analyst Erik Zachte described how he had "perform[ed] long overdue maintenance on Wikistats" including "fixing bugs" and "making good a long standing promise to publish summaries for all Wikimedia wikis". As he explained in a post on the foundation-l mailing list, the updates make available new monthly report cards for individual Wikimedia projects. Intended to give an at-a-glance overview of project activity broken down by language, the summaries contain key statistics on page views, article count, and editing activity in terms of monthly and annual changes. According to the report cards, some major language projects, such as French and Spanish, are at least stable. Most, however, are on a downwards trend. The August figures for the English Wikipedia, for example, make for dispiriting reading for editors on the Foundation's largest wiki: activity levels have fallen from the same month last year among editors generally (with edits down 10%), active editors (down 2%), and very active editors (down 8%). Despite a flurry of initiatives this year to reverse the decline, the past year has also seen a dramatic 10% fall in the number of new editors.
 * Wikimedia server setup documented: On 19 September, WMF Operations Engineer Ryan Lane posted on the Wikimedia blog about the publication of a detailed schema of Wikimedia's operations architecture. The hope is to make it easier for other organisations to learn from the experiences of Wikimedia in providing a global, top-10 website reliably. Lane, who has now spent a year working for the Foundation, summarised his achievements and his plans for the year ahead in a separate blog post ("I've been with the Wikimedia Foundation for a year. Have I met my goals?").
 * Bugmeister interview: Gerard Meijssen published an interview with WMF bugmeister Mark Hershberger. In it, Herberger admits that he has a "soft spot for WikiSource" driven out of a desire "to provide a community-driven replacement for reCAPTCHA". Regular readers familiar with the ongoing problem of code review will no doubt take heart from Hershberger's confidence that the WMF "can continue to keep unreviewed code low".
 * Babel extension deployed: The Babel extension, which provides a uniform and internationalised version of user language userboxes, has been deployed to Wikimedia wikis, according to a post on the Wikimedia Blog. It is accessible via the  parser function. It replaces a complex system of templates, currently in use on most major wikis.
 * GSoC officially wrapped up: The status of this year's Google Summer of Code projects (see previous Signpost coverage) was described in a blog post by WMF Volunteer Development Co-ordinator Sumana Harihareswara. According to a parallel post on the wikitech-l mailing list, all the Wikimedia-related extensions are progressing well, and are well and truly "on the road to being merged and deployed".