Page MenuHomePhabricator

Update the Zulip page on MediaWiki and add communication guidelines
Closed, ResolvedPublic

Description

Zulip page on MediaWiki: https://www.mediawiki.org/wiki/Outreach_programs/Zulip

Event Timeline

Pavithraes renamed this task from Update https://www.mediawiki.org/wiki/Outreach_programs/Zulip and add communication guidelines for Zulip to Update the Zulip page on MediaWiki and add communication guidelines.Apr 20 2020, 2:48 PM
Pavithraes updated the task description. (Show Details)
  • Add information about IRC integration when that's merged

Anyone having some more context what this means, please? :)

Anyone having some more context what this means, please? :)

@Aklapper The technical-support stream on Zulip is linked to wikimedia-tech IRC channel. Messages posted on one platform are bridged to the other. This is to allow outreach program participants to reach the broader community for technical questions. :)

  • Using phab tasks directly instead of complete url

Eh, sorry, me again, but this one ^ is also unclear to me. :-/

Warning: I might work on this task a bit in the next days. :)

@Aklapper Thank you for working on it!

Using phab tasks directly instead of complete url

On Zulip, we can refer to Phabricator tasks by just specifying the task number TXXXX. It directly links to the corresponding task, for example:

Screenshot 2020-10-08 at 7.54.38 PM.png (270×779 px, 58 KB)

I am drafting this currently, and I am left with one last item: "When to use Zulip vs other platforms".

I guess we need to differentiate three things here? Help / input welcome to get a shared understanding and for phrasing this:

  • Discussing and general questions about the outreach programs themselves (Zulip);
  • discussing a specific piece of work and specific questions about that task specifically (Phabricator task)
  • Discussing and asking for help on general technical questions, e.g. setting up a development environment etc (broader community; e.g. IRC).

This is a little bit covered in https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker#Suggested_reading which mentions:

  • If you have general questions which are not tied to the specific task that you want to work on, use generic channels like IRC chat or mailing lists but not the specific task. Questions how to set up your development environment or how to use Gerrit are out of scope for a task.
  • If you have a specific question about the bug itself, comment in the corresponding bug report (normally a task in Phabricator). "Can you give me more info how to fix this bug?" is not a good question to start with: The more specific your questions are, the more likely somebody can answer them quickly. If you have no idea at all how to fix the bug, maybe that bug is not (yet) for you – please consider finding an easier one first.

I guess we need to differentiate three things here? Help / input welcome to get a shared understanding and for phrasing this:

  • Discussing and general questions about the outreach programs themselves (Zulip);
  • discussing a specific piece of work and specific questions about that task specifically (Phabricator task)
  • Discussing and asking for help on general technical questions, e.g. setting up a development environment etc (broader community; e.g. IRC).

Yes, this looks good to me. Except point two, probably there we need to explicitly say something like "questions about tasks related to projects that are part of an ongoing outreach program round..."

I guess I have some content drafted to post below, but I am unsure what to add where (only two and a half items are Zulip-relevant).

I guess I would like to have a shared section to be shown on https://www.mediawiki.org/wiki/Outreachy/Participants and https://www.mediawiki.org/wiki/Google_Summer_of_Code/Participants and maybe https://www.mediawiki.org/wiki/Season_of_Docs/Participants .
It should probably also include most of the section https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker#Suggested_reading which nobody ever finds or reads, plus the current location of that content on a page named "How to become a MediaWiki hacker" always felt wrong as it is also relevant for new Wikimedia developers who are not going to be MediaWiki hackers.

Also, on the two "Participants" pages, I'd love to remove that "FAQ" link on top and put it somewhere in the text instead (but where?), as I have infobox on top of pages fatigue.


Dumping incomplete draft here:

=== Communication tips and guidelines ===
* You must follow the [[mw:Code of Conduct|code of conduct for Wikimedia technical spaces]]. 
* Ask in public instead of private messages, if your conversation topic is not secret. Private messages do not help others and private messages do not scale.
* Do your research first and please ask ''specific'' questions (not: "Please tell me more!"). Please read and understand both the [[mw:New_Developers#Some basics to know|Basics to know]] and the [[mw:How to become a MediaWiki hacker#Suggested reading|Suggested reading]].
* Be patient with replies, especially during weekends and holidays.
* When you reply in Zulip or in Phabricator tasks, please avoid unneeded quoting of a ''complete'' previous comment, to keep threads readable.
* In Zulip, when you refer to a task in [[mw:Phabricator|Phabricator]], you can simply write its number (<kbd>T123456</kbd> instead of posting a full link)

* When to ask / discuss where:
** in Zulip, discuss general questions about the outreach programs themselves
** in Phabricator tasks, discuss specific questions about that Phabricator task when that Phabricator task is part of a project in an ongoing outreach program round"
** For general technical questions, e.g. setting up a development environment or problems with Gerrit, ask and discuss in the broader Wikimedia community; e.g. [https://wikimedia.zulipchat.com/#narrow/stream/238407-technical-support Zulip's technical-support stream] or on IRC.

* The [https://wikimedia.zulipchat.com/#narrow/stream/238407-technical-support technical-support stream] on Zulip is linked to the [[MediaWiki on IRC##wikimedia-tech|wikimedia-tech IRC channel]]. It is primarily meant for getting technical help on Wikimedia projects. Messages posted on one platform (e.g. Zulip) are bridged to the other platform (e.g. IRC). This allows outreach program participants to reach the broader Wikimedia community for technical questions.

=== See Also ===
* [https://techblog.wikimedia.org/2020/05/04/using-zulip-an-open-source-tool-for-engaging-participants-in-wikimedias-technical-outreach-programs/ A blog post about using Zulip for Wikimedia’s technical outreach programs]

@Aklapper this looks really good! I think it can go on the "Participants" pages for all three programs under a separate section, as you have proposed. Also, this would be suitable for the Outreach programs/Zulip page, maybe after removing 1-2 Phabricator specific points. About the FAQ, it can be moved under the "Application process steps" as a note.

I agree with all of Srishti's points!

I believe that https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker#Suggested_reading should be entirely removed from being on that page and be moved to something like https://www.mediawiki.org/wiki/New_Developers/Communication_basics , which then can be transcluded into that page plus other pages
.
Disadvantage is that I have no idea how to move/keep the relevant translations. Or how to see how much of that is translated anyway. Sigh.

Asked on https://www.mediawiki.org/wiki/Topic:Vwt53jgpss4iujsf about keeping translations while "splitting" a page (hence not moving a complete page).

Thinking of dropping the content below on a new page, either https://www.mediawiki.org/wiki/Communication/New_Developers or https://www.mediawiki.org/wiki/New_Developers/Communication_guidelines , and then transcluding that page on the Outreachy Participant pages, the New Developers page, and that How to become a MediaWiki hacker page.

<section begin="FeedbackQuestionsSupport"/>
{{anchor|support}}
<translate>
=== Feedback, questions and support === <!--T:36-->

<!--T:37-->
* '''Do your research first:''' When you decide to work on a task, you are expected to do some basic research yourself first: Look at the code, try to get some understanding what it is supposed to do, read related documentation, try to find the probable place(s) where you need to make changes in order to fix the bug.</translate> Read and understand [[mw:New_Developers#Some basics to know|Basics to know]].
<translate>
** In a Phabricator task, see the project tags in the side bar to find out which code repository a task is about.
* '''Where to ask and discuss:'''
** in Phabricator tasks, discuss only specific questions about the topic of that Phabricator task.
** For general technical questions (e.g. how to set up a development environment or problems with Gerrit), do not ask in a Phabricator task.
<!--T:38-->
** Ask the broader Wikimedia community and use generic channels like [[<tvar|irc>MediaWiki on IRC</>|IRC chat]] or [[<tvar|ml>Special:MyLanguage/Mailing lists</>|mailing lists]]. If you take part in an [[Outreach programs|outreach program]], then you can also use [https://wikimedia.zulipchat.com/#narrow/stream/238407-technical-support Zulip's technical-support stream].
** If you take part in an [[Outreach programs|outreach program]], then [[Outreach programs/Zulip|Zulip]] is for discussing general questions about the outreach programs themselves.
</translate>
<translate>
<!--T:41-->
* '''Ask specific questions:''' "Can you give me more info how to fix this bug?", "Please guide me", "Please tell me how to start" are not [<tvar|url>https://www.gerv.net/hacking/how-to-ask-good-questions/</> good questions or comments to start with]: The more specific your questions are, the more likely somebody can answer them quickly.</translate> <translate><!--T:42--> If you have no idea at all how to fix the bug, maybe that bug is not (yet) for you – please consider finding an easier one first.</translate>
<translate>
<!--T:43-->
* '''Provide context:'' When asking, explain what you want to achieve, and what you have tried and found out already, so others can help at the right level.</translate> <translate><!--T:44--> Be specific – for example, copy and paste your commands and their output (if not too long) instead of paraphrasing in your own words.</translate> <translate><!--T:45--> This avoids misunderstandings.</translate>
<translate>
<!--T:161-->
* Do not ask if you can work on a task.</translate> <translate><!--T:163--> Do not ask to assign a task to you.</translate>
<translate>
* '''Ask in public:''' Do not send private messages if your conversation topic is not secret. Private messages do not help others and private messages do not scale.
</translate>
<translate>
<!--T:47-->
* '''Be patient''' when seeking input and comments, especially during weekends and holidays.</translate> <translate><!--T:48--> On IRC, [https://dontasktoask.com/ don't ask to ask, just ask]: most questions can be answered by other community members too if you ask on an IRC channel.</translate> <translate><!--T:49--> If nobody answers, please try again at a different time; don't just give up.</translate>
* Do not ask people ''immediately'' for code review in a separate comment or message. People already receive Phabricator notifications. People already receive Gerrit notifications.
* '''Keep things readable:''' When you reply in Zulip or in Phabricator tasks, please avoid unneeded quoting of a ''complete'' previous comment, to keep threads readable.
* Follow the [[mw:Code of Conduct|code of conduct for Wikimedia technical spaces]].

<section end="FeedbackQuestionsSupport"/><section begin="CommunicateAssignment"/>
<translate>
=== Communicate that you work on a task === <!--T:51-->

<!--T:52-->
Do not ask if you can work on a Phabricator task.</translate>
<translate><!--T:165--> You do not need to announce your plans before you start working on a task, but it would be welcome.</translate>
<translate><!--T:164--> Do not ask to assign a Phabricator task to you.</translate><translate><!--T:150--> You are welcome to set yourself as the assignee in a task: Use the dropdown ''Add Action… → Assign/Claim'' in Phabricator.</translate>
<translate><!--T:53--> At the latest when you are close to proposing a patch for the task, it is good to announce in a comment that you are working on it.</translate>
<translate><!--T:54--> Your announcement helps others to not work on the bug at the same time and to not duplicate work.</translate>

<translate><!--T:55--> If a Phabricator task already has a recent link to a patch in Gerrit and has the project "Patch-For-Review" associated in Phabricator, choose a different task to work on instead – avoid duplicating work.</translate>
<translate><!--T:56--> If an existing patch in Gerrit has not been merged and has not seen any changes for a long time, you could also [[<tvar|gerrit>Gerrit/Tutorial#Amending a change (your own or someone else's)</>|pick up that existing patch and improve it]], based on the feedback in Gerrit and in the task.</translate>

<translate><!--T:57--> If you stop working on a task, remove yourself as the assignee of the task, so others know that they can work on the task and don't expect you to still work on it.</translate>

<translate><!--T:58--> By communicating clearly and early you will get more attention, feedback and help from community members.</translate>
<section end="CommunicateAssignment"/>

On Zulip, we can refer to Phabricator tasks by just specifying the task number TXXXX. It directly links to the corresponding task

Added in https://www.mediawiki.org/w/index.php?title=Outreach_programs/Zulip&type=revision&diff=4246768&oldid=4208978

Aklapper triaged this task as Medium priority.

I think we're done here. (But anyone is free to make further corrections of course!) Thanks everyone!