Page MenuHomePhabricator

Outreachy 30: Addressing the new Lusophone technological wishlist proposals
Closed, ResolvedPublic

Description

IMPORTANT: Make sure to read the Outreachy participant instructions and communication guidelines thoroughly before commenting on this task. This space is for project-specific questions, so avoid asking questions about getting started, setting up Gerrit, etc. When in doubt, ask your question on Zulip first!

Approved license

I assert that this Outreachy internship project will released under either an OSI-approved open source license that is also identified by the FSF as a free software license, OR a Creative Commons license approved for free cultural works:

  • Yes

No proprietary software:

I assert that this Outreachy internship project will forward the interests of free and open source software, not proprietary software:

  • Yes

How long has your team been accepting publicly submitted contributions?

  • 0-2 months

How many regular contributors does your team have?

  • 1-2 people

Brief summary

The Lusophone technological wishlist, in the lusophone Wiki context, is a survey that intends to understand which are the technological innovations and the tools and platforms that could be modified to improve user experience, that is, to identify and prioritize the most basic needs of the community of editors, readers and researchers of the Wikimedia projects in Portuguese, so they have a more productive and pleasant experience. This will be the second iteration of the project, first run in 2023.

The creation of the list is related to the recommendations 2 and 9 of the Wikimedia Movement Strategy 2030, respectively Improve User Experience and Innovate in Free Knowledge. The list's objective is to integrate the Portuguese-speaking communities in a strategic and collaborative process that acts towards research and identification of technological bottlenecks in the lusophone projects that prevent or hinder the entry and permanence of new and veteran editors, readers and researchers of the Wikimedia projects in Portuguese.

After the voting of the proposals by the community, we will publish the compiled list of the most desired technological wishes, but for now we are proposing a new Outreachy project, focused on resolving one or more wishes of the published list, that will be available by the time the internship begins. That mostly means developing scripts and editing templates on Wiki, also with a track for developing web applications. We do not intend to tackle everything on the list at once.

Minimum system requirements

You will need:

  • a Wikimedia account;
  • a computer with a working Python 3 installation.

How can applicants make a contribution to your project?

You will start by analyzing the old technological wishes proposed by the Lusophone community on Meta (you do not need to speak or read Portuguese, you can translate it). After that, you will build a plan of development, listing what you think should be the path to develop or solve some of them. The instructions of the tasks will be on Phabricator.

We will focus on 1 or 2 of the new wishes at the start and see how things evolve. We do not expect to work on all of them during the project, as we will start from the most upvoted ones and some of them might require more work; The ultimate objective of this project is to work your problem-solving, development planning and programming skills, together to resolve real problems of the Wikimedia communities involved.

You will need to create an account on Wikipedia (if you don’t already have one) and install python, as some of them will require programming. We can provide guidance for the specific starting tasks (tbd), and you are welcome to ask questions through Outreachy or by email.

Issue tracker

https://meta.wikimedia.org/wiki/Lista_de_desejos_tecnol%C3%B3gicos_da_lusofonia/Propostas
https://meta.wikimedia.org/wiki/Lista_de_desejos_tecnol%C3%B3gicos_da_lusofonia/2025/Propostas

Tasks

  • T389647: Creating a JavaScript script
  • T389654: Creating a Python script

Mentors

@Ederporto @Arcstur

Benefits

  • You will learn or improve your knowledge of Python coding.
  • You will gain familiarity with API calls and technological development on the Wikimedia projects.
  • You will develop development skills and how to document and report your work.

Community benefits

Improvement of user experience, especially to newcomers, but also to veteran editors, readers and researchers of the Wikimedia Projects.

Questions?

Please feel free to ask questions in this phabricator task, or in the subtasks. You can also email me if you want (my address is available via Outreachy)

Related Objects

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

@Ezinneanne Can you tell me which type of proposal you made? I asked on the Zulip community channel, but no one replied. How should I start with the task?

@Ezinneanne Can you tell me which type of proposal you made? I asked on the Zulip community channel, but no one replied. How should I start with the task?

At the top of this page, you will see a Create Task button and you will be able to create a proposal. You can use it as an example proposal

@Ezinneanne Thank you so much! It's my first time contributing and I'm trying to figure things out.

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!

Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!

Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

Thank you for the update and the detailed instructions. I’ve reviewed the Tasks section and understand the two subtasks required for evaluation. I’ll make sure to complete them individually and refrain from sharing my answers with other participants.
Looking forward to the next steps!

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!
Thanks @Ederporto
Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!

Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

Thank you for the update.

Finally, thank you for the update.

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!

Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!

Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

Thanks @Ederporto

@Spykelionel So first, we have to work on these two tasks: T389647 - Creating a JavaScript script and T389654 - Creating a Python script.
Also, regarding the proposal for the broken link on the Portuguese website—is that a subtask or a separate task? Can someone clarify this for me?

@Spykelionel So first, we have to work on these two tasks: T389647 - Creating a JavaScript script and T389654 - Creating a Python script.
Also, regarding the proposal for the broken link on the Portuguese website—is that a subtask or a separate task? Can someone clarify this for me?

Thanks @Nishachandila
Also, this is a sub task

@Spykelionel So first, we have to work on these two tasks: T389647 - Creating a JavaScript script and T389654 - Creating a Python script.
Also, regarding the proposal for the broken link on the Portuguese website—is that a subtask or a separate task? Can someone clarify this for me?

Only the mentors proposals are to be evaluated. So, only the two subtasks listed here

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!

Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

Thanks for the update!

@Ederporto I've submitted the two tasks about writing a JS and Python script. Waiting for the next tasks for contribution.

Have some additional questions regarding the proposal I submitted, if you allow shall I go ahead with it?

Your feedback is very appreciated. TIA!

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!

Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

Noted. Thank you

Hello, everyone!
Sorry for the huge delay!

At the Tasks section of this proposal, you are able to find the two subtasks you need to follow in order to be evaluated.
Please, do not share your tasks answers with other participants, but you are encouraged to help each other if you want!

Pinging: @Nishachandila, @Umekibe, @Jacob-Ojumu, @Nayohmeee, @Preciousdesk10, @Ezinneanne, @Lebogang, @Snowy04, @Carita_Ndibe, @Addobentil, @GloryEdem and @Gutopro911

So I've finished working on the two tasks and I've submitted them, I'm currently awaiting feedback. But in the meantime, if anyone has any issues with understanding the task, I'd be willing to help

Hallo @Ederporto!

I'm Bola, am new here.
I just completed T389647: Addressing the new Lusophone technological wishlist proposals - Task 1 and already sent it to your mail but just discovered you've pinged some persons to the task. Want to know if i should move on to task 2.

Hello @Arcstur
Would you mind sharing your email or any preferred contact method so you can review our tasks too and discuss any necessary corrections.

Hello @Arcstur
Would you mind sharing your email or any preferred contact method so you can review our tasks too and discuss any necessary corrections.

I believe you can see our emails through the Outreachy website. Check there.

Hi @Arcstur ,

I can't see your details on the outreachy website. I see @Ederporto 's email and details but not yours.

Do you mind checking the project description on the website to be sure your details are there?

I also submitted my project on saturday to @Ederporto 's email. I am awaiting his feedback before recording my contribution on the outreachy website.

Can you provide your email so I can send to you ? And do I have to wait for feedback to begin recording my contribution ?

@Arcstur Can I work on another issue after I have completed those two subtasks?

Hallo @Ederporto!

I'm Bola, am new here.
I just completed T389647: Addressing the new Lusophone technological wishlist proposals - Task 1 and already sent it to your mail but just discovered you've pinged some persons to the task. Want to know if i should move on to task 2.

Hallo @Ederporto!

I'm Bola, am new here.
I just completed T389647: Addressing the new Lusophone technological wishlist proposals - Task 1 and already sent it to your mail but just discovered you've pinged some persons to the task. Want to know if i should move on to task 2.

Hi Bola, the tasks are supposed to be done by outreachy applicants who intend working on the Lusophone proposals project, whether or not they are tagged. No I am not a mentor, I am a fellow outreachy applicant, but in my opinion, I'd say you do both tasks and submit

hi @Ederporto I will like to be assigned to this task T386128 Outreachy 30: Addressing the new Lusophone technological wishlist proposals

hi @Ederporto I will like to be assigned to this task T386128 Outreachy 30: Addressing the new Lusophone technological wishlist proposals

Hi, I'd suggest you do the tasks and submit as the tasks are not specifically assigned

Hello, the instructions on the Outreachy final application page says "Please work with your mentor to provide a timeline of the work you plan to accomplish on the project and what tasks you will finish at each step". Is there a specific work outline the Wikipedia organization would like us interns to work with and edit into the timeline we are to submit? Or are we expected to be creative and write up our own estimated timeline according to our understanding of the project?
I am asking so I'd know how best to proceed and also so I don't waste valuable time working on the wrong thing.
i'd appreciate some clarity on this please

Hi mentors @Ederporto @Arcstur , hope you are well ?

I wanted to know if there are any additional questions , whether community related or project related you'd like me to answer when submitting my final application ?

Looking forward to your responses .

Thank youuu!

@Nayohmeee We have to come up with a plan to execute during the internship period. Depending on our project pick one or more technical wishes from the Lusophone Wishlist proposal and break it down to microtasks or explain how you go about completing those tasks for the duration of internship.
Since there are many contributors so often times its not possible for mentors to give individual feedback therefore we are advised to make a plan and go ahead with its submission.

If you have more questions feel free to ask. I will try my best to help.

Hello everyone, we gave feedback for all that sent their task through email up to March 31st. We're not giving a second feedback. Now, for the real application, remember to submit yours in the Outreachy website, because that's how we grade and select the final intern. Best regards!

Hi @Arcstur, I just wanted to confirm, I haven’t received any feedback yet for my submission. I made my submission for the two tasks on March 23 and the development plan on April 5.

@Arcstur May I confirm which platform you prefer for discussing the project timeline?

Phabricator

Zulip

Email

Please let me know your preferred communication method. Thank you!

Hello @Snowy04, you should construct the timeline independently, we want to know how you work and how do you organize your available time.

Thank you for the clarification, @Arcstur! I understand that you’d like me to independently plan the timeline based on my availability and approach to organizing the work. I’ll proceed accordingly and make sure to align the timeline with the project goals and deliverables. Please let me know if there’s anything specific you'd like me to keep in mind while preparing it.

Hello @Snowy04, you should construct the timeline independently, we want to know how you work and how do you organize your available time.

Thank you very much, @Arcstur

This comment was removed by Annosha.
Gopavasanth subscribed.

Congratulations @Nayohmeee on being selected for Outreachy! 🎉
Wishing you a great journey ahead—happy coding and best of luck with the program!

As you move through the community bonding period, feel free to refine your project timeline and finalize the steps leading up to the coding phase. If you have any questions, don’t hesitate to reach out—whether on Zulip, via email, or directly on this ticket.

Congratulations @Nayohmeee on being selected for Outreachy! 🎉
Wishing you a great journey ahead—happy coding and best of luck with the program!

As you move through the community bonding period, feel free to refine your project timeline and finalize the steps leading up to the coding phase. If you have any questions, don’t hesitate to reach out—whether on Zulip, via email, or directly on this ticket.

Thanks you so much! I'm really glad to be here and have an opportunity to contribute. I'll revisit the project timeline and ask for clarification as the need arises😊

Congratulations @Nayohmeee on being selected for Outreachy! 🎉
Wishing you a great journey ahead—happy coding and best of luck with the program!

As you move through the community bonding period, feel free to refine your project timeline and finalize the steps leading up to the coding phase. If you have any questions, don’t hesitate to reach out—whether on Zulip, via email, or directly on this ticket.

Thanks you so much! I'm really glad to be here and have an opportunity to contribute. I'll revisit the project timeline and ask for clarification as the need arises😊

Congratulations @Nayohmeee on your selection! It was a pleasure contributing alongside you. All the best as you begin this exciting journey 🌟

Congratulations @Nayohmeee on being selected for Outreachy! 🎉
Wishing you a great journey ahead—happy coding and best of luck with the program!

As you move through the community bonding period, feel free to refine your project timeline and finalize the steps leading up to the coding phase. If you have any questions, don’t hesitate to reach out—whether on Zulip, via email, or directly on this ticket.

Thanks you so much! I'm really glad to be here and have an opportunity to contribute. I'll revisit the project timeline and ask for clarification as the need arises😊

Congratulations @Nayohmeee on your selection! It was a pleasure contributing alongside you. All the best as you begin this exciting journey 🌟

Thank you so much 😊

Congratulations @Nayohmeee on being selected for Outreachy! 🎉
Wishing you a great journey ahead—happy coding and best of luck with the program!

As you move through the community bonding period, feel free to refine your project timeline and finalize the steps leading up to the coding phase. If you have any questions, don’t hesitate to reach out—whether on Zulip, via email, or directly on this ticket.

Thanks you so much! I'm really glad to be here and have an opportunity to contribute. I'll revisit the project timeline and ask for clarification as the need arises😊

Congratulations @Nayohmeee well deserved. All the best in your outreachy journey

Congratulations @Nayohmeee on being selected for Outreachy! 🎉
Wishing you a great journey ahead—happy coding and best of luck with the program!

As you move through the community bonding period, feel free to refine your project timeline and finalize the steps leading up to the coding phase. If you have any questions, don’t hesitate to reach out—whether on Zulip, via email, or directly on this ticket.

Thanks you so much! I'm really glad to be here and have an opportunity to contribute. I'll revisit the project timeline and ask for clarification as the need arises😊

Congratulations @Nayohmeee well deserved. All the best in your outreachy journey

Thank you

Weekly Report

Week 1 (June 2 - 6)

  • Created my blog site and wrote my first blog for week 1
  • Had my first virtual meeting with my mentors on Monday June 2nd
  • Got assigned my first task which was to breakdown all the Lusophone wishlist proposals and state how they could be tackled
  • Finished the task and submitted before my second virtual meting on Thursday June 5th
  • Got assigned two tasks on Thursday to set up my Gerrit account, Developer account and IRC chat. And then to start working on Task 6 of the Lusophone wishlist proposals

Challenges

  • Had issues finding out how to download the codebase from Gerrit to my local machine

What I Learned

  • I learned how to set up my IRC chat, Gerrit and how to set my SSH identity.
  • From completing my first task on the breakdown of the Lusophone proposals, I also got an idea of the full scope of the work needed to be done by the Lusophone community

Weekly Report

Week 2 (June 9 - 13)

  • I wrote a paragraph to be submitted to the Portuguese Wikimedia team, explaining the impossibility of tackling Task 6 of the Lusophone Proposals, as we do not have access to its codebase.
  • Attended two meetings with my mentors and at the first meeting I was assigned to do more research on Task 2 of the Lusophone Proposals and present the results of my research at the next meeting as that is what I would be working on now. And at the second meeting we discussed how best to tackle Task 2 of the Lusophone Proposals.
  • Researched, drafted and submitted a workplan on how to solve Task 2 of the Proposals. Later edited the workplan to harmonize with the Proposal's goals.
  • Created my Toolforge account and linked it to all my existing Wiki accounts .
  • Accepted invitation to join the GitHub repository created for Task 2 as a contributor.
  • Cloned the repository to my local machine and I've started working on it locally.

Challenges

  • I had to do research in order to understand what exactly I would need to get my assigned task solved. It involves creating a bot with very specific functions and capability, and it is my first time creating a bot from scratch.

What I Learned

  • I found out some useful tools needed to create the bot like the Pywikibot and Wayback Machine API
  • I learned that the existing InternetArchiveBot which is available on English Wikimedia is not enabled on Ptwiki due to issues with reconciling citation templates in both English and Portuguese.

Weekly Report

Week 3 (June 16 - 20)

  • Pushed my first code batch to our GitHub repository . This included HTML files for the projects static page, CSS, some models and views.py file
  • Had the first meeting of the week on monday and showed my mentors my progress so far. Did a demo of what my code could currently do
  • Did research on how best to create and connect the core logic of our project.

Challenges

  • I had to figure out what APIs would work best for our project specifications and this was quite tough
  • For some reason which I am still trying to figure out, my code is running and even creating correct output logs but when I check it on localhost, it only renders the HTML component of my page and the very information I need to show, does not show up. It is quite stressful as I am not even getting any errors to help me figure out the exact issue, and when I write mini test scripts to verify that the code runs as expected, they actually pass. But I know I will figure it out eventually.

What I Learned

  • I found an external python library that met our exact project requirements and I was able to add it to my codebase
  • I found a Wikimedia API that we could use to connect to ptwiki in order to get articles and links to enable us work on our project
  • And I learned that even though two Wikimedia APIs may have the same function/output on the surface, digging a bit deeper will show how dissimilar they really are

Weekly Report

Week 4 (June 23 - 27)

  • Had a meeting on Monday with my mentors where I showed them my progress so far. I was able to add stats to the stats page by getting the recent API changes from the backend
  • I was able to get the URLs checked and URLs were archived too
  • The archived URLs were accessible and still pointed to the correct original URLs when retrieved from the Wayback Machine's archive

Challenges

  • My code kept breaking at various points . At one point after I tweaked the API, the statistics page no longer returned values from the backend, another time, the I was connecting wrongly to the Wayback Machine server and the generated archived URLs were not working correctly.

What I Learned

  • I learned to use Beautiful Soup to connect with the Wikimedia Action API in order to get the contents of edits and their URLs
  • I also learned the importance of reading my code thoroughly as some of the issues that totally stressed me out were really minor fixes I could have solved if I'd read my code more carefully in the beginning

Weekly Report

Week 5 (June 30 - July 4)

  • Our archive bot is now able to get recent changes with diffs, check for citar web urls, archive or get archived versions of URLs and save all these to the database
  • We can now access both the original URL and the archived URL from the admin panel
  • Though the webpage's display theme (light or dark) is set to use system preferences by default, the page that lists our bot's statistics now has a slider for toggling between light and dark modes on the web page

Challenges

  • I had a hard time getting the generator part of the MediaWiki API to work so I could collate both recent edits and new articles in one go.

What I Learned

  • I learned how to properly use the generator part of the MediaWiki API in my code and now it works well

Weekly Report

Week 6 (July 7 - July 11)

  • This week I refactored the code so that the bot access all templates with the citar tag (e.g Citar livro, Citar periódico, Citar tese, Citar jornal etc) and not only Citar web templates
  • Made the code use a media wiki parser
  • I ensured that web.archive.org and doi.org URLs are not being archived because they’re permalinks
  • I started working on the test file for Arquibot.

Challenges

  • I initially found it hard to use the Media Wiki parser in place of regex, but eventually I got the hang of it

What I Learned

  • I learned how to work with the Media Wiki parser

Weekly Report

Week 7 (July 14 - July 18)

  • This week I continued writing tests for our bot
  • And I did research on how best to integrate "Coverage", a python library for ensuring that all areas of my code are tested
  • I also successfully added "Coverage" to our bot

Challenges

  • Currently not all my tests are giving the required output, I still have 3 which are failing, so I am still working on them
  • After running "Coverage" on my files, I found out that I was actually testing only 68% of my entire codebase and only 54% of my utils file(which holds the core logic of our code) is being tested. So I am still trying to figure out a way to push the figure up to at least 90%(if not 100%) of both the util file and the entire codebase

What I Learned

  • I learned how to integrate "Coverage" into python code and run my tests with it
  • I am also figuring out how best to write my tests to ensure they meet the project requirements

Weekly Report

Week 8 (July 21 - July 25 )

  • I am still writing tests for our bot to try and ensure 100% coverage on all my code/functions
  • I made my first post on meta-wiki, informing the community of our progress in July here

Challenges

  • My major struggle was how to ensure full tests coverage since I had already written tests that covered my functions(or so I thought), I did not really understand it until my mentor put me through

What I Learned

  • This week my mentor explained to me that to ensure 100% tests coverage, I had to write tests that actually failed. This is in order to account for cases like 'if/else' and 'try/except'. Initially I was only accounting for the 'if' and 'try' parts of the code, and that's why my coverage score was not as high as it should be. I literally never knew that!! So I learned that, moving forward, my tests should cover all aspects of my written code.

Weekly Report

Week 9 (July 28 - August 01)

  • I tested our bot with a test article on test Wikipedia and it works as expected
  • I was able to create an API key to be used in trying to make edits in Wikipedia articles
  • I and my mentors brainstormed on people I could reach out to or informal chats on how best to proceed in my career as well as any open roles that they may know of. Plus, my mentors shared resources on how I can continue contributing in the community even after Outreachy

Challenges

  • Currently, I am still struggling to make edits with the bot, but hopefully I get it sorted out this week

What I Learned

  • As someone who struggles to get informal chats right, I received helpful resources from my mentors on how to get informal chats right. From whom to reach out to and how to introduce myself
  • And I got tips on how to make our bot edit articles and add the necessary information to them

Weekly Report

Week 10 (August 04 - August 08)

  • I reached out and had informal chats with some folks and gained valuable insight
  • Our bot now edits articles on test Wikipedia

Challenges

  • Still struggling to get bot to add our updated templates to articles

What I Learned

  • I learned how to edit articles on test Wikipedia , using only an API key and my bot logic
  • I also had to overcome my discomfort at initiating conversations and asking for an informal chat. And it worked out, cos now I have talked to people and I have gotten really good resources and job hunting tips from them

Weekly Report

Week 11 (August 11 - August 15)

  • I was able to get the recent changes and edit functions to work but they did not work 100% as expected

Challenges

  • For some reason my code did not execute as I thought it would and I kept running into errors

What I Learned

  • I finally learned how to set up my code properly so that recent changes are correctly rendered and I can get the correct revisions for the articles that my bot checks

Weekly Report

Week 12 (August 18 - August 22)

  • The recent changes and edit functions now work 100% as expected. So our bot accesses URLs and then replaces the existing URL template with the updated URL template which has the newly archived URL. We’ve tested it on test Wikipedia articles and there’s logging actions for monitoring how each part of the code runs.
  • I wrote tests to cover all our bots functions
  • Made a management command for the "run_archive_bot()" function. This allows the bot to run only at the specified times.

Challenges

  • For some unknown reason, Coverage still marks my utils.py file as 67% checked and covered, meanwhile there's tests for all functions. So that is still being figured out now.
  • A function 'get_recent_changes_with_diff ' does not return all pages checked, it's limited in its ability. I have to fix it before the internship is over

What I Learned

  • I learned how to make our 'get_recent_changes_with_diff ' more better than what it currently is, and I will be implementing what I learned , so that our bot gives optimal results.
  • I learned how to create a management command with time limit for a bot

Weekly Report

Week 12 (August 25 - August 29)

  • Function 'get_recent_changes_with_diff ' now returns all pages checked
  • Now our bot is complete and has been pushed to Github. It meets all requirements we listed at the beginning of the project

Challenges

  • We still need community approval before its pushed out for use by the public

What I Learned

  • I learned how to work with Wikimedia APi and how to connect it with other APIs
  • I learnt to break tasks down before trying to solve them
  • I also learned not to doubt myself too much when attempting a new project

Hi Nayohmeee thankyou no one responding

@T402998: You are in the wrong place. This task is worked on as part of Outreachy 30 by Nayohmeee.