User:Mvolz/OPW proposal round 8

Improving URL citations on WikiMedia

 * Public URL: Improving URL citations on Wikimedia
 * Extension:CiteURLEngine


 * Bugzilla report: 57804
 * Announcement: Unannounced as of yet.

Name and contact information

 * Name: Marielle Volz
 * Email: marielle.volz@gmail.com
 * IRC: mvolz
 * Web Page / Blog / Microblog / Portfolio:
 * Location: London, England U.K.
 * Typical working hours: 9-5 UTC -0 3 weekdays per week & 10-6 UTC- 0 on Sat/Sun (tentative)

Synopsis
Incomplete and missing citations of web resources using the tag are a relatively endemic problem on Wikipedia and other WikiMedia installations. There are two major problems to be addressed:


 * The relative difficulty and tedium of including citations provides a barrier to editors properly citing works.
 * As a consequence, there are many existing citations which are currently incomplete.

I propose to address the first issue and to improve the process of including citations, by automating citations given a user-submitted URL on WikiMedia.

Such a feature has already been planned; it is currently part of the Visual Editor roadmap to add references to the transclusion dialog, and there are currently mock-ups demonstrating the process of adding references. However, there is currently no back-end to supply a wiki formatted citation in response to a user-entered URL.

I propose a media wiki extension, CiteURLEngine, to return wiki mark-up citations in response to a submitted URL. The goal is to eventually produce a fully-featured extension that could potentially return citations both to the VisualEditor extension as well as the | RefToolbar in the WikiEditor extension.


 * Possible mentors: James Forrester, Trevor Parscal

Deliverables
A rough timeline of deliverables is as follows:


 * Get familiar with wikimedia code base and commit Hello World version of extension.
 * Simple extension that accepts a URL and scrapes the Title to return a citation.
 * Work with VisualEditor team/Trevor Parscal to incorporate it into the translocution dialog and make sure they can interact appropriately.
 * Potentially do the same with RefToolbar/ no mentor on this one so may have to table this?
 * Improve functionality of extension to provide better citations with more fields populated.
 * Investigate possibility of saving citations to a database instead of scraping in realtime to improve scalability?

Participation
In terms of documenting work, I will probably document a lot of the overarching structure on mediawiki itself, and obviously in comments in the code. When coding I often tend to write an empty function and then describe it inline before writing the function itself; then once the function is written, I make the description more concise.

In terms of commits, I will probably do several local commits and then upload those to gerrit on a semi regular basis (for instance, at the end of a work day.) In my project proposal, I'm doing an independent extension that will hopefully interact with 2-3 other extensions at some point. I tend to make lots of small commits (equivalent to reflexively hitting the "save" button) but I know that can clutter a commit tree when it's shared so I'll attempt to keep that to a minimum when intersecting with these other extensions. In terms of asking for help, I've already found the #mediawiki-visualeditor, where my mentors are denizens, an extremely helpful and responsive place. One challenge is that I'm 8 hours off timezone-wise from the visual editor team, which means that our work days overlap by only an hour. However, I am happy to chat later in the evening as I find this a relatively low bandwidth activity.

About you

 * Education completed or in progress:
 * B.A. Biological Sciences Cornell University, 2008
 * M.S. Ecology and Evolutionary Biology, 2009

DevChix mailing list
 * How did you hear about this program?


 * Will you have any other time commitments, such as school work, another job, planned vacation, etc., during the duration of the program?


 * 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)?

I'm only applying to OPW: WikiMedia and CPython.

Past experience

 * Please describe your experience with any other FOSS projects as a user and as a contributor:


 * Please describe any relevant projects that you have worked on previously and what knowledge you gained from working on them (include links):


 * What project(s) are you interested in (these can be in the same or different organizations)?