Page MenuHomePhabricator

Small Wiki Toolkits: How-to guidelines and/or potential recommendations for Gadgets
Closed, ResolvedPublic

Description

More details TBA

  • Short list of potentially useful and popular gadgets?
    • Research: Which gadgets are useful? (Community input?)
    • Statistics: Which gadget are popular across many wikis? (and maybe explain why?)
    • Which gadget categories?
  • Documentation and guidelines (see subtask here)
  • ...

See also

Related Objects

Event Timeline

TODO item from T245491#5962130 by @srishakatux:

About adding the high-level examples as in the workshop slides, I don't have strong opinions. Maybe when we have the recommendation list ready for Gadgets, we can simply point to that?

Two possible approaches to share far developing a list of recommended gadgets to be included in the "Gadgets" section of the Starter Kit:

The ones that are not in the top 20 can be added to a subpage of the Starter Kit and worked on in a second phase of the project. The advantage of the second approach is that it covers all language and Wikimedia projects, but the disadvantage is that it would be time-consuming, we might have to write scripts, etc.

This list I imagine will have the following columns:

NameDescriptionNo of active users on English Wikipedia or across wikisPopular on wikisLast updated column

Also, some existing guides/gadget tutorials can be pointed to in a "See also" section. Once we have an initial list of recommended gadgets, we reach out to communities for feedback.

Thoughts?

Recommend the top 20 most used gadgets

@srishakatux: For clarification: Is your previous comment about our potential approach how to identify recommendations? I'm confused by the word "recommend", as I don't [yet] think a problem is solved by throwing an unmoderated popularity list at people, but such a list might indeed help our working group as a starting point.

@Aklapper Yes, it is about the potential approach to identify recommendations so that we can start somewhere ;-) The idea is that once we agree on a plan, we use that to build a list and then later gather feedback from interested folks to modify/expand it. From what I understand, with these recommendations we are targeting small wikis that don't use gadgets or templates at all or use them way too less. Does that make sense?

@srishakatux: Ah, so you do not plan to "recommend the top 20 most used gadgets" to small wikis, good, thanks. :)

https://meta.wikimedia.org/wiki/Gadgets lists the most popular gadgets per site family, across all languages.

The ones that are not in the top 20 can be added to a subpage of the Starter Kit and worked on in a second phase of the project.

Could you explain which problem this would solve (both looking at non-top 20, and having that on some separate subpage)?

(Probably need to also explicitly mention how to load existing gadgets via https://www.mediawiki.org/wiki/Gadget_kitchen#Load_an_existing_user_script so people don't copy and paste code to their wiki which then gets outdated and breaks at some point.)

We need to make sure gadgets are easy to setup for small wikis. Some gadgets like Twinkle are popular and useful but a pain to install.

@srishakatux: Ah, so you do not plan to "recommend the top 20 most used gadgets" to small wikis, good, thanks. :)

I do, but only after we have decided on an approach to select recommendations :) Do you see any concerns in doing so?

Could you explain which problem this would solve (both looking at non-top 20, and having that on some separate subpage)?

I can imagine that for small wikis that are just getting started with no or fewer interface administrators, it is likely that not all gadgets are paid attention or can be installed. That is why I thought that there could be a separate page with a complete list and also because we are going to cover a lot of technical topics in different sections on the "Starter Kit" page.

(Probably need to also explicitly mention how to load existing gadgets via https://www.mediawiki.org/wiki/Gadget_kitchen#Load_an_existing_user_script so people don't copy and paste code to their wiki which then gets outdated and breaks at some point.)

Yes, this is a good one!

That's a really great point that you have shared @RhinosF1 and thanks @He7d3r for linking that page; I had not seen that before :)

That's a really great point that you have shared @RhinosF1 and thanks @He7d3r for linking that page; I had not seen that before :)

It’s something that stood out to me when looking at this. Working with a wiki farm that’s tried installing Twinkle on some wikis made me think of it. If you want to have a discussion about anything regarding other thoughts, do let me know.

Update: Gadgets page on meta-wiki received some updates. It now has a section that lists gadgets that are most-used/popular on Wikimedia wikis. And, the Starter kit item on Gadgets has a link now to the statistics page and gadget writing tutorial on mediawiki.org: https://meta.wikimedia.org/wiki/Small_wiki_toolkits/Starter_kit#Gadgets.

Question: items that are currently in the Starter kit are they sufficient? What more should go in the gadgets section of the Starter kit?

Also, in this process, I've identified broken links on the statistics page and incomplete documentation for most-used gadgets on meta-wiki that may need to be addressed at some point as well: T251362 (might not be in the starter kit project's scope probably).

Similarly, for most-used gadgets such as Twinkle, as mentioned earlier in the discussion, it might be that its documentation has a FAQ section with a list of commonly asked technical questions like some of the other Gadget pages have. Maybe that helps solve some problem that is there in installing Twinkle? @RhinosF1 what are your thoughts? How can this be addressed? :)

@srishakatux: Thanks for working on this! :)

https://meta.wikimedia.org/wiki/Small_wiki_toolkits/Starter_kit#Gadgets states "if the gadget is already available" which links to https://www.mediawiki.org/wiki/Gadget_kitchen#Deploying_or_enabling_a_gadget but that's a bit misleading, as that is about turning a user script into a gadget on the very same wiki? Did you maybe want to link to https://www.mediawiki.org/wiki/Gadget_kitchen#Load_an_existing_user_script instead?

Looking at https://meta.wikimedia.org/wiki/Gadgets#Gadgets_popular_on_wikis I'm afraid that some folks might think "popular = good". Which does not always apply.
Personally I would either not recommend or at least warn/clarify what people must know and consider before potentially deploying

and clarify the persona a gadget might be useful for (readers? authors? admins?). As a newcomer, I'm a bit overwhelmed by that list without further info on use cases.

Also, some links don't seem to point to actual gadget code, e.g. https://en.wikipedia.org/wiki/MediaWiki:Gadget-contribsrange ?

Also, should really explicitly stress somewhere that loading a gadget from its canonical source is way way better than copying code around? https://en.wikipedia.org/wiki/Help:CharInsert from that list is a good recent example for copying code, not keeping it in sync, and then wondering why it breaks.

https://meta.wikimedia.org/wiki/Small_wiki_toolkits/Starter_kit#Gadgets states "if the gadget is already available" which links to https://www.mediawiki.org/wiki/Gadget_kitchen#Deploying_or_enabling_a_gadget but that's a bit misleading, as that is about turning a user script into a gadget on the very same wiki? Did you maybe want to link to https://www.mediawiki.org/wiki/Gadget_kitchen#Load_an_existing_user_script instead?

I see that you have fixed this already :)

Looking at https://meta.wikimedia.org/wiki/Gadgets#Gadgets_popular_on_wikis I'm afraid that some folks might think "popular = good". Which does not always apply.
Personally I would either not recommend or at least warn/clarify what people must know and consider before potentially deploying

I see your concern here, and I'm wondering that instead of using the word "popular", we use "most-used". Also, the additional points that you are referring to, I think, should go into the specific gadget's documentation. For instance, on the Navigation popups page, it says that it should not be confused with Page Previews, exactly that. What say?

and clarify the persona a gadget might be useful for (readers? authors? admins?). As a newcomer, I'm a bit overwhelmed by that list without further info on use cases.

I have grouped gadgets into categories: editing, appearance, reading, patrolling. It is better maybe now?

Also, some links don't seem to point to actual gadget code, e.g. https://en.wikipedia.org/wiki/MediaWiki:Gadget-contribsrange ?

Right, so I was trying not to link gadgets to the source page as that can be overwhelming for non-developers and instead link to relevant documentation. But, perhaps for gadgets that do not have thorough documentation and until we have T251362 fixed, we can point to source code in those cases.

Also, should really explicitly stress somewhere that loading a gadget from its canonical source is way way better than copying code around? https://en.wikipedia.org/wiki/Help:CharInsert from that list is a good recent example for copying code, not keeping it in sync, and then wondering why it breaks.

Probably, there should be a note about this in the steps for interface administrator here https://www.mediawiki.org/wiki/Gadget_kitchen#Deploying_or_enabling_a_gadget.

https://meta.wikimedia.org/wiki/Small_wiki_toolkits/Starter_kit#Gadgets states "if the gadget is already available" which links to https://www.mediawiki.org/wiki/Gadget_kitchen#Deploying_or_enabling_a_gadget but that's a bit misleading, as that is about turning a user script into a gadget on the very same wiki? Did you maybe want to link to https://www.mediawiki.org/wiki/Gadget_kitchen#Load_an_existing_user_script instead?

I see that you have fixed this already :)

I had not. I now did in https://meta.wikimedia.org/w/index.php?title=Small_wiki_toolkits%2FStarter_kit&type=revision&diff=20027148&oldid=20024784

Looking at https://meta.wikimedia.org/wiki/Gadgets#Gadgets_popular_on_wikis I'm afraid that some folks might think "popular = good". Which does not always apply.
Personally I would either not recommend or at least warn/clarify what people must know and consider before potentially deploying

I see your concern here, and I'm wondering that instead of using the word "popular", we use "most-used". Also, the additional points that you are referring to, I think, should go into the specific gadget's documentation. For instance, on the Navigation popups page, it says that it should not be confused with Page Previews, exactly that. What say?

I'd say that people won't click and then click again to open 20 gadget pages and then carefully read 20 pages and fully understand 20 pages. Overwhelm. :)
That's why I'd prefer to expand the descriptions on https://meta.wikimedia.org/wiki/Gadgets#Gadgets_popular_on_wikis

I think the problem we want to solve is to make it easier for smaller communities to get things done.
We do not want to increase maintenance costs by seeing smaller communities installing gadgets which might be popular but predate different implementations and hence now collide with functionality already offered via other means. Hence my list in T246181#6093900.
Giving smaller communities the feeling "having gadgets = better", without making use cases clear, will be contraproductive and will increase the bitrot problems that we already face. So IMO we should be very explicit about that.

and clarify the persona a gadget might be useful for (readers? authors? admins?). As a newcomer, I'm a bit overwhelmed by that list without further info on use cases.

I have grouped gadgets into categories: editing, appearance, reading, patrolling. It is better maybe now?

Yes! Thanks! I'd still add more to the descriptions on https://meta.wikimedia.org/wiki/Gadgets#Gadgets_popular_on_wikis explicitly explaining why installing the gadgets which I listed in T246181#6093900 might not be a good solution for a problem at all.

Also, some links don't seem to point to actual gadget code, e.g. https://en.wikipedia.org/wiki/MediaWiki:Gadget-contribsrange ?

Right, so I was trying not to link gadgets to the source page as that can be overwhelming for non-developers and instead link to relevant documentation. But, perhaps for gadgets that do not have thorough documentation and until we have T251362 fixed, we can point to source code in those cases.

Also, should really explicitly stress somewhere that loading a gadget from its canonical source is way way better than copying code around? https://en.wikipedia.org/wiki/Help:CharInsert from that list is a good recent example for copying code, not keeping it in sync, and then wondering why it breaks.

Probably, there should be a note about this in the steps for interface administrator here https://www.mediawiki.org/wiki/Gadget_kitchen#Deploying_or_enabling_a_gadget.

I'd say that is already https://www.mediawiki.org/wiki/Gadget_kitchen#Use_a_script_on_another_Wikimedia_wiki . Different use case on Gadget_kitchen, hence IMO this should be part of the SWT docs themselves to always load an existing gadget and not copy code of gadget which will bitrot and might break at some point.

@Aklapper Made a few minor changes here and split the point about enabling a gadget here. If you can take another look, then I can post on the SWT talk page for more feedback on Monday :)

@srishakatux: Thanks. I think in some cases the wording is/was not clear enough. "It should not be confused" is misleading when in reality it means "It collides".
I do not want wikis to install random "oh, sounds like nice to have!" gadgets without having an actual problem to solve, and then have them run into random problems and frustration if things don't work properly. The idea is to make life of small communities easier, not more complicated.

Hence I've made more edits on https://meta.wikimedia.org/w/index.php?title=Gadgets&action=history (Reference tooltips gadget is unneeded when Reference Previews extension is installed; Navigation Popups gadget is unneeded when Page Previews extension is installed; ProveIt is not needed when using VisualEditor; wikEd collides with VisualEditor; purgetab does not purge the page's cache. It only offers a link in a tab to do so.)

I think https://meta.wikimedia.org/wiki/Small_wiki_toolkits/Starter_kit#Gadgets needs to be much clearer and explicit not to encourage copy and paste of code just because "oh, maybe nice to have!". (And not to copy and paste code if you can load it instead!) It can break existing functionality, or can become unmaintained, can bitrot, and then can break at some point, and then people complain and then there is sometimes nobody around to fix. That is an existing problem which we already have. I don't want to increase that problem.

What we have here https://meta.wikimedia.org/wiki/Gadgets looks good to me, so I am considering this task as done. Thanks folks for your input!

@srishakatux: Thanks! Two comments:

  • https://meta.wikimedia.org/wiki/Gadgets states "Explore the gadgets available in other projects, and if you find a useful gadget ask an admin in your home wiki to import it." - How to "find an admin"? Why "import" (copy and paste code and then let it rot) if you could load it instead from another wiki?
  • Page talks about exporting and importing gadgets as a separate bullet point. How is that related to the bullet points under "If you want to enable a gadget on your wiki and this gadget already exists on another wiki"?

@Aklapper Good points! I have made some changes to address them. If I understand it correctly, the import and export process is the same as manually copying and pasting gadget code from one wiki to another; it is just that the former is a bit more automated. So, both should not be recommended unless there are code changes needed in the Gadget's code. I have re-organized the points accordingly. Might benefit from another look.

@srishakatux: Thanks! I don't understand "It is recommended not to follow the procedure listed in the steps above unless code changes are needed. They are likely to leave a different copy of a gadget on the destination wiki, leaving it in an unmaintained state and out of sync with the code changes at the source wiki." But which "steps above"?
(Also, the section name "Using gadget statistics" feels unhelpful. I'm not interested in using gadget statistics but want to solve a problem on my wiki?)

Good! :) Thanks, I only made a smaller edit to simplify some wording.