Page MenuHomePhabricator

Outreachy Round 18: Documentation improvements to the ~20 top 70 most viewed MediaWiki Action API pages on-wiki
Open, Needs TriagePublic

Description

Brief summary

The MediaWiki action API is a web service that allows access to some wiki-features like authentication, page operations, and search. It can provide meta information about the wiki and the logged-in user. Several Wikimedia projects make use of this API.

As of now, there are ~128 pages on the Action API on MediaWiki.org. Developer-Advocacy did a little research on the state of the docs and documented a few problems and recommendations for the next steps. One of the issues we decided to address was inconsistency. For example, some pages had the automated API docs embedded; some didn’t, some pages had code samples, some didn’t, etc. As a first step, we designed a documentation template and used it to re-write top 20 viewed pages of the API. But, we realized we could not improve 128 pages all by ourselves, and opened it to new Wikimedia contributors for help :-) Our Outreachy intern @Martyav put in a lot of good work in this and improved the next ~20 pages and brought this project in good shape!

The goal of this project is to improve documentation of ~20 top 70 most viewed MediaWiki Action API pages on-wiki using the documentation template.

(OPTIONAL) If there is more time, then the next part of the project could be developing one or two demo apps around the use of Action APIs.

Skills required

Wiki editing, Templates, creating and managing translatable pages, Wikimedia Phabricator tool, basic Python programming. Note: some or all of these skills would be nice to have but not required. Come with a desire to learn and that be all!

Code repository

https://github.com/wikimedia/MediaWiki-Action-API-Code-Samples

Microtasks
  1. Two issues on Github around improving existing code samples:
IssueWork in progressDone
Build the UI for account creation form via Authmanagerinfo module. View issue on Github.@shruthishridhar
Add an example to demonstrate the use of API:Links module to identify red links on a page. View issue on Github.@Didicodes, @supriyasupu@jeropbrenda
  1. Pick an API page to work on and add your Phabricator username next to it in the relevant column:
Getting started instructions for third microtask
  • Set up Git on your computer and a Github account if you don’t already have one. Learn how to use both.
  • Set up a MediaWiki account if you don’t already have one.
  • Read the project description thoroughly and the MediaWiki Action API too.
  • Pick an action page from the table above that you would like to review and improve. Add your name next to the project in the “Work in progress” column. You will need to be logged into Phabricator and subscribed to the task and only then you will be able to edit the task description
  • Create a page in your Sandbox (https://www.mediawiki.org/wiki/User:your_username/Sandbox/API:pagename) and do not make edits directly to the API pages.
  • Fill it with the template content which is in here: https://www.mediawiki.org/wiki/API:Documentation_template (copy and paste). We encourage you to stick to the template if for some reason you feel the urge to add or remove any section, discuss with your mentors.
  • For your reference, read a couple recent API pages that we modified using the new template: API:Geosearch, API:Parsing_wikitext
  • Contribute sample code for the API page to this repository: https://github.com/wikimedia/MediaWiki-Action-API-Code-Samples. Please read the contribution guidelines before starting to work on a topic.
  • When you are done, ping @srishakatux on Zulip and get some feedback on your work.
  • Incorporate feedback. Once you get a green signal, coordinate with mentors in getting your changes integrated with the actual page on MediaWiki.org.
  • Finally, add your name next to the project in the “Done” column in the table above.
Mentor(s)

@srishakatux @srodlund

Get in touch with mentors

Ask a question in the topic Phab:T215682 API documentation improvements under https://wikimedia.zulipchat.com/#narrow/stream/180873-gsoc19-outreachy18

Resources

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
This comment was removed by Nikitrain.
This comment was removed by Nikitrain.

No I started with this. I understand you are going to complete. But don't remove my name. I am also going to finish

@Nikitrain I am doing the Python code now. Sure we can divide

srishakatux added a comment.EditedMar 4 2019, 4:00 AM

@Nikitrain Kindly be courteous to other people working on the microtasks. You shouldn't assign or reassign task which are already been worked on currently. This behavior seems unprofessional. In our open source community, we believe in cooperation and not competition. If there is a requirement I would jump in and moderate to assign/ re-assign the tasks. I hope you understand. If there are not many tasks available, please be patient, I will add more soon.

It is always good to talk more about these issues on Zulip, please stay on topic in Phabricator and only add comments here that are actionable.

srishakatux updated the task description. (Show Details)Mar 4 2019, 4:04 AM
Nikitrain added a comment.EditedMar 4 2019, 4:04 AM

@srishakatux i am sorry, I will stop working on the issue :) it was just that i had already worked, so it kinda seems to go waste. Also i thought @shruthishridhar was working on task 1
I am totally for the idea of a community who help one another, i am sorry if it seemed the other way
and i tried finding shruthi on zulip but couldn't

srishakatux added a comment.EditedMar 4 2019, 4:37 AM

I am adding a few more microtasks. But, before you claim any of them please read some housekeeping rules below:

  • Do not claim more than one microtask at a time. Also, do not claim any microtask if you are already working on other ones.
  • If you have finished working on all your tasks and there aren't any un-assigend left, do not worry! There are a lot of other cool things in Wikimedia that you can learn about or contribute to https://www.mediawiki.org/wiki/New_Developers. You can work on good first bugs for other projects: https://www.mediawiki.org/wiki/Good_first_bugs. If your patch for a bug fix ends up getting accepted, then you can record that as contribution for your Outreachy application.
  • There are a lot of tasks around documentation that you can explore too: https://phabricator.wikimedia.org/project/view/987/ @srishakatux won't be able to find time to review the work you do for those tasks or answer any related questions as she is currently very busy reviewing all your pull requests and documentation on MediaWiki.org. The task you pick doesn't necessarily have to be an API related task. Pick something that you will be able to finish without much support from a mentor/ project maintainer. It could be a very small and easy task.
  • I would really appreciate if we all could stay on topic in Phabricator and have any informal conversations on Zulip and that way not clutter this ticket further.
  • At this point, I would also encourage you all to make sure you've checked the eligibility criteria rules https://www.outreachy.org/apply/eligibility/ and verified on the program site if you are eligible.
  • If you've finished working on a microtask, please give me some time to review your work. If you haven't heard from me in 5 days, only then ping me on Zulip.

Thanks for your patience!
For any further questions about any of this, let’s chat here: https://wikimedia.zulipchat.com/#narrow/stream/180873-gsoc19-outreachy18 :)

srishakatux updated the task description. (Show Details)Mar 4 2019, 4:40 AM
Nikitrain updated the task description. (Show Details)Mar 4 2019, 4:42 AM
Eisheeta updated the task description. (Show Details)Mar 4 2019, 4:43 AM
Nikitrain updated the task description. (Show Details)Mar 4 2019, 4:44 AM
Nikitrain updated the task description. (Show Details)Mar 4 2019, 5:03 AM
Didicodes updated the task description. (Show Details)Mar 4 2019, 5:04 AM
supriyasupu updated the task description. (Show Details)Mar 4 2019, 6:29 AM

Hii @srishakatux ,
I have a few questions regarding contribution. Could you please help me with that?

  1. How to subscribe for a task to be able to edit the task description and work on the API?
  2. Am I supposed to change any code or I have to improve documentation of the API similar to the example template given?
Edisonabah updated the task description. (Show Details)Mar 4 2019, 8:27 AM
Hasinifoss updated the task description. (Show Details)Mar 4 2019, 8:28 AM
Edisonabah updated the task description. (Show Details)Mar 4 2019, 8:30 AM
Edisonabah updated the task description. (Show Details)Mar 4 2019, 8:33 AM
Edisonabah updated the task description. (Show Details)Mar 4 2019, 9:35 AM
supriyasupu updated the task description. (Show Details)Mar 4 2019, 9:45 AM
Radhika12 updated the task description. (Show Details)Mar 4 2019, 9:58 AM
jeropbrenda updated the task description. (Show Details)Mar 4 2019, 12:18 PM
jeropbrenda updated the task description. (Show Details)Mar 4 2019, 12:21 PM

@srishakatux API:Siteinfo is listed twice

Hi and welcome @Diksha11b,

  1. How to subscribe for a task to be able to edit the task description and work on the API?

General help on infrastructure tools like Phabricator is off-topic in this task - this task is about documentation improvements and not about using Phabricator. :) Please see the Phabricator Help and/or use Zulip for questions about Phabricator itself. Thanks!

  1. Am I supposed to change any code or I have to improve documentation of the API similar to the example template given?

This task is about documentation, not about changing code in the software. However, good documentation also offers tested code examples. :)

@Aklapper Thanks a lot for help.:)

SilkyPriya updated the task description. (Show Details)Mar 4 2019, 1:05 PM
jeropbrenda updated the task description. (Show Details)Mar 4 2019, 1:19 PM
supriyasupu updated the task description. (Show Details)Mar 4 2019, 7:18 PM
Kjpri added a subscriber: Kjpri.Mar 4 2019, 7:34 PM
Kjpri removed a subscriber: Kjpri.
Kjpri added a subscriber: Kjpri.Mar 4 2019, 7:36 PM
dave_oh added a subscriber: dave_oh.Mar 4 2019, 7:38 PM
dave_oh updated the task description. (Show Details)Mar 4 2019, 7:43 PM
dave_oh updated the task description. (Show Details)
Nimbus20 added a subscriber: Nimbus20.EditedMar 4 2019, 7:51 PM

@SilkyPriya @Didicodes @supriyasupu
I request you to work on the two tasks already assigned to you.
It's explicitly mentioned not to take to take more than two tasks at one time. Please let others work on the issues as well.

Nimbus20 updated the task description. (Show Details)Mar 4 2019, 8:14 PM

@Nimbus20 Sure. I am done with previous assigned task hence I get myself assigned for new one. I know everyone should get fair chance so If anyone is new and wants to work on API:siteinfo, can take task.

supriyasupu updated the task description. (Show Details)Mar 4 2019, 8:35 PM
Oragonics updated the task description. (Show Details)Mar 5 2019, 3:24 AM

@srishakatux please review my changes (currently in my sandbox) for the API siteInfo.

jeropbrenda updated the task description. (Show Details)Mar 5 2019, 3:52 PM
Arrsquare claimed this task.Mar 6 2019, 6:22 AM
Arrsquare updated the task description. (Show Details)
Aklapper removed Arrsquare as the assignee of this task.Mar 6 2019, 9:22 AM
SilkyPriya updated the task description. (Show Details)Mar 7 2019, 5:49 AM
Aashuli removed a subscriber: Aashuli.Mar 7 2019, 5:12 PM
Aashuli added a subscriber: Aashuli.

hi, seems all the tasks are taken, will there be more tasks for those who dont have any?

Oragonics updated the task description. (Show Details)Mar 8 2019, 1:27 AM
SilkyPriya updated the task description. (Show Details)Mar 8 2019, 5:56 AM

I could not assign any task to myself yet , Can I get any task so that I can contribute to the project?

Areefa updated the task description. (Show Details)Mar 8 2019, 5:16 PM

Hey @Didicodes , I request you to work on any two task out of those tasks you have assigned to yourself so that I can start working on one of them as I can not find any task unassigned in the task description.

Hello, @Aashuli I would totally love to remove my name from a task so that you get an opportunity to work on something, but I have already made pull requests for all of them. Sorry!

Didicodes added a comment.EditedMar 8 2019, 7:01 PM

@Aashuli on second thought, I will replace your name on the task for API: Pagepropnames. Enjoy working on it!

Didicodes updated the task description. (Show Details)Mar 8 2019, 7:04 PM
Nikitrain updated the task description. (Show Details)Mar 9 2019, 10:42 AM

Hi @srishakatux I am an Outreachy applicant and I would love to contribute. Could you please assign a task to me to begin with?

@AakankshaShastri_1: Hi and welcome! Please read previous comments (T215682#4987359 and T215682#4996853). Thanks!

Hey, Thank you for the reply @Aklapper. May I know if the micro tasks would be added soon, as I see all of them taken up by other aspirants

Olena23 updated the task description. (Show Details)Mar 10 2019, 9:32 AM
Olena23 updated the task description. (Show Details)
Didicodes updated the task description. (Show Details)Mar 11 2019, 1:00 AM
Restricted Application added a subscriber: Liuxinyu970226. · View Herald TranscriptMar 11 2019, 1:00 AM
Nikitrain updated the task description. (Show Details)Mar 11 2019, 7:01 AM

Hi, I am an Outreachy applicant and will like to contribute to this project. @srishakatux can i be assigned some tasks please.

@Jenniline: Hi and welcome! Please see T215682#4987359 again. Thanks.

Hi, I am Parul. I want to work on the Wikimedia project for the Outreachy program. Can anyone please tell me about the resources and from where to start contributing?

Nufina added a subscriber: Nufina.Mar 12 2019, 6:59 AM

Hi everyone. I am an Outreachy applicant and I would love to contribute to this project. Miss @srishakatux can I be assigned some tasks, please. Or Can I work on microtask directly? Thank You.

@Jenniline @parul-priyedarshani @Nufina Welcome! To quote the project mentor:

 Thanks for your interest! At this point, the project you've mentioned has received a lot of interest and contributions from potential candidates already.

 I will encourage you to take a look at other projects we are promoting in Outreachy Round 18:
 https://www.mediawiki.org/wiki/Outreachy/Round_18

 Also, there is another project that we have not yet published on the Outreachy site but soon going to:
https://phabricator.wikimedia.org/T217699. You could get in touch with project mentors by commenting on the task in Phabricator.

@Nufina: Hi and welcome! See T215682#4987359 and T215682#5012936

@parul-priyedarshani: Hi and welcome! See T215682#4995668.

In general: Repeating the same questions again and again instead of first reading the answers above is not a good use of anybody's time...

Eisheeta updated the task description. (Show Details)Mar 12 2019, 12:14 PM
Didicodes added a subscriber: Nikita0511.EditedMar 12 2019, 3:14 PM

Hello @srishakatux ,
@Abhism9450 mentioned earlier on Github that he was no longer applying for this project. I also noticed that @Nikitrain is already working on API:Allrevisions. Can I start working on API:Compare?

Didicodes updated the task description. (Show Details)Mar 13 2019, 5:18 AM

I would like to remind you all that the deadline for applying is in less than ten days :)

Wohooo! If you are still onboard and applying, I would encourage you to put in your proposal early. If you all could do that by Monday, then I might be able to give you feedback by Thursday (March 21st). I won't be available starting Friday (March 22nd) of next week until Monday (March 25th). I will be available on Tuesday (March 26th) but any last minute feedback will not be helpful for you.

So, if possible if you all could put in your applications by Monday that would be awesome. That way I will be able to do atleast one round of feedback for everybody.

Although this project is not eligible for Google Summer of Code, if you are eligible for the GSoC program, please indicate that in your application.

By now, I've provided feedback to everyone at least once on their pull requests. There are a few still open that needs some more work before I can merge them. Don't worry about that; I will continue to work with you on them until Thursday of next week.

Good luck working on the application process!

Mansi29ag updated the task description. (Show Details)Mar 20 2019, 12:22 PM
Eisheeta updated the task description. (Show Details)Mar 20 2019, 2:32 PM
Arrsquare updated the task description. (Show Details)Mar 20 2019, 6:45 PM
Aashuli updated the task description. (Show Details)Sun, Mar 24, 4:04 PM
Edisonabah updated the task description. (Show Details)Mon, Mar 25, 5:45 AM
Edisonabah updated the task description. (Show Details)Tue, Mar 26, 6:01 PM