Profile
Name : Harjot Singh Bhatia
Time zone : UTC +5:30
Email : harjot4995@gmail.com
Website : harjot4995.com
IRC username : harjotsingh
Gerrit : Gerrit-Harjot
Location : Delhi, India
Working hours : 7:00pm to 12:00pm( workdays ) and 11:00am to 9:00pm( weekends )
Synopsis
The project aims to update and upgrade MediaWiki Quiz extension while adding new features and removing legacy code.
Quiz extension is currently used on several WMF projects, such as Wikiversity but has lot of bugs and limited features for users.
The project will also work on the following :
- Importing bugs from wiki and resolving them
- Provide Unit Tests for the extension making it fault tolerant.
- Updating source code to current MediaWiki standards
- Provide Custom CSS classes
Benefits of this project include stability and functionality to the extension and comprehensive features for users of various Wikis.
Deliverables
- Importing and Resolving current bugs in the extension
- Importing known bugs from Wiki page to Phabricatior
- Resolving all bugs for the extensison
- Upgrading the code to MediaWiki standards
- Current code used by extension is outdated and deprecated by the standards.
- This deliverable will require the use of mediawiki standards such ResoureLoader instead of legacy code.
- The extension has lot of hard coded Css which needs to be moved.
- Writing required tests for the extension
- The tests for the extension will be needed to be modified after upgrading the code of the extension.
- New features and function would require new tests in order to ensure proper functionality.
- Adding Custom Css feature and improving design
- This deliverable would require modification to css design and adding another quiz parameter.
- Few known bugs are related to design of the extension, most of them will be handled while resolving bugs and new features will have interactive design.
- Updating User Documentation
- The user documentation would be updated after the code is upgraded and new features are added to the extension.
Timeline
Tasks to be completed | Timeline |
Community bonding period, contribute more by submitting and fixing bugs and understand existing code | 5 May to 30 May 2017 |
Importing and Resolving all bugs related to the extension | 30 May to 6 June 2017 |
Upgrading Code while removing legacy code | 7 June to 14 June 2017 |
Improving design, adding interactive javascript and improving code quality | 15 June to 23 June 2017 |
1st Term Evaluation | 26 June 2017 |
Learning phpunit and writing unit tests for the extension to provide reliable code and tolerance | 27 June to 13 July 2017 |
Adding Flexible CSS and class attribute to the extension | 14 July to 22 July 2017 |
2nd Term Evaluation | 24 July 2017 |
Making different classes for css and adding related logic to backend | 25 July to 6 August 2017 |
Writing User Documentation | 7 August to 12 August 2017 |
Final Report Submission | 14 August 2017 |
Final evaluation | 21 August 2017 |
Other Commitments : The work is more spaced out before the 1st Term Evaluation due to the university exams which will be over by 20th June.After the exams I can devote more time as I have holidays till end of July .
Participation
As MediaWiki uses Phabricator which is an set of powerful tools used for managing bugs and task, I also intend to use it for tracking bugs, features.It is also helpful for getting feedback from people part of the organisation.All bugs and features will have tasks linking to the project, it will allow easy tracking and monitoring.
The code base also uses Gerrit for reviewing and managing workflow.I'm comfortable with using gerrit for project development and management.
I can be contacted on email or IRC also I intend on using my outdated blog for sharing my experience while working on the project.I will try to weekly update my blog by writing new posts.
I believe IRC and Mailing lists are great place to seek help.It would also be great to get in touch directly with my mentors via email if possible.
About Me
I'm 21 year old Student from Guru Gobind Singh Indraprastha University pursuing Bachelor in Information Technology and Computer Sciences.
I've been part of MediaWiki since May 2015.I enjoy working on open source technologies and love to contribute.
It been a learning experience to understand practical development at large scale.I also enjoy working on competitive programming problems and learning algorithms.
Experience
- Micro-Task : T40372, T161318
- Worked as PHP developer at Daphnis Labs for 6 months.
Projects :- Feeontime is a finance based webapp in education domain.
- Worked on developing Webserver and dashboard for a book summary android app called Precily Server link ( credentials needed ), Webpage
- Apachange is a PHP package for ubuntu/debian that changes Apache server’s root directory
- Worked as Full stack developer intern for Ruk Solutions LLP for developing Feecount
- Academic Courses : Object oriented programming, Algorithm Desgin, Operating systems, Web technologies
- Other Resolved Tasks :
- Other merged patches : Patches
Other Info
Skills
-Programming Languages : C++, PHP, Javascript, HTML
-Frameworks and Libraries: CodeIgniter, jQuery, AngularJS, Bootstrap, PHPUnit
-Operating Systems: Linux, Windows
-Tools: Git, Gerrit, Latex, Gimp, Adobe Photoshop
-Database : MySql, SQL*plus