Profile Information
Name : Venkata Sai Sumanth Javvaji
Email : saisumanth532@gmail.com
IRC nickname : saisu69
Github : https://github.com/sumanth699
Location : Guntur, India.
Typical working hours (include your timezone) : 10:00 AM to 7:00 PM UTC+5:30
On college days: 6:00 PM to 11:00 PM UTC +5:30
Synopsis
The project aims to develop code samples in Javascript and PHP for demonstrating the use of MediaWiki Action API modules with the following objectives.
- Design a tabbed window on these API's using a template or a gadget
- To bring consistency in the sample codes
- Create code samples in Javascript and PHP
- Document the code samples on Wiki
- Develop a demo web application on the usage of Action API's
We create code samples in Javascript and PHP by using code generator or manually for all the API pages that have proper documentation, document these samples on-Wiki and develop one or more demo web applications on their usage. Finally we will design a page on Wiki that contains all the API's with a tabbed window displaying sample codes in different programming languages and their documentations. We will develop a demo application using Python by importing Flask module for the backend. And for frontend, we will use HTML and CSS.
Possible Mentor(s): @srishakatux @srodlund
Have you contacted your mentors already?
- Yes, I've contacted @srishakatux and informed my interest in working in this project.
Deliverables
- Describe the timeline of your work with deadlines and milestones, broken down week by week. Make sure to include time you are planning to allocate for investigation, coding, deploying, testing and documentation
- After the completion of this project, we will be having the MediaWiki Action API's on a single page with tabbed windows showing consistent sample codes in Javascript and/or PHP and their documentation by which users can easily understand their usage.
Timeline
Period | Task |
---|---|
May 6 to May 27 | Community bonding period. Studying about MediaWiki Action API's, about existing code samples in different programming languages and studying about API modules. Planning design of the code generator to generate Javascript or PHP files for modules supporting get request. Planning the design for creating a tabbed window to show the responses. Contacting the mentors and clarifying all the doubts with them regarding the project. |
May 28 to June 4 | Getting familiar with the code samples already present. |
June 5 to June 10 | Designing a code generator that will generate Javascript and/or PHP output files or use the available one. |
June 11 to June 19 | Generate code samples in Javascript and/or PHP using the generator or manually. |
June 20 to June 24 | Testing the code samples generated and fixing the bugs raised. |
June 24 to June 28 | Phase I evaluation |
June 28 to July 10 | Designing a page that displays all the API's with tabbed windows via a template or a gadget. |
July 11 to July 20 | Starting the documentation work for all the code samples. |
July 20 to July 22 | Checking the Documentations and moving them from Drafts. |
July 22 to July 26 | Phase II evaluation |
July 26 to August 10 | Finalizing the API's on which demo apps are to be created. |
August 11 to August 19 | Creating the demo application using Python Flask for backend support and HTML and CSS for the frontend. |
August 19 to August 26 | Submitting the code samples developed, their documentations and demo app tutorials to the mentor, publishing the news on mailing list and solving any raised bugs.Submitting the code samples developed, their documentation and demo app tutorials to the mentor, publishing the news on the mailing list and solving any bugs identified. |
August 26 to September 2 | Mentors submit final student evaluations. |
September 3 | Final results of Google Summer of Code 2019 announced |
Participation
- I will make a new repository on Git Hub and maintain two branches. The code will be uploaded to the developer branch periodically and will be merged with the master branch once review and testing’s are done by the mentors.
- I will use Phabricator for managing bugs and subtasks.
- I will be available via Gmail/Zulip to be contacted when needed in the non-working hours.
About Me
Tell us about a few:
- Your education (completed or in progress)
- Currently, I am pursuing third year Bachelor of Technology in the stream of Computer Science Engineering at Vasireddy Venkatadri Institute of Technology, Nambur, Andhra Pradesh, India. I will be graduating in June 2020. I am an enthusiastic learner, with consistent motivation to learn and try out new things.
- How did you hear about this program?
- I got to know about this program from my senior and also from @srishakatux during a remote session on “How to contribute to technical spaces of Wikimedia”, a MediaWiki Training that happened in our college, conducted by the Wiki-club, VVIT WikiConnect.
- Will you have any other time commitments, such as school work, another job, planned vacation, etc, during the duration of the program?
- We will be having summer vacation from May 7 till June 5. After the vacation, I will be taking permission from my college to exempt me from regular class work and to permit me to work on this project. I’ve already had a discussion about this with our college’s Academic Secretary.
- We advise all candidates eligible for Google Summer of Code and Outreachy to apply for both programs. Are you planning to apply to both programs and, if so, with what organization(s)?
- I am only applying for only Google Summer of Code.
- What does making this project happen mean to you?
- Currently, there isn't a page that shows the tabbed window view of the API’s under MediaWiki Action API and consistent examples in a single language for those with proper documentation. Thus by completing this project I aim to make consistent code samples and proper documentation on their usage and will bring them together to a single page.
Past Experience
Describe any relevant projects that you've worked on previously and what knowledge you gained from working on them. Describe any open source projects you have contributed to as a user and contributor (include links). If you have already written a feature or bugfix for a Wikimedia technology such as MediaWiki, link to it here; we will give strong preference to candidates who have done so
- During my last summer vacation, I interned with a software company Coprimes and made changes in their already existing Web App related to school attendance system, as it is not an open source organisation the part I changed cannot be shown.
- After that, I learnt how to make a chatbot and using Google dialogue flow I created a static chatbot that checks and tells us how much balance is left in our bank account.
- I also got certified training on Amazon Alexa and also created a skill set by which we can locate a nearby Cafe. You can see the conversation with Alexa here.
- Using Deep learning Techniques Keras, Tensorflow and pandas I developed and trained a model that can identify the plant seedlings of around 12 varieties which are of different stages and can also describe at what stage of growth the plant is, the source codes and abstract of this project can be seen here.
Open Source Contributions
- I’ve been contributing to Wikipedia and its sister projects since 2017. I mainly contribute to Wikidata, Wikimedia Commons, and Wikipedia. I’ve been involved in organizing several edit-a-thons, photo-walks and meetups in our college. After a year of continuous activities, we’ve successfully established a Wikiclub in our college, VVIT WikiConnect, with the help of another experienced Wikimedian, which is probably the first in India, and its annual plan is funded by Wikimedia Foundation. I am serving as the founding Lead Coordinator for this club, which has around 15 active editors.
- Coming to technical contributions I got to know about the Technical areas of Wikimedia during the Mini MediaWiki Training session and from then I solved five patches they can be seen below:
- (Merged) T216386: Use ChangesListSpecialPageQuery Hook instead of SpecialRecentChangesQuery https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/OnlyRecentRecentChanges/+/492354/
- (Merged) T216437: Added Telugu magic word for #CountDownClock in CountDownClock.i18n.magic.php https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/CountDownClock/+/492367/
- (Merged) T216387: Removed the usage of global variable $wgUser, $wgLang, $wgOut https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/MassEditRegex/+/492450/
- T216480: Convert FirstSteps to use extension registration https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/FirstSteps/+/492460/
- (Merged) T216476: Convert WhiteSpace to use extension registration https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/WhiteSpace/+/493168/
Any Other Info
Add any other relevant information such as UI mockups, references to related projects, a link to your proof of concept code, etc
- My Wikimedia user page can be seen here.
Microtasks Completed
- Converted the file login.py to login.js. https://github.com/wikimedia/MediaWiki-Action-API-Code-Samples/pull/109
- Converted the file watch.py to watch.js. https://github.com/wikimedia/MediaWiki-Action-API-Code-Samples/pull/108