On 18/01/2019 23:12, Pine W wrote:
I'm glad that this problematic change to
communications was reverted.
I would like to suggest that this is the type of change that, when being
planned, should get a design review from a third party before coding
starts, should go through at least one RFC before coding starts, and be
widely communicated before coding starts and again a week or two before
deployment. Involving TechCom might also be appropriate. It appears that
none of those happened here. In terms of process this situation looks to me
like it's inexcusable.
In the English Wikipedia community, doing something like this would have a
reasonable likelihood of costing an administrator their tools, and I hope
that a similar degree of accountability is enforced in the engineering
community. In particular, I expect engineering supervisors to follow
established technical processes for changes that impact others' workflows,
and if they decide to skip those processes without a compelling reason
(such as a site stability problem) then I hope that they will be held
accountable. Again, from my perspective, the failure to follow process here
is inexcusable.
Pine
Hello Pine
We had the Gerrit reviewers-by-blame installed a while ago although it
was not functional. Tyler, Gergo and I have been talking about that idea
for quite a while and felt like it was a good idea to get patches reviewed.
On a quick though, if one authored some code, most probably that person
knows the code and thus would qualify as a reviewers. For the few code I
wrote from scratch, I am certainly interested in being added automatically.
Anyway, we went with upgrading the Gerrit plugin. I even wrote a blog
post to explain a bit of the feature and other ways to find reviewers:
https://phabricator.wikimedia.org/phame/post/view/139/
I don't write blogs that often. If I do it is because I am excited about
some feature which I firmly believe to be a general improvement. I have
been naive? Yes surely. Did we miss evaluating potential side effects?
For sure.
Then one as to take in perspective the cost of trying and reverting
versus spending ages and months on a project only to dish it out because
that is not what the customer wanted. I, and several, choose the first
path: quick cheap experiment with limited casualties. A benefit is that
this thread gave a lot of exposure to the feature and gathered a lot of
constructive feedback. One can then easily conclude that the plugin is
not smart enough and fails to spot the proper reviewers.
The plugin does not add reviewers any more (it defaults to add 0
reviewers), and I guess we will just uninstall it entirely.
As for new features for Gerrit or Phabricator or CI. There is no due
process established. We just f***ing do it, given we promptly rollback
when we screw up which is thankfully rather rare. Else we iterate and
refine the feature until it is deemed stable.
That is how we maintain our infrastructure, not by having four hours
meetings week after weeks with no deployment in between, not by having
cross teams agreement, nor five level of political hierarchy drama. We
certainly had a few outages here and there, but given the very few
people working on those parts and the number of modifications we do on a
weekly basis, I think it is overall rather stable.
I am not willing to start a flame war, but I do not think the English
Wikipedia community is a good example of an healthy one. The huge amount
of process and policies makes it a challenge to have edits retained, it
is partly what made me stop editing entirely.
In short, Pine, please assume good faith 8-]
--
Antoine "hashar" Musso
{^-^}