[Project] TemplateWizard for WikiEditor

Posted by The bugalore on Saturday, April 13, 2019

TOC

One of the perks of working at an open source organization like mine is that I get to talk about my work projects with the world. Everything I do as part of my work is public and accessible to anyone who wishes to see it.

TemplateWizard is one of the first projects I undertook as a Product Manager that has major user-facing functionality. The project was requested during the 2017 Community Wishlist Survey and made it to #5 in the results. My team, Community Tech at the Wikimedia Foundation conducts the Wishlist Survey every year and commits to working on the top 10 projects that surface in the survey.

The project is to allow advanced editors to quickly and easily add templates to wiki pages. This functionality already existed for VisualEditor but was missing for the widely-used WikiEditor. The task was to implement the wizard for WikiEditor.

I kicked off the project with a technical investigation on existing solutions and what is and isn’t feasible. Based on feedback from the team, we decided to create a proof-of-concept user script to play around with. I put together a rough design in Balsamiq for the prototype and we got it up and running pretty quickly.

Balsamiq mock for TemplateWizard prototype

I put out a call for feedback and we received some good feedback about the functionality which gave us a chance to revise the functionality. Some of the feedback we heard included:

  • Allow users to add multiple fields in one go
  • Allow adding blank fields
  • Support mapping input fields with Wikidata
  • Allow edits to existing templates in a page
  • Show field and template metadata

In the meantime we ended up getting a designer for the project who worked on a more professional design for the wizard and made recommendations for improving usability of TemplateWizard, including a two-panel UI which vastly improved the product experience and made it much more user-friendly. The designs make use of OOUI components which is WMF’s own frontend library.

We then worked on a second iteration of the product with the fresh designs and converted it into a MediaWiki extension which made it simpler to deploy to all WMF wikis. The redesign got rave reviews! It is a lot more user friendly and modern.

TemplateWizard redesign TemplateWizard redesign
Adding a new template Adding fields from the sidebar

We also added extensive instrumentation to track feature usage. In particular we wanted to get some data to ensure the feature wasn’t being abused for infobox-wars on English wikipedia, which was raised as a concern by a user. After all that, we enabled the extension as a beta feature on all wikis.

Fast forward six months. Looking at the data collected over that time period, we didn’t see any feature abuse - in fact we saw some pretty decent usage statistics for the feature. Emboldened by this, last week we took the feature out of beta and enabled it by default on all projects. 🙌

This culminates almost a year long work on this project done by me and my team. It has been a very exciting first project to have taken on as a product manager. I had a great team and a very supportive community for this project and I’m grateful to all of them for their work!

As with any open source project, this project isn’t quite done yet! We hope to add some more requested features in coming few months. Also, as with any open source project, patches are always welcome. :)