User:Jdforrester (WMF)

Jump to: navigation, search

James Forrester
Product Manager, VisualEditor team, Wikimedia Foundation
James Forrester, Product Manager, VisualEditor team

About me

I've been a Wikipedia editor since 2002 on the English Wikipedia and a few other Wikimedia projects (see my personal account). In May 2012 I joined the Wikimedia Foundation as the "Product Manager" for the VisualEditor team.

My work

My job is to help make sure the VisualEditor team understands what the community wants and needs, is focussed on the things that matter, and is engaging with and understood by the community.
Disclaimer: Although I work for the Wikimedia Foundation, contributions under this account do not necessarily represent the actions or views of the Foundation unless expressly stated otherwise. For example, edits to articles or uploads of other media are done in my individual, personal capacity unless otherwise stated.

Contact me

  • E-mail:
  • IRC: "James_F" on freenode
  • Skype: jdforrester
  • GTalk IM:

Current projects[edit | edit source]

VisualEditor[edit | edit source]

In the template dialog, adding a parameter now only shows three options at first, rather than all available ones. The second edit tab – either the wikitext editor's "Edit source", or VisualEditor's "Edit" or "Edit beta" – will now fold into the drop-down menu if there's not enough space on the user's screen (bug 50225). The size changing controls in the media editing dialog have been simplified to have "make full size" be a secondary button and the size values be shown as "width x height px" on a single line.

A number of urgent changes were made to the OOjs UI framework, with related changes in VisualEditor, that caused and later fixed some breakages to the testing site; these were released early (bugs 63484, 63544, 63547, 63554). A change from last week that meant that tools needed to be updated wasn't applied to the switching to source editing and formula editing tools; these were fixed and released early to avoid disruption (bugs 63505, 63541).

Changing the format of a list item which has a listed nest inside it no longer breaks (bug 63209). Double-clicking on a hieroglyphics node now opens that inspector (bug 63651). A bug that meant that applying a link to a selection of text which already had a link in it failed was fixed (bug 63386). We also fixed a bug that meant that switching to wikitext always triggered an edit conflict warning for logged-out editors (bug 56835).

Content should now not 'flash' when the window is resized in some cases. Some potential issues related to the focus changing when closing and opening dialogs and inspectors were cleaned up. Text directionality is now stored in the data model rather than the editing surface, which should fix some future issues with dialogs opening in RTL wikis with LTR content blocks. The preference to disable VisualEditor for the wikis which are in opt-out state has been moved from the "beta" section of MediaWiki's editing preferences to the "editing" one, as part of the fallout from that section being removed (bug 28555). OOjs UI was tweaked to display labels next to fields now grey out in sync with the field they describe.

The browser tests were updated to point to a simpler, less fragile locator for the list buttons, and fixing the edit mode switching test to actually fail when it breaks. The continuous integration system has a new tool, "banana-checker", to ensure that every new message has documentation before it is merged.

You can monitor the live results of the automated browser tests (triggered every twelve hours) on the server. A complete list of individual code commits is available in the 1.23/wmf21 changelog, and all Bugzilla tickets closed in this period are on Bugzilla's list.

Parsoid[edit | edit source]

March saw the Parsoid team continuing with a lot of unglamorous bug fixing and tweaking. Media / image handling in particular received a good amount of love, and is now in a much better state than it used to be. In the process, we discovered a lot of edge cases and inconsistent behavior in the PHP parser, and fixed some of those issues there as well.

We wrapped up our mentorship for Be Birchall and Maria Pecana in the Outreach Program for Women. We revamped our round-trip test server interface and fixed some diffing issues in the round-trip test system. Maria wrote a generic logging backend that lets us dynamically map an event stream to any number of logging sinks. A huge step up from our console.error based basic error logging so far.

We also designed and implemented a HTML templating library which combines the correctness and security support of a DOM-based solution with the performance of string-based templating. This is implemented as a compiler from KnockoutJS-compatible HTML syntax to a JSON intermediate representation, and a small and very fast runtime for the JSON representation. The runtime is now also being ported to PHP in order to gauge the performance there as well. It will also be a test bed for further forays into HTML templating for translation messages and eventually wiki content.

ResourceLoader (maintenance-only)[edit | edit source]