User:Medhabansal/Outreachy Round-14 (WikiEduDashboard)

Complete overview and reporting on my participation in the Round 14 of the Outreachy program. Technical and other personal learnings/internship experience journaled on my Medium blog.

Project Overview
Objective: Allow Programs & Events Dashboard to make automatic edits on connected wikis

WikiEdDashboard is a Ruby on Rails/React.js based web app that supports the organization and management of assignments, courses and events for groups of Wikipedia users who are working to contribute on a common Wikipedia project. The dashboard code runs two main projects: the Wiki Education Foundation Dashboard(for programs focused on higher education in the US and Canada) and the Wikimedia Programs & Events Dashboard(for the global Wikimedia community). While the Wiki Education Foundation Dashboard already supports open authentication based automatic edits to the English Wikipedia and mirrors the course progress/changes in the respective wiki pages, the aim of this project is to introduce and establish these wiki editing features in the Programs & Events Dashboard.

Phabricator task: T158678

Outreachy Proposal: T161568

Week 1 Report (18th May, 2017): Community Bonding Period
I have begun the initial work on my bonding period objectives as mentioned in my Outreachy proposal. Here are a few things that I've made progress with:  Joined the project's Slack channel and Wikimedia's Zulip channel. Introduced myself on the WikimediaEd channel  Started hanging out on the Outreachy IRC channel, set up my MediaWiki user page  Updated local project setup   Interacted on project Slack channel to set up meeting timings with mentors and other interns  Picked an issue, which involves creating an auto-complete search component for Wikipedia articles. After some basic discussion with my project mentor regarding the same, I realised that even though the issue is unrelated to my problem statement, picking it was a good idea, as it helped me identify many learning areas:  Getting proficient working with React.js Familiarising myself with the MediaWiki API Getting comfortable with the project front-end best practices. </ol> </li>  Started taking my knowledge of React and Redux to the next level, following a Udemy course and also began investigating the MediaWiki API</li>  Will be taking my learning forward, and discussing project-relevant issues with my mentor and begin working on them.</li>

Week 2 Report (25th May, 2017): Community Bonding Period
 Continued on my learning about project practices. </li>  Decided on weekly meeting timings and other collaboration details with project mentors. </li>

Week 3 Report (1st June, 2017): Coding period begins
 Attended welcome call with both mentors, and other interns working on the project.</li>  Started related code investigation, and understanding the Editing flow.</li>  Attended daily check-in meetings.</li>  Asked questions and doubts about related code.</li>

Week 4 Report (8th June, 2017)
 Investigated and learnt about Wikipedia templates and template editing as done in project. </li>  Requested and was granted permission for Wikpedia OAuth consumer.</li>  Discussions about auto editing process.</li>  Participated in PR review process. </li>  Daily check-ins. </li>

Week 5 Report (15th June, 2017)
 Begun hands-on coding and making code changes </li>  Created templates for P&E Dashboard. </li>  Made changes towards generalizing template usage in project. </li> <li> Investigated Sidekiq performance locally. </li> <li> PR Reviews.</li> <li> Daily check-ins.</li>