Grants:IEG/Modernize the Wiki Loves Monuments PA Jury Tool

statusdraft
Modernize the Wiki Loves Monuments PA Jury Tool
summaryPort the Wiki Loves Monuments PA tool to a recent version of the Symfony framework, add features and UX improvements; and add installation, administration and usage documentation.
targetWikimedia Commons
strategic priorityincrease reach
amount1600 USD
granteeDMaggot
contact• DMaggot
this project needs...
volunteer
advisor
join
endorse
created on20:57, 8 June 2015 (UTC)

Project idea edit

What is the problem you're trying to solve? edit

The WLM PA Jury Tool was originally developed to help jurors rate photos for this contest. Eventually it was adopted by other contests of the same fashion like Wiki Loves Food and Wikiviajes por Venezuela 2014. Unfortunatelly, this project is showing its age in several ways and needs to be modernized. In addition to that, it is poorly documented, both from the installation and the usage point of view. As of now, I am the only person that knows how to install and manage this tool and this has made me a bottleneck for many contests to start rating their photos. Usage know-how, on the other hand, is spread among people that have used this tool as admins and jurors but it is difficult for newcomers to get answers about usage when they do not know other users.

What is your solution? edit

The concrete goals of this project are:

  • Porting the code to Symfony 2.7. The current code is based on version 2.3 of the Symfony Framework, a PHP framework to create web applications. While upgrading minor versions of this framework is advertised as a painless, straightforward process; this is only true when upgrading from version at least 2.4. Upgrading from 2.3 is poorly documented (see the comments in this announcement) and requires a significant review of the code, as sketched by this draft of a porting guide. The benefit of upgrading specifically to 2.7 is that this version will have long term support.
  • Improve existing features and add requested features. The first version of this tool was used in Wiki Loves Monuments Panama 2012 and had a very basic set of features. In 2013, several contests around the world showed interest in using this tool, and this is when the Symfony-based tool was created. This was an iterative process, accepting feature requests from several organizers of the contest across the world. While initial functionality was properly implemented from the Software Engineering point of view, time constrains as the contest was coming to an end and jurors were starting to rate photos caused many last-minute features to be poorly integrated in the code or functionallity just missing. For instance, this tool failed to support the use case of large contests like Wiki Loves Monuments UK, which had more than 10,000 images to rate. Since 2013, feature development has been stagnant because of personal lack of time, although in 2014 the tool was used by roughly a dozen contests. Through this grant, I expect to incorporate the many features that have been requested throughout these years, and iron out bugs that have been reported. Some of the feature requests that I plan to address include:
    • Better support for large datasets of images through background incremental loads.
    • Keyboard controls for rating photos.
    • Exand reporting options (e.g. report list of photos by average score).
  • Redesign the UI/UX. One of the greatest limitations of the current tool is that users find it complicated to understand what the many configuration options are for, and what the workflow for simple tasks like registering new jurors is. While documentation of the tool woud address these shortcomings, a better UI should also improve usability and enable users to discover features intuitively. This particular aspect of the tool is beyond my abilities as a developer, so part of this grant will go to consulting a UI/UX expert on form layouts and photo rating interfaces.
  • Documentation. In order to remove myself as the single point of contact regarding this tool, this grant will also support the creation of extensive documentation on development, installation, administration and usage. Usage documentation will allow for contest organizers to quickly figure out what set of parameters they need to support their reviewing process. Since this tool has been hosted in Lab instances in the last couple of years, this documentation should be enough for contests that do not need to set up their own installation of the tool. On the other hand, contests that have specific requirements and a team of developers will find the documentation on development, installation and administration very useful. The documentation of the sources in particular will allow for other developers in the Wikimedia community to contribute features to enhance this tool.
  • Collaborative Translations. While the current code supports internationalization through the i18n/l10n features in the Symfony framework, these functionality is not integrated with collaborative tools like TranslateWiki.net which are more suitable for the Wikimedia community. Part of this grant will support this integration and will make this tool available in the native language of every contest that uses it.
  • (Optional) Automated instances. The Wikimedia community has championed tools like puppet to manage instances in the vast infrastructure behind our various sites. This same technology could help users develop features for the tool or do quick tests to see if the set of features provided by this tool is enough for their needs.

Project goals edit

Wikimedia Commons is highly benefited from Wiki Loves projects and these often depend on proper tooling to help jurors review the photos. As of now, I have become a bottleneck to these contests as the sole developer that can handle installation, administration and FAQ for this tool. Modernizing the tool and federating the know-how will make it easy for new Wiki Loves projects and other similar photo contests to support their workflow.

Project plan edit

Activities edit

  • Port to Symfony 2.7.
  • Add features that have been requested through time and polish features that were added as last minute updates and are not propertly integrated in the tool.
  • Redesign the user interface to improve usability and feature discoverability.
  • Create installation, administration and user documentation.
  • Create a proper, collaborative translation infrastructure.
  • If time permits, create automated instances through tools like puppet.

Budget edit

  • Programming: 1200 USD
  • UI/UX Consulting: 400 USD

Community engagement edit

All of the features that will be implemented in the updated version of the tool have been requested by previous users that have provided feedback after using it. These users will become the stakeholders of the features developed, and will be contacted to give their opinion on how well this new version caters their original need.

Sustainability edit

Documentation will be they key of the sustainability of this tool. Through a detailed documentation of all the aspects of this tool, any technical member of the Wikimedia community at large will be able to install and administrate this tool; while any non-technical member will be able to use this tool after installed. Developer documentation will also make it easy for others to contribute features to the tool as needed.

Measures of success edit

Adoption by the different countries participating in contests like Wiki Loves Monuments, Wiki Loves Earth and other similar projects will be the main indication of success. The feedback provided by the organizers of these contests around the world should be positive and, in the particular case of contests using it for a second or third time, the improvements should be noticeable.

Get involved edit

Participants edit

Community notification edit

Please paste links below to where relevant communities have been notified of your proposal, and to any other relevant community discussions. Need notification tips?

Endorsements edit

Do you think this project should be selected for an Individual Engagement Grant? Please add your name and rationale for endorsing this project below! (Other constructive feedback is welcome on the discussion page).

I fully endorse this grant request because our team in Wiki Loves Monuments Panama 2012 and 2013 benefited a lot from this tool. It helped our jury optimize the process of rating the pictures and helped the team get accurate and immediate results. I must highlight the technical skills of the grantee as he was part of the WLM Panama organizing team, helping us set up, run and maintain all our technical infrastructure.

From the proposal, I find interesting that the proposed improvements of the tool will allow for it to be used in different picture contests, making it very attractive to be used widely within the Wikimedia community. --Ayaita (talk) 05:16, 12 June 2015 (UTC)

  • I used this for Wikipedia Summer of Monuments. An upgrade would make it much better. harej (talk) 01:52, 14 June 2015 (UTC)
  • This tool has been used in multiple editions of Wiki Loves Monuments, Wiki Loves Earth and other projects and forms a essential and crucial part of the Wikimedia infrastructure. Romaine (talk) 06:27, 14 June 2015 (UTC)
    At least for WLE 2015 I don't know if any country is using this tool, but they are using other tool. Please see the discussion --Ilya (talk) 07:01, 14 June 2015 (UTC)
  • We are using this tool for Wiki Loves Food 2015 contest. David has been offering excellent support also. The tool does needs improvements and we are willing to provide more specific feedback. We hope this IEG will help David to improve the tool further. Best wishes for getting the IEG grant. Ravi (talk) 13:17, 30 June 2015 (UTC)