Profile Information
Name : C Nikhil Karthik
GitHub : https://github.com/C-NikhilKarthik
LinkedIn : https://www.linkedin.com/in/nikhil-karthik-800413233/
Location (country or state) : India
Typical working hours (include your timezone) : 4 pm to 2 am ( GMT + 5:30 )
Synopsis
- A tool created by Wikimedia to aid in the management and organising of events and programmes associated with editing Wikipedia and other Wikimedia projects is the Programs & Events Dashboard. The "Improve Programs & Events Dashboard UX for Article Scoped Programs" project aims to enhance the Dashboard's user experience (UX) for applications that are concerned with modifying certain articles.
- Migration from Server Side Rendering to Client Side Rendering (Client Side Rendering)
- This can be achieved by switching from react files, which are.jsx files, to the.html.haml ones. As comparison to SSR, CSR offers a number of benefits, such as quicker page loads, improved user experience, improved SEO, simpler development and maintenance, and more flexibility in terms of technological options.
- Improving the UI of some pages
- I'm presently revamping the /usage page and moving it over to React. An important factor influencing user engagement, retention, and conversion rates is a website's user interface (UI). By making it simpler for people to browse a website, locate what they're looking for, and take the appropriate actions, a smart UI design can enhance the user experience.
- Creating a few scripts for populating various Courses, Articles
- This can enhance not only the code testing for the CSR or SSR but also aid the contributors in gathering samples of data of varied sizes and creating/updating new capabilities.Contributors can better understand how the code behaves in various circumstances and see potential problems or places for improvement by using real-world data samples and scenarios to test the code.
- Possible Mentor(s) : @Ragesoss
- Have you contacted your mentors already? Yes, I have contacted the mentors through slack.
Deliverables
Mid-Term evaluation
- Do necessary user research for the interface/functionality
- Build UI prototypes
- Work on Migrating queries from jbuilder files to controller.rb
- Write tests for the new interface
Final Evaluation
- Migrate from SSR to CSR
- Write scripts for populating the courses, articles etc with values to set values
- Write tests for the above features
- Complete Documentation of all the above features mentioned
Timeline
Community bonding period
The major objective for this time period will be to communicate with my mentor in order to become more familiar with the code base as a whole. The real React 18 upgrade will be the biggest obstacle I can get beyond during this time. Considering a sizable section of the code base will probably be impacted by this change. It will be crucial to discuss the upgrading with my mentor and identify any potential problems.
May 29 - June 12
Create the appropriate wireframes for the project.
Creating wire frames for a project greatly enhances the performance of the contributor because they may use the wire frames as a guide for how to set up and start coding. These wireframes can be changed later or used as references in the meantime.
June 13 - June 20
using the codebase's predefined styles, begin transforming the recommended wireframes into pages. Be sure to document all the modifications you make.
June 21 - June 28
Start working on migrating the queries from their corresponding controller.rb files to the *.json.builder file. This is important because placing these queries in the controller file might make it simple to retrieve them from different files.
June 29 - July 5
Complete the wireframe implementation and query migration.
Begin the testing phase to look for defects and problems. It must be done to complete the documentation of every change made.
July 6 - July 14 (Midterm evaluation deadline)
Use the midterm evaluation's feedback to improve the situation.
The feedback period is one of the most important times of the project since it enables us to identify problems, bugs, and other things that should be added to or eliminated from the project.
July 15 - July 28
Work on the input received from mentor and group members.
Working with the material offered by other contributors or mentors is essential to the project's success because it aids in understanding the work from others' points of view.
July 29 - August 4
Work on switching from *.html.haml (SSR) to *.jsx files for React (CSR)
August 5 - August 18
Creating scripts for populating the database with necessary data for testing.In addition, gathering data samples and creating/updating new capabilities can help to enhance the overall quality of the codebase. This can include improving the user experience, adding new features, and optimizing the code for better performance.
August 19 - August 25
Start documentation of all the completed tasks
Keeping track of all the progress made requires documenting all the features added and problems resolved. This can aid in keeping track of all issues that arose and how they were resolved during the project's lifetime.
Take final feedback and work on fixing them
August 26 - September 4 (Final evaluation deadline)
Work on maintaining the codebase
It is essential to maintain the code after the project is complete because new features may be added that make the code simpler and easier to write, and existing features may be dropped or supported.
Participation
I regularly use email and Slack. For code reviews and associated discussions, I'll use GitHub. I intend to meet with my mentor on a regular basis to discuss my progress and receive input on the work completed thus far.===About Me
Education
- I am a sophomore studying computer science and engineering at the Indian Institute of Information Technology (IIIT) in Dharwad ( CSE ). I'm currently in my second year of the esteemed Institute's four-year program.
How did you hear about this program?
- I'm new to open source programming, so a senior student suggested that I attempt making an open source contribution as part of GSoC in order to advance my abilities and knowledge.
Will you have any other time commitments, such as school work, another job, planned vacation, etc, during the duration of the program?
- My current semester ends in the 3rd week of May. I do not have any other commitments currently during the project duration.
We advise all candidates eligible for Google Summer of Code and Outreachy to apply for both programs. Are you planning to apply to both programs and, if so, with what organization(s)?
- I only plan on applying to Google Summer of Code with Wikimedia Foundation.
What does making this project happen mean to you?
- The opportunity to take part in an important and beneficial effort that promotes open access, open culture, and open information.
the chance to work with a passionate and committed group of developers and contributors from around the world who share an interest in advancing open access and open culture; and finally, the chance to have a significant impact on the field of open access while influencing the future of digital content creation and sharing.
Past Experience
- I've been focusing on a few problems that were raised in the WikiMedia Dashboard's Repository.
- I am extremely new to contributing to open-source projects; I have learned a lot of new things, including Ruby, Ruby on Rails, organisational structure, etc.
- With the MERN stack, TailwindCSS, and other tools, I have created numerous projects. For GSoC, I am also collaborating with Creative Commons.
WikiMedia Contributions
| Links | Description |
| https://github.com/WikiEducationFoundation/WikiEduDashboard/pull/5313 | I'm still working on this PR, incorporating the mentor's suggestions and enhancing the reviews that were given. |
Any Other Info
Projects worked/working on :
| Project | Links | Description |
| Content Management System | Although the website is hosted on render and vercel, the github repository is currently set to private. Many further functions that will be included in the software are currently under development. | |
| College and Organization Management | https://github.com/C-NikhilKarthik/College-Organization-Management | The entire website is still being developed utilizing the MERN stack with TailwindCSS. |
| Outpass and Complaints Management System | https://github.com/C-NikhilKarthik/Outpass-and-Complaints | Due to the project's use of mysql, nodejs, HTML, CSS, and JavaScript, we are currently unable to put it on a website. |