Profile Information
Name: David Yim
Email: Davidyim03@gmail.com
IRC nick: David-Yim
GitHub: https://github.com/davidyim03
Location (country or state): United States
Typical working hours (include your timezone): UTC -5
Synopsis
“Our goal with Wikipedia is to create a free encyclopedia; indeed, the largest encyclopedia in history, both in terms of breadth and in terms of depth” - Larry Sanger.
Wikipedia is built upon the foundation of countless contributions from users, and it is only when users from all backgrounds are able to participate in contributing to the sea of knowledge that Wikipedia can further its mission. The current edit request system of Wikipedia prevents new, inexperienced potential users from contributing due to its complex interface and confusing instructions. A revamp of the current edit request system along with a edit request wizard that would guide new users how to submit a proper edit request will allow an easier entry of new contributors to Wikipedia.
Timeline
______Period______ | Task |
May 20 - June 12 | Community Bonding Period. Initial UI design and getting familiar with user scripts, testing out different features with user scripts. Review Wikipedia policy on edit requests |
July 13 - July 17 | Design a flowchart for the edit wizard. The flowchart will outline the order of how the user would navigate through the edit request wizard interface, and how different pages lead to another |
June 18 - June 24 | Complete UI mockups using Figma, design user interfaces of the edit wizard like the welcome page, source input form, quote form, and more |
June 25 - July 1 | Create a backend system for validating sources for edit requests. The system should be able to identify sources that are valid according to the Wikipedia guidelines (https://en.wikipedia.org/wiki/Wikipedia:Reliable_sources) - ie) the system should be able to throw an error when “https://www.google.com/search?q=google+summer+of+code” is given as an input as Wikipedia does not allow searches as valid sources |
July 2 - July 10 | Create a validating quote system, using the MediaWikiAPI. The system, given the wikipedia article and the quote, should be able to identify if the quote is coming from the given wikipedia article |
July 11 - July 18 | Testing of the complete backend system and making documentations of the system. By the end of this period, all backend features, including validating sources and quotes should be completed, tested, and documented |
July 19 - July 27 | Implement the backbone of the edit wizard using user scripts. This would mean implementing the overall interface of the edit wizard adhering to the flowchart created, although it would be lacking the backend features and styling elements at this time. |
July 25 - July 29 | Phase 1 Evaluation |
July 28 - Aug 3 | Connect the prototype edit wizard with the backend source/quote validation system. Now if the user provides an invalid source/quote to the edit wizard, the edit wizard should be able to notice and take further action. |
Aug 4 - Aug 10 | Extending from the previous work, when the edit wizard backend detects an invalid source/system, it should handle errors in a way that informs the user why the source/quote was not accepted, and redirect them to resources that could help them provide valid inputs. |
Aug 11 - Aug 17 | Working with CSS, improve on UI of the edit wizard adhering to the Figma mockups created earlier |
Aug 18 - Aug 24 | Brush up frontend and Complete UI/UX of the edit wizard, along with user testing and fixing bugs that come up during user testing |
Aug 25 - Aug 31 | Comprehensive testing of the edit wizard and setting up final documentations. Fix more bugs if they come up during testing. |
Sept 1 - Sept 11 | Code Freeze: bug fixes, writing final documentation/guide, cleaning up code for production |
Sept 12 - Sept 19 | Mentors submit final GSoC contribution evaluations |
Sept 20 | Results of GSoC 2022 are announced |
Deliverables
- Complete user experience flowchart
- Complete user interface mockup
- Backend source validation system
- Backend quote verification system
Phase 1 Evaluation
- Edit request wizard backbone
- Edit request backend connection
- Error message handling
- Implementation of UI using CSS
- Documentation and user guide
Final Evaluation
Participation
Working on remote git repository, and upload complete user script to user page and publish once project is complete.
I will be online on all platforms during working hours (10am - 4pm CST), reach out to me via email outside of those times and I will usually be available for a quick reply.
I will be using phabricator for subtasks and bug issues
I will be posting weekly blog articles reporting on the work I have done that week.
About Me
Tell us about a few:
I’m currently an undergraduate student majoring in Computer Science at Northwestern University. I found out about this opportunity while looking for open source projects that I can contribute to, and this project definitely caught my eye - as a regular user of Wikipedia, I was instantly hooked onto the idea of working on improving the user experience of creating an edit request, because I have also experienced being intimidated of making edit requests and ending up not making the request because of its user hostile interface.
The official coding period begins June 13th, which is past the last day of the quarter for me (June 10th), so during the entire GSoC period, I will not have any other commitments other than GSoC. Unfortunately, the Outreachy program has closed its application for 2022 summer, so I will only be able to apply for GSoC.
This project will be the first time that I contribute to an open source project, and I am beyond excited to work on a product that I’ve always used in my daily life. I hope to make a positive impact on the user experience of people editing Wikipedia, and I believe that this project will be fun, fulfilling, and rewarding for me.
Past Experience
I’m currently working at a student startup called BearRoom where we create a web app for a shared board game platform that simulates the in person experience while removing the hassle of setting up the cards/pieces. The web app is based on React, JavaScript, and FireBase, along with using MUI as the frontend library.
I am also working for the non-profit organization Good News Partners, creating a web app for managing client information and taking new client forms using the PERN (PostgreSQL, Express, React, Node) stack.
As a fun project, I made PacMan with a friend of mine with C++ and the GE211 game engine.
Microtasks:
You can find the Microtasks I completed in the link below:
https://drive.google.com/file/d/1qkI0wLGUA2-DbvISnackm_SVPU4rKh7g/view?usp=sharing
Any Other Info
Shameless plug to my growing startup BearRoom! Come check it out and have some fun playing Sushi Go! :)
https://bearroom.io/