Page MenuHomePhabricator

GSoC 2019 Proposal: Build statistics toolset to support WM-HU editor retention grant
Closed, DeclinedPublic

Description

Profile

Name : Himanshu Jotwani
Time zone : UTC +5:30
Email : hjhimanshu01@gmail.com
IRC nick : hjhimanshu01
Github : https://github.com/hjhimanshu01
Location : India
Working hours : 10:00 am to 3:30 pm UTC [Reachable anytime through Email , Skype , Freenode if required]

Synopsis

The project aims to create a tool support the editor retention program of Hungarian Wikipedia (to be hosted on Toolforge) . The development of portal will be done keeping in mind the possibility of it's usage in other wiki's.

Deliverables

This project has a goal to create a tool that :

  • Decreases the negative experiences and strengthens the positive experiences of the contributors
  • Tracks the statistics of the Hungarian Wikipedia based on several parameters including:
    • Number of Editors (recently joined , recently stopped participating)
    • Number of edits in a given timeframe
  • An option to export the data in convenient format (wikitable or csv)
  • An API to export the data
  • Support filtering of data based on appropriate parameter
  • Track retention rate over time

Also apart from these issues , I would like to keep working on the project to support Hungarian Wikipedia on the full year project , also completing the stretch goals

Mentor: @Tgr (Gergő Tisza)
Co-mentor: @Samat (Tamás Mészöly)

Timeline

PeriodTask
May 7 to May 27Community bonding period. Planning the design of the tool as well as reviewing earlier surveys conducted on Hungarian Wikipedia Platform to develop ideas about other features to be incorporated. Compiling a list of To-do tasks, Community Bonding.
May 28 to June 5NodeJS runtime environement , developing login/logout using passportJS (previously made a project on that)
June 6 to June 18Design the core elements of the app (backend work) (possibly kubernetes) , hosting on toolforge (basic UI)(queries based on number of edits)
June 19 to June 21work on providing filtering support possibly by semanticUI,bootstrap or any developing a way (providing a dropdown to select particular key)
June 22 to June 24Reviews from mentor , testing , bug-fixes
June 25 to June 28Phase I evaluation
June 29 to July 3Wireframe UI components (possibly ReactJS or any other Front end tool)
July 3 to July 8Read about caching the results and testing the app periodically
July 9 to July 13Develop a support for caching periodically based on time of least activity of portal
July 14 to July 18Reviews from mentor , testing , bug-fixes
July 19 to July 22Work on Providing transitioning data in a more graphical way using Charting libraries
July 23 to July 28Phase II evaluation
July 29 to August 7Work on providing data based on reviews / based on user provided dates
August 8 to August 12developing an API to expose the information based on credentials (Admin or User) , ( providing authentication tokens in header)
August 13 to August 15Work to make the tool have the ability to provide the flexibility of choosing the desired type of format to export data (csv or wikitable)
August 16 to August 20Testing , bug fixes and documentation and reviews from mentor
August 21 to August 28Mentors submit final student evaluations.
September 3Final results of Google Summer of Code 2019 announced

Work mentioned before "Phase Evaluation" in timeline would be merged with the time after that , already taken that in consideration

Deliverable

  • Tool that provides exact set of reports to track health of Hungarian Wikipedia Community .
  • Option to download that data , graphs
  • API to expose that information based on credentials.
  • Provides "Funnel" view of Hungarian Wikipedia Community.
  • Option to view past and present performance based on charting libraries so data can be compared

Tracking Growth of Community on following parameters (based on research conducted)

Participation

I plan to be a part of the long project of the Hungarian Wikipedia community as a developer , Also would be communicating the progress of project regularly to the mentor as well as incorporate the feedback. Also would be regularly writing blog posts about my experience (depending on the tasks completed) and would like to do other tasks for retention of editors on the Hungarian Wikipedia as well as it's growth.

About me

I am pursuing Bachelor of Technology in Computer Engineering from National Institute of Technology, Surat. I have been contributing to WikiEduDashboard for a while now. I have experience in Web Development , particularly NodeJS , ReactJs , Python , JavaScript , PHP and have the knowledge of how to incorporate SQL or NoSQL databases in a project. I would like to contribute to the project as well at the same time to collaborate with excellent community members.

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

I'll be able to devote 35-45 hours/week as college classes will be over by 10th May and I don't have any other commitments during the duration of program

What does making this project happen mean to you?

I believe that Wikimedia community should keep growing , without nationalistic , cultural or any other boundaries , I would love to be a part of this whole one year Hungarian Wikipedia Editor Retention Program if allowed to , though would be lesser active depending on college schedules. This project for me is a chance to be a part of the large open source community.

Initial Mockup

upload-ui.png (586×1 px, 107 KB)

Find editors by number of edits

upload-bar.png (229×828 px, 16 KB)

upload-graph.png (237×846 px, 15 KB)

Graphical Diplay and option to download data in csv/wikitable

Past Experience

As the project requires the applicant to have web related coding task , I have been contributing to WikiEduDashboard , some of the Pull Request and contributions that I have made.

Issue: ArticleFinder query parameters should be included in URL
Link to PR: Adding Query Parameter in URL
Status: Merged

Issue: Update react-redux to v6 , dependabot not able to update
Link to PR: React-redux v6
Status: Merged

Issue: Search error Bug
Link to PR: Bug corrected
Status: Merged

Issue: ArticleViewer Permalink doesn't work
Link to PR: Conditionally Rendered Link
Status: Merged

Issue: Article title autocomplete
Link to PR: Search suggestions added
Status: Work In Progress

MicroTasks Completed

Bounce Rate of users

Technical Skills

  • Programming Languages: Python , JavaScript , PHP
  • Frameworks: ReactJS , React-Native , JQuery
  • Familiarity with Databases: MongoDB , MySQL , PostgreSQL
  • Operating System: Linux , Windows

Other Projects

A collaborative platform for remote teams to wireframe / develop ideas (project developed in a 24 hour hackathon)
Link to Github: Github Link
Link to live webapp on heroku: Live App

An authentication app built entirely on node that accepts facebook / twitter login requests (using Auth0 API).
Link to Github: Github Link
Link to live webapp on heroku: this app isn't currently live

A Reputation Builder app , builds a reputation score based on social media profiles , plots simple chart using Chart.js
working with charting libraries to plot data
Link to Github: Github Link
Link to live webapp on heroku: this app isn't currently live

Future commitments to the program

Based on the research Teahouse (on the editor retention page), would like to pilot a project based on the following points :

  • Give new users a place where they can easily and comfortably ask questions and receive explanations
  • Give new users a place to interact with one another and provide peer support as they learn to do things the Wikipedia way.

Event Timeline

Hjhimanshu renamed this task from [Proposal: Build statistics toolset to support WM-HU editor retention grant] GSOC 2019 to Proposal: Build statistics toolset to support WM-HU editor retention grant for GSOC 2019.Apr 8 2019, 9:39 AM
Hjhimanshu updated the task description. (Show Details)

Thanks for applying! Also, thanks for the additional research links, they were interesting. Some comments:

  • the ability to log wouldn't be really useful here - the data is public, and the queries are not flexible enough to be worth providing some kind of personalization.
  • adding different export formats should not take much time (less than a day)
  • charting probably won't take a week, given that this tool only needs simple line charts
  • "Design the core elements of the app" OTOH will take more time and should be broken up. The funnel data, list of targeted editors and toplist require fairly different code. You should probably pick just one of those for Phase I and aim for an MVP, and do the others later.

If you can find the time, doing a small related coding task would be useful: implement something from the requirements, or something similar, on the query service Quarry. E.g. from the users who registered in the previous month (ie. 31-60 days ago), calculate the "bounce rate": the fraction of those who stopped editing (had no edits in the last 30 days).
See the database layout and Quarry's description for more information.

@Tgr , updated , mockups and microtask as well as timeline

Tgr renamed this task from Proposal: Build statistics toolset to support WM-HU editor retention grant for GSOC 2019 to GSoC 2019 Proposal: Build statistics toolset to support WM-HU editor retention grant for GSOC 2019.Apr 11 2019, 5:31 PM
Tgr renamed this task from GSoC 2019 Proposal: Build statistics toolset to support WM-HU editor retention grant for GSOC 2019 to GSoC 2019 Proposal: Build statistics toolset to support WM-HU editor retention grant.Apr 15 2019, 6:59 AM

(look for next steps in the email you'll receive shortly with an option to request for a debrief on why your proposal was not accepted)