Grants:Programs/Wikimedia Community Fund/Rapid Fund/Improvement and feature development of the Wikifile-transfer tool (ID: 22406627)

From Meta, a Wikimedia project coordination wiki
statusNot funded
Improvement and feature development of the Wikifile-transfer tool
proposed start date2024-01-15
proposed end date2024-06-30
budget (local currency)414585 INR
budget (USD)4980 USD
grant typeIndividual
funding regionSA
decision fiscal year2023-24
applicant• ParasharSarthak
organization (if applicable)• N/A

This is an automatically generated Meta-Wiki page. The page was copied from Fluxx, the grantmaking web service of Wikimedia Foundation where the user has submitted their application. Please do not make any changes to this page because all changes will be removed after the next update. Use the discussion page for your feedback. The page was created by CR-FluxxBot.

Applicant Details[edit]

Main Wikimedia username. (required)

ParasharSarthak

Organization

N/A

If you are a group or organization leader, board member, president, executive director, or staff member at any Wikimedia group, affiliate, or Wikimedia Foundation, you are required to self-identify and present all roles. (required)

N/A

Describe all relevant roles with the name of the group or organization and description of the role. (required)


Main Proposal[edit]

1. Please state the title of your proposal. This will also be the Meta-Wiki page title.

Improvement and feature development of the Wikifile-transfer tool

2. and 3. Proposed start and end dates for the proposal.

2024-01-15 - 2024-06-30

4. Where will this proposal be implemented? (required)

India

5. Are your activities part of a Wikimedia movement campaign, project, or event? If so, please select the relevant project or campaign. (required)

Not applicable

6. What is the change you are trying to bring? What are the main challenges or problems you are trying to solve? Describe this change or challenges, as well as main approaches to achieve it. (required)

Wikifile-transfer tool was created in 2019 by User:Jayprakash12345 (co-grantee) as part of the Indic-TechCom initiative, an initiative to build a technical community to support Indic Wikimedia communities by solving their technical pending issues.[1][2] The indic community requested to have a tool that can transfer fair-use images from one Wikipedia to another Wikipedia without downloading and uploading the file manually.


This tool was created back in Sept 2019 (more than 4 years before). It has transferred more than 4,850+ files to Wikimedia projects and proved its usability to the Wikimedia community. Example: Please check recent usage of this tool on Bangla, Tamil, and Telugu Wikipedia below.


1. https://bn.wikipedia.org/wiki/Special:RecentChanges?tagfilter=OAuth+CID%3A+2395&limit=500&days=30&urlversion=2&uselang=en
2. https://ta.wikipedia.org/wiki/Special:RecentChanges?tagfilter=OAuth+CID%3A+2395&limit=500&days=30&urlversion=2&uselang=en
3. https://te.wikipedia.org/wiki/Special:RecentChanges?tagfilter=OAuth+CID%3A+2395&limit=500&days=30&urlversion=2&uselang=en


Now, we are facing some challenges with it.


1. ‘’’ Old code’’’: Even after having high usage in the Wikimedia Community, it does not get proper monitoring and maintenance. Only a few minor changes have been made in the past. So we have a technical debt to repay to make it work for the future. It needs proper monitoring setup and maintenance tool packages. Example: Uptime status monitoring


2. ‘’’ SQL server error’’’: On Wikimedia Toolforge infrastructure, where the tool is deployed, is showing that the user is getting affected by some database error.[3] This needs to be inspected and resolved.


3. ‘’’No feature development’’’: This is most important part of the project. The Wikimedia community are continuously requesting a new feature to add in the tool through Phabricator, Github, and in-person. Please see https://phabricator.wikimedia.org/T328188 and https://github.com/indictechcom/wikifile-transfer/issues/9.


4. ‘’’ Failed on large file’’’: Currently, the tool is only able to transfer small-size files only. The web app is stucking on large-size files. Our goal will be to make the tool to handle large files as well through celery queue implementation.


5. ‘’’ Failed on some media file extension’’’: It has been noticed in the past that this tool has failed to transfer some media extension files other than images. As part of the project, we will test and add support to work with every media file extension.


6. ‘’’Old deployment’’’: Currently, tool is running on python3.7 on Wikimedia Toolforge which is deprecated.[4] We will migrate code and deployment to python3.11 which is the current version on Wikimedia Toolfoge. The migration guide is already provided by Wikimedia on Wikitech wiki.


We want to emphasize on point 3. Feature development would be an important goal of this proposal. Currently, the tool has automated the downloading and uploading the media files. The Wikimedia community has expressed that even after using this tool, they need to do some manual work like copying the fair use templates from the source wiki and then make an edit on the target wiki with templates. And the community requested multiple times to automate further. So our plan is to give users more options so that we can make this process completely automated. Example: https://phabricator.wikimedia.org/T328188


[1] https://meta.wikimedia.org/wiki/Indic-TechCom/Tools/Wikifile-transfer [2] https://meta.wikimedia.org/wiki/Indic-TechCom [3] https://meta.wikimedia.org/wiki/User:Jayprakash12345/Wikifile-tranfser_error [4] https://wikitech.wikimedia.org/wiki/Help:Toolforge/Kubernetes#Available_container_types

7. What are the planned activities? (required) Please provide a list of main activities. You can also add a link to the public page for your project where details about your project can be found. Alternatively, you can upload a timeline document. When the activities include partnerships, include details about your partners and planned partnerships.

Our planned activities will be the following:

15 Jan - 15 Feb: Split the code backend and frontend with Python 3.11 and React JS.

16 Feb - 15 Mar: Fixing the above-mentioned issues like SQL error, media file extension issue, and scaling the app to handle large files.

16 Mar - 15 Apr: Do the feature development and automate the further process to give users more options so that we can complete the process without any manual work.

16 Apr - 30 Apr: Inviting communities to test and give feedback

1 Jun - 30 June: Documentation and final bug fixing.


Sorry for using some technical terms. We are ready to explain these terms whenever it is needed.


8. Describe your team. Please provide their roles, Wikimedia Usernames and other details. (required) Include more details of the team, including their roles, usernames, Wikimedia group, and whether they are salaried, volunteers, consultants/contractors, etc. Team members involved in the grant application need to be aware of their involvement in the project.

1. User:Jayprakash12345:


Jay Prakash is an open-source software enthusiast and MediaWiki developer. He joined the Wikimedia movement in 2015. He has developed more than 35 tools and gadgets for the Wikimedia community as part of his Indic-TechCom (which now become a user group) and conducted many technical events in India. He has been awarded as Wikimedian of the Year in the technical innovator category for this technical contribution to the Indic Wikimedia community. He will work on this project as a Product Manager as he is the author of this tool and has a good understanding of the tool.


2. User:ParasharSarthak:

Sarthak Parashar is a seasoned developer who joined the Wikimedia movement in 2021. Since then, he has contributed to the Indic-TechCom tool’s code in various Wikimedia hackathons and events. His contribution is listed on his user page on MetaWiki. He will be working on this project as a developer to implement the project in code.

9. Who are the target participants and from which community? How will you engage participants before and during the activities? How will you follow up with participants after the activities? (required)

Our main target participants are Wikipedian communities who have been using this tool for very long. We will engage those communities and users through village pump and talk pages.


During 16 Apr - 30 Apr 2024, we will invite the Wikimedia communities to use the new functionality which we will develop as part of this project and will collect feedback from the community.


We will also have some outreach sessions on this tool to onboard new Wikimedians as well.

10. Does your project involve work with children or youth? (required)

No

10.1. Please provide a link to your Youth Safety Policy. (required) If the proposal indicates direct contact with children or youth, you are required to outline compliance with international and local laws for working with children and youth, and provide a youth safety policy aligned with these laws. Read more here.

N/A

11. How did you discuss the idea of your project with your community members and/or any relevant groups? Please describe steps taken and provide links to any on-wiki community discussion(s) about the proposal. (required) You need to inform the community and/or group, discuss the project with them, and involve them in planning this proposal. You also need to align the activities with other projects happening in the planned area of implementation to ensure collaboration within the community.

Since, this project and idea are derived from Wikimedia communities’ request from Phabricator and GitHub (See links above). So they already want to have these features in the tool. But we will revisit to communities again through village pump and user talk pages, once this will be funded so that we can retarget our goal to add some functionality on top of this project goals.

12. Does your proposal aim to work to bridge any of the content knowledge gaps (Knowledge Inequity)? Select one option that most apply to your work. (required)

Not applicable

13. Does your proposal include any of these areas or thematic focus? Select one option that most applies to your work. (required)

Open Technology

14. Will your work focus on involving participants from any underrepresented communities? Select one option that most apply to your work. (required)

Not applicable

15. In what ways do you think your proposal most contributes to the Movement Strategy 2030 recommendations. Select one that most applies. (required)

Improve User Experience

Learning and metrics[edit]

17. What do you hope to learn from your work in this project or proposal? (required)

Although, this is a technical implementation project. But here our learning will be high. This project can help us to migrate and set up maintenance for our other tools as well (Listed on the Indic-TechCom page).


We can document the common steps of improvement on Wikitech wiki or MediaWiki.org so that other technical person as follow them to improve their tools. So others can also learn from our project.

18. What are your Wikimedia project targets in numbers (metrics)? (required)
Number of participants, editors, and organizers
Other Metrics Target Optional description
Number of participants 15 This will be the users of the tool.
Number of editors 15 This will be the users of the tool.
Number of organizers 0
Number of content contributions to Wikimedia projects
Wikimedia project Number of content created or improved
Wikipedia 0
Wikimedia Commons 0
Wikidata
Wiktionary
Wikisource
Wikimedia Incubator
Translatewiki
MediaWiki
Wikiquote
Wikivoyage
Wikibooks
Wikiversity
Wikinews
Wikispecies
Wikifunctions or Abtsract Wikipedia
Optional description for content contributions.

N/A

19. Do you have any other project targets in numbers (metrics)? (optional)

Yes

Main Open Metrics Data
Main Open Metrics Description Target
Users This will be users of the tool. 15
N/A N/A N/A
N/A N/A N/A
N/A N/A N/A
N/A N/A N/A
20. What tools would you use to measure each metrics? Please refer to the guide for a list of tools. You can also write that you are not sure and need support. (required)

Since, this project is a technical improvement on the tool. So suggestions from the guide won’t work for us to measure the impact.

We will have the usage metrics from Linux machine commands which will be run on Wikimedia Toolforge to get the metrics. We will publish the metrics and how we get them through commands on the report.

Another metric will be Git commit history which will describe how much code we have improved from last time.

Financial proposal[edit]

21. Please upload your budget for this proposal or indicate the link to it. (required)

https://docs.google.com/spreadsheets/d/1oE7ygcb14_wUAuOXbWHG_nHCf9uXPlfE4-mH1QiQopo/edit?usp=drive_link


22. and 22.1. What is the amount you are requesting for this proposal? Please provide the amount in your local currency. (required)

414585 INR

22.2. Convert the amount requested into USD using the Oanda converter. This is done only to help you assess the USD equivalent of the requested amount. Your request should be between 500 - 5,000 USD.

4980 USD

We/I have read the Application Privacy Statement, WMF Friendly Space Policy and Universal Code of Conduct.

Yes

Endorsements and Feedback[edit]

Please add endorsements and feedback to the grant discussion page only. Endorsements added here will be removed automatically.

Community members are invited to share meaningful feedback on the proposal and include reasons why they endorse the proposal. Consider the following:

  • Stating why the proposal is important for the communities involved and why they think the strategies chosen will achieve the results that are expected.
  • Highlighting any aspects they think are particularly well developed: for instance, the strategies and activities proposed, the levels of community engagement, outreach to underrepresented groups, addressing knowledge gaps, partnerships, the overall budget and learning and evaluation section of the proposal, etc.
  • Highlighting if the proposal focuses on any interesting research, learning or innovation, etc. Also if it builds on learning from past proposals developed by the individual or organization, or other Wikimedia communities.
  • Analyzing if the proposal is going to contribute in any way to important developments around specific Wikimedia projects or Movement Strategy.
  • Analysing if the proposal is coherent in terms of the objectives, strategies, budget, and expected results (metrics).

Endorse