Hi Ostrzyciel. Replies inline.
On Thu, 27 Jan 2022, at 08:15, Ostrzyciel wrote:
Maybe a dumb question – I get a profound impression
that this email *and* the guidelines are directed at Wikimedia employees, not MediaWiki
extension developers in general.
...why? I thought that most extensions out there are not managed by Wikimedia, right?
These guidelines, and indeed most coding conventions and development guidelines, are
directed at MediaWiki developers in general. They are not merely for WMF-maintained
extensions or WMF staff.
Of the 70+ bullet points in the current draft, there are exactly 2 points specific to WMF,
and these are explicitly called out as such to avoid confusion (those are about sec/perf
review, and stewardship).
The best practices document aims to reflect status quo among MediaWiki developers, which
includes maintainers of the many MediaWiki hosted in Gerrit that aren't WMF-deployed.
It is my understanding that by and large extensions follow the same coding styles,
conventions, and guidelines. I also find in practice that volunteers contribute as much
(if not, more than) staff to the shaping and implementation of these guidelines. Although
these volunteers do tend to contribute more to WMF-deployed extensions, they are not
currently staff.
In the latter case – are Wikimedia employees the right
group to be guiding the discussion around these guidelines?
No. I specifically addressed the email to all/everyone, and all MW developers are welcome
to participate. Extension maintainers often do follow these conventions. But, they are by
no means required to. It's not a requirement for hosting (unlike e.g. licensing and
code of conduct), and there are certainly numerous extensions that follow a different
coding style, or don't follow any (publicly known) guidelines.
There is one line in the TLDR of my email where I called upon tech leads among WMDE/WMF
staff. I recognise this may have set a confusing tone.
-- Timo
On 1/27/22 05:43, Krinkle wrote:
> TLDR: Tech leads please review Best practices for extensions
<https://www.mediawiki.org/wiki/Best_practices_for_extensions> on
mediawiki.org.
>
> Hi all,
>
> You may be familiar with the Best practices for extensions
<https://www.mediawiki.org/wiki/Best_practices_for_extensions> page on
mediawiki.org. It has been marked as a draft since 2017.
>
> I'd like to polish this page and get it to a state where it would be
uncontroversial to label it as "Development guideline
<https://www.mediawiki.org/wiki/Development_guidelines>". This would not make
it a hard policy. Neither does it imply that it covers all practices in all situations.
>
> Rather, it would mean that the items that are there now are indeed a part of our
current best practices. We would keep it alive through bold
<https://en.wikipedia.org/wiki/Wikipedia:Be_bold> edits and talk page conversations,
similar to our Coding conventions
<https://www.mediawiki.org/wiki/Manual:Coding_conventions/PHP> and other such
guidelines that we maintain peer to peer and through consensus.
>
> The reason I've not simply labelled it as such already is because before today I
found the document to be out of sync with our actual practices. I have made a number of
changes with descriptive edit summaries to bring it in sync with what I percieve to be our
best practices; based on how myself and other maintainers perform code review at large,
and how we review new extensions prior to deployment.
>
> All are welcome to fix mistakes, raise questions/concerns on the talk page, on this
thread. You're also welcome to message me directly anytime if you prefer.
>
> If you consider yourself familiar with our practices and/or lead and mentor other
engineers, please take a minute to review the page and consider whether the items reflect
your current understanding and judgement.
>
> --
> Timo Tijhof,
> Principal Engineer,
> Wikimedia Performance Team.