Wikistats is the public statistics website of the Wikimedia Foundation. Its main purpose is to add context and motivate our editor community by providing a set of metrics through which users can see the impact of their contributions in the projects they are a part of. Wikistats 2.0 is a recently released website, developed by the WMF’s Analytics team, that will replace Wikistats in the near future. Wikistats 2.0 is intended to:
- Update the website’s (Wikistats) interface
- Provide access to data in an analytics-friendly form
- Be easier to maintain and improve
Wikistats 2.0 is currently in production but still in alpha stage. There are some improvements that need to be made in order to consider Wikistats 2.0 a full replacement of its predecessor (Wikistats). The objective of this GSoC project was to improve Wikistats 2.0 front-end, bringing it closer to a finalized product possibly Beta.
Wikimedia Foundation’s GSoC 2018 task lists all the subtasks that were implemented during the timeline of this GSoC project.
Contribution to Wikistats 2.0 Codebase
Alternatively it can also be viewed github.
Work-In progress tasks
This gerrit patch is still a work-in progress.
Benefits of this GSoC project
- This project took Wikistats 2.0 close to a finished product meant to replace its predecessor (Wikistats).
- It made the frontend of Wikistats 2.0 more user friendly (aesthetically & functionally).
- It fixed some of the minor as well as major bugs in the Wikistats 2.0 interface which included some of markup/accessibility issues and UI features that misled users.
- The project added few new features to the interface of Wikistats 2.0 such as, the all new Legacy Pageviews Metric, new UI for footer & topic explorer, dynamic popups for bar & line charts etc.
What have I learned from this project?
Last 3 to 4 months that I have worked on this project with the Analytics team of WMF have been a huge boost to my coding & communication skills. From updating Wikistats 2 interface using VueJS, Webpack & Semantic User Interface to computing metrics by extracting data from MediaWiki databases using REST API, processing it and restoring it in an analytics friendly form so metrics can be extracted easily. I’ve learned to work with D3.js to provide access to data in an analytics friendly form by producing dynamic & interactive data visualizations & used CrossFilter to explore large multivariate datasets in the browser. I have resolved accessibility & markup issues of Wikistats 2 according to Web Content Accessibility Guidelines (WCAG) & Accessible Rich Internet Applications (ARIA). I’ve also, very importantly, learned how to present my idea effectively to a team so that they can easily visualize my thinking behind it. I even practiced remote pair programming over hangouts with my mentor Marcel which was a really fun and new experience for me.
From good job claps to nit-picky constructive code-reviews, I enjoyed every bit of this GSoC project.