**Purpose**
This proposal describes how I will accomplish my Internship at Wikimedia by contributing to WikiEduDashboard.
**End Goal**
To have added various new features to the Dashboard and increase the overall scope of the project.
**Profile Information**
**Name:** Sejal Khatri
**Email: **sejal.khatri5@gmail.com
**IRC Nick: **sejal
**Mediawiki User:** Sek2016
**Web Page:** http://sejalkhatri.github.io/
**Blog:** https://medium.com/@sejal.khatri5
**Location:** India
**Time Zone:** UTC+5:30
**Typical working hours:** [12PM to 7PM] and [10PM to 2AM](Indian Standard Time)
**Synopsis**
The Dashboard code runs 2 main projects
-- [[ https://dashboard.wikiedu.org/ | The Wiki Education Foundation Dashboard ]] : The use case(scope) for this project is limited to higher education programs in United States and Canada.
-- [[ https://outreachdashboard.wmflabs.org/ | Wikimedia Programs & Events Dashboard ]] : For global Wikimedia community to organize all kinds of programs, including edit-a-thons, education programs, and other events.
The use case for the Programs & Events Dashboard project is wide and there are many enhancements to be made to increase the user experience, I'll be working on issues related to this and the overall user testing.
**Possible mentors**
Sage Ross (@Ragesoss )
Jonathan Morgan (@Capt_Swing)
**Deliverables**
These are the various issues that I found interesting to solve and planning to take them, new issues will be added and solved with time.
**Issue1:** [[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/1252 | Delete button on course should be visible but disabled if user can delete but course is active ]]
**Issue2:** [[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/1153 | Campaign page should have a way to see the list of articles edited ]]
**Issue3: **[[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/1126 | Campaigns index page needs to be redesigned to be useful for admins ]]
**Issue4:** [[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/1044 | My Articles buttons should have info mouseovers to explain Assign and Review ]]
**Issue5: **[[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/1041 | CoursesUsers should store a copy of user full name, and use that to show instructors ]]
**Issue6:** [[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/1038 | Replace all javascript confirm and alert instances with Confirm and Notification components ]]
**Issue7:** [[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/1005 | For edit-a-thons (at least), dashboard should give user info about when to expect updated stats ]]
**Issue8:** [[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/858 | On dashboard view, list of archived courses should be sortable ]]
**Issue9: ** [[ https://github.com/WikiEducationFoundation/WikiEduDashboard/issues/297 | Overview should show students information about their own work ]]
//Issue9 will be divided into these sub tasks: //
- Add an 'assign myself an article' button (just like from the Students tab) in the Actions component on the overview.
- Show the student whether they have completed training, and provide a link if they have not.
- Show the student which articles they are assigned to work on and/or review, and provide links to add/change these articles
- Show the student how much they have contributed, and how many views their work has had.
- Links to key resources, including the basic brochures as well as subject-specific guides that are relevant to their course (based on course tags)
- Work on additional features mentioned in the
**Distribution**
I have few ideas about how to solve them, So the stages for solving each issue will be:
1) Getting a clear idea of what the output needs to be.
2) Implementation
3) Add tests and get reviews
4) User testing
I'll distributing them in the time line after having a discussion with the mentor.
**Timeline**
| Date | Task
| April 3 | Application deadline
| April 4 - May 30 | Continue contributing to the project.
| May 31 - June 25 | Have a planned sprint and select the issues to be completed. Resolve an issue and add tests for the proposed changes, get reviews, fix and repeat.
| June 26 | Phase 1 Evaluation
| June 30 | Phase 1 deadline
| July 1 - July 23| Have a planned sprint and select the issues to be completed. Resolve an issue and add tests for the proposed changes, get reviews, fix and repeat.
| July 24 | Phase 2 Evaluation
| July 28 | Phase 2 deadline
| July 29 - Aug 20 | Have a planned sprint and select the issues to be completed. Resolve an issue and add tests for the proposed changes, get the reviews, fix and repeat.
| Aug 21| Final Review.. Have a final rap up by getting an overall performance review by my mentor, publishing a blog summing up my overall experience of working with Sage and Wikimedia.
**Participation**
I plan to communicate my work progress mainly through Slack channels and IRC in #wikimedia-ed.
I'll be updating my [[ https://meta.wikimedia.org/wiki/User:Sek2016 | wiki user page ]] on weekly basis with the progress report.
For version control, I use git. I plan to publish source code on GitHub and get feedback on the same, I understand how contribution and review works with Wiki Edu Dashboard project because of my internship experience. I'll be maintaining my internship blog on Medium and will update it as I advance with the tasks.
**About me**
I am a Final year undergraduate student of computer science at Pune Institute of Computer Technology.
My major interest is in Web languages(HTML, CSS, JavaScript), Web framework-Ruby on rails and python language and developing UI designs where I have done maximum work. Apart from building applications, I enjoy playing sports and currently I am learning Karate.
I enjoy learning stuff by implementing them and collaborating with other contributors. My experience working on this project and the overall theme of this project drives me to contribute more and be a part of the change it is making :)
Making this project happen means a lot to me because of the learning experience and the after completion user satisfaction look is something I enjoy the most.
I don't have any other time commitments during the program duration as my final examination ends on 27 May.
**Past experience**
My open source experience began in my second year of engineering, with dual booting my laptop and installing Linux. I was selected as an Outreachy'16 Wikimedia intern (Dec 6 - March 6) for the Wiki Education Dashboard project managed by Wiki Education Foundation. Wiki Ed Dashboard is a platform for helping people get started with editing Articles on Wikipedia and helping professors run assignments where their students edit Wikipedia. I worked on adding customizable user profile pages to the dashboard, which provides info about all the courses user has enrolled in and overall user statistics in those courses encouraging them to contribute more. The technologies that I used during my internship period were [[ https://facebook.github.io/react/ | ReactJS ]], [[ https://vega.github.io/vega/ | Vega ]], [[ http://rubyonrails.org/ | Rails ]] and testing frameworks like [[ https://mochajs.org/ | Mocha ]] and [[ http://rspec.info/ | RSpec ]].
Link to the one of the [[ https://dashboard.wikiedu.org/users/ragesoss | profile pages ]]
I have had blogging experience, as I used to frequently blog about my [[ https://medium.com/@sejal.khatri5/week-2-3-c43f08c32fa3 | internship ]] with Wikimedia.
**Link to some of the major contributions made:**
https://github.com/WikiEducationFoundation/WikiEduDashboard/pull/1221
https://github.com/WikiEducationFoundation/WikiEduDashboard/commit/a9246cb17717436eb5278054cb168c13e818625e
https://github.com/WikiEducationFoundation/WikiEduDashboard/commit/298037f011c2c1a96db917b1ebb5385b3a9e5be8
https://github.com/WikiEducationFoundation/WikiEduDashboard/commit/9ac397b282010a23261b954516326ce92dfc616f
**Other Projects:**
**//Web developer, work taken as a freelancer//**
Link to the designs made in the first phase: https://github.com/sejalkhatri/Design/tree/master/SMA
I learned how to set up a website using the hosting platform [[ http://www.hostinger.in/ | Hostinger ]] and also the domain setup([[ http://www.dot.tk/en/index.html?lang=en | Dot TK ]]). Vital part was taking client reviews and building on them, Iterative Model was followed for Development. I learned how to consider details of what is required and then summing it up to what can be done, also made the website responsive using CSS Media Queries. The project helped me develop better understanding of web technologies like jQuery(used for sliding windows), Bootstrap(image gallery).
Website Link: http://www.smaacademy.tk/
//**
Front end developer in College Project, AutoTransliterator-[[ http://www.pygtk.org/ | PyGtk ]] framework used**//
This is a desktop application(text editor) used for converting English script to Devanagari Script. It uses machine learning concepts by suggesting a script to the user by considering his previous preferences. PyGtk is used for creating User Interface and communicating with back end python scripting. XML is used to store the word frequencies and JSON format is used for ASCII mapping of letters.
I learnt PyGtk framework and underlying [[ http://www.gtk.org/ | GTK+ ]] library which provides all kind of visual elements and utilities for it. The documentation was done following Software Engineering documentation format, user manual is deployed with the package.
Project Link: https://github.com/sejalkhatri/autoTransliterate, u can download it and start using.
//**Developed website for college technical event INC'15**//
Impetus and Concepts is a technical event organized by PICT. The website was developed by INC Web Development Team, I learnt how to collaborate and work in sync with other people. I worked on web languages-HTML, CSS, JavaScript and Bootstrap Framework, learnt the importance of final testing before deploying.
The website gets updated every year, So you will not be able to see my work
**//Designed UI for Clash'14 - C/CPP coding contest//**
Link to the designs made: https://github.com/sejalkhatri/Design/tree/master/CLASH
[[ https://www.qt.io/ide/ | Qt Creator ]] IDE was used for development, I worked as a front end developer. The Theme was Time Evolution, so if the code was correct than the contestant was shown heading towards future, otherwise past. The UI was developed keeping in mind the Theme and it got great reviews(1000+ contestants)
This was my first technical project as a front end developer and I learnt how to work with Qt Creator.
**//We send email using email function in Google Cloud Platform//**
Recently i have developed a [[ https://www.bismatrimony.com/ | Matrimony ]] Website on Google Cloud Platform, but after uploading site i see that PHP Mailer function does not send mail.
The same code in the localhost runs perfectly, with same SMTP credentials.
Is there need to change my code?
Please, any one helps me out to resolve this issue.