Page MenuHomePhabricator

GSoC proposal: Create a subpage for statistics and charts related to a hashtag search
Closed, DeclinedPublic


Name: Juma Ali
IRC nick: Jayczar
Location: Kenya (UTC+3)
Typical working hours: Between 9am to 8pm UTC+3
Wikimedia is the greatest medium for free online education. Various Wikimedia projects are edited by users all over the world. The hashtag tool allows users to search for the uses of a hashtag in Wikimedia edit summaries. As of now, the functionalities of the tool are quite basic, a few simple search options and listed results, with the option to download the results as a CSV or read them as JSON. Many Wikimedia campaigns uses this tool to track edits and would like to get more information on a particular search. This project “Create a subpage for statistics and charts related to a hashtag search” aims at creating a sub page where a user can view a graph of number of contributions per Wikimedia project/number of edits per unit time and a table for number of edits per user. The users should be able to download the data as CSV.

Mentors: @Samwalton9
Final Summary
When the project is complete the tool will have the following features:

  • The main page will have a button which will be linked to the 'statistics page'
  • The statistics page will have a table and a graph for top projects
  • The statistics page will have a graph for number of edits per user
  • The page will a have a button for downloading the statistics as CSV.
  • Test coverage for all new APIs will be available.
  • It will also have a table for top users(top 10).

Next Steps
In case we have extra time, the following features will be added:
• A link will be provided which will lead to a page displaying statistics of all the users: the number of projects each user has edited,the number of edits per project for each user etc.
• Some users might want a full picture of all the projects, a button will be created which will lead to a page with full statistics of every project.

May 7 to May 30
Community bonding period. Understanding the basic functionalities of the tool. Set up developments environment. Explore python libraries for charts and choose which one is best for use in this project. Understanding the JSONResponse APIs and how to implement them for retrieving statistical data.

May 30 to June 12
Configuring an API for edits vs. time bar graph. Creating a button in the main page for “show statistics” which will lead to the statistic page.
June 13 to June 19
Designing basic layout of the statistic page. Include tags for rendering charts
June 20 to June 26
Create tables for displaying Wikimedia projects which are present in the search results and the number of edits belonging to that project sorted by decreasing order of their number of edits and connect it to the API.

June 26 to June 30
Phase I evaluation. Documentation and bug fixes.
June 30 to July 7
Create a link for downloading the statistics as CSV.
Write APIs for the same.
July 8 to July 14
Integrate the download CSV API with UI.
July 15 to July 31
Gather feedback from the users by announcing the features on mailing lists or other channels. Write test cases for the new APIs.

July 28
Phase II evaluation
August 1 to August 8
Improve feedback based on the data collected from the user’s feedback messages.
August 9 to August 15
Improvements based on the feedback received and find and document useful features that can be added.
August 16 to August 28
Bug fixes, Writing documentation and Updating appropriate guides. Code clean-up for submission.
August 29 to September 5
Mentors submit final student evaluations
September 6
Final results of Google Summer of Code 2018 announced

• Work on a separate branch on git and uploading code to the forked repo almost on a daily basis.
• Creating pull requests as and when a complete feature is done.
• Online on IRC in my working hours (9am to 8pm UTC+3)
• Communication on tasks will be through commenting on subtasks to the project created on Phabricator.

About me
Currently a freshman in Jommo Kenyatta University of Agriculture and technology (JKUAT) pursuing a degree in computer science. I heard about this program from a meet up organised by the developer student community (DSC). My summer holiday is in line with this program meaning I won’t have to compromise my studies as this is a full time job.
I am eligible for GSoC 2019. I have not engaged in open source development before but I am hoping this will be a good kick-start for me. This would be an exciting chance for me to make an impact to the world while at the same time get exposure on real world applications, collaboration of code and interacting with open source community.
I am an Ubuntu user. I have used a lot of open source software. I have seen the impact of open source software and this drives me into creating even more open source software. Hence, I want to make others feel the same about open source applications.

Past Experience
I am good at problem solving. I have solved problems on kattis. My score is incredible.
I have gained experience on python, Django framework, bootstrap, html and css. I have created a few projects on django and bootstraps/css/html available on my github account (they are still under development though).
I am also good with version controlling with git and github. Furthermore, I am working on to improving my skills on docker containers as well.
Micro tasks completed
I have fixed a few bugs in the project:

Event Timeline

JayCzar created this task.Apr 6 2019, 10:58 AM

I have created my first draft proposal as above. Kindly review and give feedback on any improvements.

Thanks for your proposal!

I notice the 'Final Summary' section appears to be identical to the one in T218986 - could you please ensure that everything in this proposal is written in your own words?

JayCzar updated the task description. (Show Details)Apr 8 2019, 8:55 PM

If you would like us to consider your proposal for review, please move it to the submitted column on Google-Summer-of-Code (2019) board.

(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)

srishakatux closed this task as Declined.May 7 2019, 12:25 AM