If you are accepted, fields that are marked "(public)" will be displayed on a public acceptances page. If you prefer different information to be displayed publicly than you want to provide in this form, please provide both a private version visible only to the coordinators and mentors of Outreachy, and a public version to be displayed publicly.
Name (public):
Kamakshi Suri
Do you meet the eligibility requirements outlined at https://wiki.gnome.org/Outreachy#Eligibility (if no, explain why not)?
Yes
Preferred pronoun (e.g. she, he, they):
She
E-mail address:
kamsuri5@gmail.com
IRC nick (public):
kamsuri
Internet presence (e.g. web page, blog, portfolio, GitHub, Twitter, LinkedIn links) (blog will be displayed publicly):
Github: https://github.com/kamsuri
Linkedin: https://www.linkedin.com/in/kamakshi-suri/
Location (city, state/province, and country) (public):
City: New Delhi
State: Delhi
Country: India
Education completed or in progress (include university, major/concentration, degree level, and graduation year):
University: Netaji Subhas Institute Of Technology, New Delhi
Education in progress.
Major: Computer Engineering
Degree Level: B.E
Graduation Year: 2018
How did you hear about this program?
A friend of mine participated in outreachy last year.
Are you applying for Google Summer of Code and, if so, with what organization(s)?
Yes, i am applying for Google Summer of Code with Mediawiki organization for the same project.
Please describe your experience with the organization's product as a user and as a contributor (include the information, as well as a link or an attachment, for the required contribution you made to the project you are interested in here):
As a user, idea of the project really fascinated me as it will ease out the work required to upload images at Wikimedia:Commons by GLAM users. These are some of the advantages which according to me a user will experience:
1) No manual uploading is required- easy upload on one button press.
2) Flexibility to upload multiple images at same time.
3) No requirement of any technical knowledge.
4) No need to deal with permissions.
5) Everything will be automated from tags fetching to title generation, no need to enter any details.
6) Overcoming the hassle(download, metadata updation, etc) required to upload an image from an external source.
As a contributor i find this project challenging and exciting, both at the same time. I find it challenging as it will extract the best out of me and exciting because it will allow me to work on something new along under some talented mentors. This project doesn’t have an already existing codebase which will allow me to explore for options and select the best out of the lot which implies no limitations. I love automated things as they ease out one’s work and this project will allow me to contribute to such an automation. As a contributor the problems which this project will resolve will majorly be batch uploading, no uploading of duplicate images with different names on Commons, no need to design different upload scripts for different GLAMs and making the process of uploading modular.
Please describe your experience with any other FOSS projects as a user and as a contributor:
I have contributed to FirstAide-Web app by systers organization which is a very handy tool for people in emergency situations.
Please describe any relevant projects that you have worked on previously and what knowledge you gained from working on them (include links):
Online-Treasure-Hunt: I have developed a platform for online treasure hunt. This is a ready to use portal to host an online-Treasure-Hunt. I built it for a competition hosted by the technical society of my university. It is coded in native PHP and is safe from various security flaws. From this project i have learnt how to deal with the problems encountered in a live running code. From this project i have also gained knowledge of various aspects of security issues and improved my coding practice to make my code efficient and flexible.
Link: https://github.com/kamsuri/Treasure_hunt
Survive: Web portal for a Disaster Management Android Application android application. It is designed for volunteers where they can register and receive messages. I have also deigned API through which information can be exchanged between web portal and android application. It is build in PHP. It is a project of my first hackathon, through this project i learnt how to make a final product in a simulated time and realized the importance of modular and efficient coding.
Link: https://github.com/kamsuri/Survive
Face-Recognition Tool: This is a simple python script which detects faces in an image. This project was a good learning experience for me. I majorly learnt about OpenCV and python through this project.
Link: https://github.com/kamsuri/Face-Recognition
Hospital-Hacks: It is an interface made to reduce the gap between hospitals and the patients. It aims at automating all the thought process that goes into looking for a hospital around one’s house considering their needs. It gives access to live scenario of the hospital to the user. Doctor and reception interface is built in PHP and for user there is an android application.
Link: https://github.com/kamsuri/Hospital-Hacks
Moksha-Website: This is a portal for Inter college festival of my university. I have coded a few APIs for event registration and contestant registration for this website. Through this project i learnt to code modularly and gained an experience to work with with a huge team.
Link: https://github.com/kamsuri/MokshaWebsite
Content-Management-System: I have also designed and coded a content-management system for computer society of my university. It is developed to smoothen the content control of website and social media platforms. This project helped to learn how to integrate various APIs into my code efficiently. Through this i learnt to deal with all the permissions issues required to access external sources.
Link: https://github.com/kamsuri/Content-Management-System
What project(s) are you interested in (these can be in the same or different organizations)?
I am interested in Single Image Batch Upload project which is under Wikimedia organization.
Who is a possible mentor for the project you are most interested in?
Mentor: Basvb
Co-mentor(s) : Tom29739, zhuyifei1999
Please describe the details and the timeline of the work you plan to accomplish on the project you are most interested in (discuss these first with the mentor of the project):
**Project Schedule**
If selected for the project, I’ll make sure to put the best of my efforts in completing this project and making it to its best version.
**Minimum Viable Project(MVP)**
The minimum viable project aims at completing the following tasks before the end of June. The following are the tasks:-
- Designing UI of the platform.
- Tool to generate template for upload file using metadata mapping of selected GLAM.
- Coding an upload script in a proper working condition.
**Initial homework (May 15 – May 29)**
Before the internship begins I’ll make sure that i get a much better understanding of the project and ways to improve it. I’ll do some reading and get to know the exact skill required to start with this project and work on it. Exploring would allow me to try and select the best technique which can be used. My main focus would be to do as many microtasks as possible, so that i can spare enough time for proper testing at every phase of the project.
**Week 1 (May 30 – June 5)**
The first task would be to set up a proper front end for the user.These are a few key points which i will consider while working on front end:-
- Proper layout which will ease out the work flow of the system
- Structure and navigation
- Simple and elegant front end
- Responsive design
**Week 2 (June 6 - June 12)**
The next step would be to code the upload script. This will be the first phase of coding upload script, it will include dealing with following aspects:-
- Identify selected GLAM from the hash table
- Call to GLAM’s API and getting API key
- Selection of image(s)
- Dealing with Licenses
**Week 3 (June 13 – June 19)**
This would be the second phase of of coding upload script and will focus on:-
- Getting URL of image
- Download image and check if it already exists
- Collecting tags and generating filename for the image.
**Week 4(June 20 -June 26) - Week 5(June 27 -July 2)**
This would be the final phase of coding upload script.
- Build final template to upload from metadata mappings
- Upload file using Oauth permissions.
- Testing of upload script.
By the end of June, Minimum Viable Product is completed and is tested.
**Week 6(July 3 -July 9) - Week 7(July 10 -July 16)**
From July onwards i will start working on Core extensions
- Designing mapping for each GLAM
- Testing of all the mappings with our upload script
**Week 8(July 17 -July 23) **
- Integration of button for upload on GLAMs website.
- Testing of integration
**Week 9(July 24 -July 30) - Week 10(July 31- Aug 6)**
This phase will include working on a few extra features.
- Parsing dates
- Connecting to wikidata elements
- File Title Generation
- Working on feedback
**Week 11(Aug 7 -Aug 13)**
- Writing user documentation.
**Week 12(Aug 14 -Aug 20) - Week 13(Aug 21- Aug 30)**
- The next step is to test the changes made. And fix the subsequent bugs encountered.
- At the end of the internship program the Final report is submitted for evaluation.
|Tasks to be Completed |Timeline
|Designing front end for the platform|30/05/17-05/06/17
|Coding upload script in a proper workable condition|06/06/17-26/06/17
|Testing,MVP is completed|27/06/17-02/07/17
|Designing metadata mappings for GLAMs|03/07/17-16/07/17
|Working on integration of buttons on GLAMs end|17/07/17-23/07/17
|Working on extra functionalities|24/07/17-06/08/17
|Writing user documentation|07/08/17-13/08/17
|Testing and Deployment|14/08/17-23/08/17
|Final Report Submission|23/08/17-30/08/17|
Will you have any other time commitments, such as school work, exams, research, another job, planned vacation, etc., between May 30, 2017 and August 30, 2017? Please provide exact dates for these commitments and the number of hours a week these commitments take.
I have my college vacations from May 30 to July 25 but i am enrolled in an internship programme from May 18 to July 20 (tentative dates) as i haven’t received the offer letter yet. I will be available for minimum of 6 hours on weekdays due to my internship programme which i will cover on weekends. On weekends the schedule would be to work on a minimum 10 hours.
If a student, please list the courses you will be taking between May 30, 2017 and August 30, 2017, how many credits you will be taking, and how many credits a full-time student normally takes at your school. Please provide a link or upload your program's suggested curriculum by semester, which includes the suggested number of credits in each semester. Please provide a link or upload your school's academic calendar. Curriculum:http://nsitonline.in/student-resources/academics/coe/syllabus-coe?download=195:COE
I will be receiving half of the credits mentioned in the above curriculum.
Academic Calendar: https://drive.google.com/open?id=0B0KJtMR93IZaZjhpeG1Ic1hNaXc