User:Medhabansal/Outreachy Round-14 (WikiEduDashboard)

From mediawiki.org

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[edit]

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[edit]

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:
    1. Getting proficient working with React.js
    2. Familiarising myself with the MediaWiki API
    3. Getting comfortable with the project front-end best practices.
  • Started taking my knowledge of React and Redux to the next level, following a Udemy course and also began investigating the MediaWiki API
  • Will be taking my learning forward, and discussing project-relevant issues with my mentor and begin working on them.
  • Week 2 Report (25th May, 2017): Community Bonding Period[edit]

  • Continued on my learning about project practices.
  • Decided on weekly meeting timings and other collaboration details with project mentors.
  • Week 3 Report (1st June, 2017): Coding period begins[edit]

  • Attended welcome call with both mentors, and other interns working on the project.
  • Started related code investigation, and understanding the Editing flow.
  • Attended daily check-in meetings.
  • Asked questions and doubts about related code.
  • Week 4 Report (8th June, 2017)[edit]

  • Investigated and learnt about Wikipedia templates and template editing as done in project.
  • Requested and was granted permission for Wikpedia OAuth consumer.
  • Discussions about auto editing process.
  • Participated in PR review process.
  • Daily check-ins.
  • Week 5 Report (15th June, 2017)[edit]

  • Begun hands-on coding and making code changes
  • Created templates for P&E Dashboard.
  • Made changes towards generalizing template usage in project.
  • Investigated Sidekiq performance locally.
  • PR Reviews.
  • Daily check-ins.