Accuracy review

= Accuracy review =


 * Public URL: http://www.mediawiki.org/wiki/Accuracy_review
 * Phabricator report: https://phabricator.wikimedia.org/T89416
 * Announcement: https://lists.wikimedia.org/pipermail/wikitech-l/2015-February/080766.html

Name and contact information

 * Name: James Salsman
 * Email: jim@talknicer.com
 * IRC / Twitter handle: jsalsman
 * Web Page: http://talknicer.com
 * Resume available upon request; recent highlights
 * Location: Usually North America, Europe, or Asia
 * Typical working hours: varies; Mountain Standard Time (UTC -7) as of February, 2015

Synopsis
Create a Pywikibot to find articles in given categories, category trees, and lists. For each such article, find passages with (1) facts and statistics which are likely to have become out of date and have not been updated in a given number of years, and optionally (2) phrases which are likely unclear. Add an indication of the location and the text of those passages either to the page in question using templates, to a bookkeeping page with other page names as headings, and/or to a database local to the bot.

Use a customizable array of keywords and regular expressions (or optionally, the DELPH-IN LOGIN parser) to find such passages for review. Use an algorithm at least as good as that in to pre-compute the age of each word in an article, to avoid the move and blanking issues described in e.g.,  before processing each article of interest.

Convert flagged passages to GIFT questions (example parser) for review and present them to one or more subscribed reviewers. Update the source template with the reviewer(s)' answers to the GIFT question, but keep the original text as part of the template. When reviewers disagree, update the template to reflect that fact, and present the question to a third reviewer to break the tie.

I have additional detailed plans for testing which I will be happy to discuss with interested co-mentors, because depending on available resources, there could be ways to eliminate substantial duplication of effort. I look forward to discussing testing with co-mentor volunteers.

Mentors needed (at least two co-mentors required; please sign up here if you are interested)

 * James Salsman

Application

 * Use your mediawiki.org user page to introduce yourself.
 * Recommended reading:
 * Starter kit for new Wikimedia tech volunteers.
 * How to become a MediaWiki hacker is a good place to start learning your skills and becoming a better candidate.
 * Lessons learned for mentorship programs is particularly useful when you start writing your application.
 * Draft your project creating a new Phabricator task. Try to pick a short, memorable and catchy title which communicates your core idea on how to tackle the issue/project you chose.
 * 1) Describe the details and timeline of the work you plan to accomplish the project. Include a brief, clear work breakdown structure with milestones and deadlines. Make sure to label deliverables as optional or required. Deliverables should include investigation, coding, deploying, testing and documentation.
 * 2) Briefly describe your work style:  how you plan to communicate progress, where you plan to publish your source code while you're working, how and where you plan to ask for help. Applicants that understand active participation in our development community will be favored.
 * 3) Please describe your education completed or in progress.
 * 4) How did you hear about this program?
 * 5) Will you have any other time commitments, such as school work, another job, planned vacation, etc., during the duration of the program?
 * 6) We advise all candidates eligible to Google Summer of Code and FOSS Outreach Program for Women to apply for both programs. Are you planning to apply to both programs and, if so, with what organization(s)?
 * 7) What drives you? What makes you want to make this the best wiki enhancement ever?
 * 8) Please describe your experience with any other FOSS projects as a user and as a contributor.
 * 9) Please describe any relevant projects that you have worked on previously and what knowledge you gained from working on them (include links.)
 * 10) What project(s) are you interested in (these can be in the same or different organizations)?
 * 11) Do you have any past experience working in open source projects (MediaWiki or otherwise)?
 * 12) Please add any other relevant information -- UI mockups, references to related projects, a link to your proof of concept code, whatever. There are no specific requirements, but we love to see people who love what they're doing. Show us you're excited about this project and have an interest in the background and are considering how best to make your idea work.
 * The GSOC student guide is a good resource for anybody willing to write a good project proposal. And then there is a list of DOs and DON'Ts full of practical wisdom.
 * If you have general questions you can start asking at the |Discussion page. IRC channel is also a good place to find people and answers. We do our best connecting project proposals with Phabricator reports and/or wiki pages. Other contributors may watch/subscribe to those pages and contribute ideas to them. If you can't find answers to your questions, ask first in those pages. If this doesn't work then go ahead and post your question to the wikitech-l mailing list.