Stas made a point that I was considering too, although from a different
perspective.
One of the issues may be a difference between end user expectations and
what the resources are available to fulfill those expectations.
Communications requires time and mental bandwidth, both of which are
limited resources for everyone, including WMF staff and end users. Also,
there are financial considerations regarding how people use their time.
From the end user perspective, reporting a bug and then
having nothing
happen, or getting an initial reply but later seeing that a bug
appears to
stall for months or years, may be frustrating depending on the nature of
the bug and the patience of the user. I think that communicating with users
regarding when bugs will likely be fixed would be helpful. I think that
some of that happens already, but there's more that can be done. There are
probably ways to automate some of these communications to a degree.
On the larger scale, I don't know whether it's possible to get a good large
scale understanding of all of the open tasks in Phabricator. I speculate
that teams might be able to create semi-automated reports regarding their
own teams' tasks. To get a larger view of the situation in Phabricator
might require combining the unique outputs of the reports from individual
teams. By having a big picture view of the situation I hope that we could
improve our collective situational awareness regarding tasks, including
open feature requests and technical debt. Also, by creating snapshots of
the results of the same type of combined report over a period of months or
years, maybe we could get a sense of how technical debt is changing over
time.
To summarize: I am thinking that a two pronged approach would be good, one
regarding communications regarding the status of individual bugs, and one
regarding a big picture analysis of technical debt.
I realize that there would be costs of time and money for both of those
approaches. Automation can help with both.
My guess is that managing thousands of bugs in an continuous development
environment is challenging in the best of circumstances. I am somewhat
familiar with the end user experience and financial considerations (both of
which motivated me to participate in this thread), but I'm not an expert in
software engineering for a product that is on the scale of a top 10 website.
What do others think regarding these proposals?
Thanks for the good discussion.
Pine
(
https://meta.wikimedia.org/wiki/User:Pine )