|◀||Abstract Wikipedia Updates||▶|
- User research reports and lessons learned.
In order to understand the potential contributors and users for Wikifunctions better, we had Jeff Howard conduct user research to better understand the potential contributor base for Wikifunctions. The results of this work are now available in the form of two reports on Wikimedia Commons:
Wikifunctions mental models – 18 participants were interviewed in order to understand the current mental models about Wikifunctions, and to uncover potential problems. Below are a few of the problems found during this work. Please find more details in the full report.
- The goals of the project were confusing: what does Wikifunctions aim to achieve?
- The mock-ups were confusing, and they didn’t explain how the project would work, or what one would do on the site.
- It was unclear whether non-programmers could contribute to or benefit from the project.
The latter exposes a particular challenge for the project. I’ll come to it later, but one main goal of the project is to be accessible for people who do not currently see themselves as programmers. In fact, we think that people who are currently non-programmers may benefit from Wikifunctions most!
Wikifunctions feedback – 10 developers were interviewed in order to see what developers think of the Wikifunctions idea. There are many interesting ideas and discussions in this report:
- Discussions of GitHub vs MediaWiki versioning.
- How well will the UI support more complex implementations?
- How to curate many different implementations for a function?
The developers correctly identified that Wikifunctions is not about whole programs, but about individual functions that can then be used like a toolbox for many purposes. The discussions and questions also laid bare the expectations developers might have for Wikifunctions, and where we need to make our communication clearer in order to not disappoint potential contributors.
Both reports indicate some of the challenges Wikifunctions will face. We are taking the reports seriously and are using them as input for our UX design. Even given these results, our goal remains to make writing functions and implementations in Wikifunctions accessible to novice coders, and Wikifunctions usable and understandable by people who are not already coders.
We are currently designing the function editor to be more approachable, intuitive, and mobile-friendly. The video here gives you a first view of how to define and edit a function. It involves a number of simple steps, while providing guidance throughout the process. We can see an automated diagram of the function on the right. Adding testers and implementations can also be done directly from within the function editor.
The implementation of this interface should land in the prototype soon, so you will be able to test it 'live'. We hope that this makes function creation and editing in Wikifunctions considerably easier, more understandable, and more enjoyable than the initial, placeholder experience.
Enjoy reading the reports and watching the video!