Hi Dan,
Thank you so much for sharing this story.
Similarly, I once was colleagues with a group of people working on process
isolation (
https://en.m.wikipedia.org/wiki/Process_isolation) for Firefox. They had
sort of hit a wall where the memory usage was going to be far more that we
thought users could tolerate, and fixing the memory problems would take
quite a few more engineers than anyone thought we could spare. Then,
Spectre/Meltdown (
https://meltdownattack.com/) happened. It so happened that we were together
at an all company meeting, so a group of us got together in a room and
talked about what we needed. The group left the room understanding that
this work was critically important, that we needed a dedicated team, and we
ended up forming a larger team to ship the work with the support (although
not unanimous!) of managers and staff. A lot more to the story before and
after, but that was the beginning of phase where Firefox ended up actually
shipping process isolation.
What I learned is that it’s possible for critically important change to
happen that might be stuck if we all have a very good reason to move it
forward (like a very scary security problem!).
The challenge in prioritization I see for WMF is that we need to find these
good reasons, prioritize and do work in small enough chunks that we are
able to evaluate progress and adjust course where needed. It’s common to
slip into analysis paralysis, or believe that it’s too hard to set short
term milestones that deliver significant value to someone.
Finding ways to move forward together this way is what I see as the path.
It has part of the urgency in your story or mine (Meltdown vulns
fortunately aren’t happening every quarter!), but balanced with some kind
of repeatable process.
-selena
On Mon, Apr 17, 2023 at 3:18 PM Dan Garry (Deskana) <djgwiki(a)gmail.com>
wrote:
Despite agreeing wholeheartedly that technical debt,
product debt,
ownership, and maintenance are persistent problems, here's a story about
when this *didn't* happen, which maybe we can learn from.
Disclaimer: this is from my memory of 2014! Warning, potential inaccuracy
and rose-tinted glasses!
We had a global login system (single user login, or SUL) but it was in a
bit of disarray. There were many local accounts disconnected from global
ones because they were made before the global login system, many username
conflicts that went unaddressed. Users were given some tools to resolve
these conflicts, but not enough to actually finalise the whole thing. We
all agreed it needed solving. We all new the end state we wanted. But,
there were multiple technical and product solutions to get there, and no
actual concerted effort to do it. Many of the username conflicts were
between long-time community members, so we were sure to get some dedicated
volutneers angry no matter how we did it. So it sat in limbo, annoying
everyone, and never happening. Sound familiar?
Around then, WMF leadership introduced a new prioritisation framework:
"top 5 priorities". This was a ranked list of projects that were considered
to be more important than others for that quarter. It was intended as a
first attempt to combat the "if everything's important, nothing's
important" syndrome. You can't argue with a ranked list! And, number one on
the list for the first quarter, not something new and shiny, but an old
one: the SUL finalisation
<https://www.mediawiki.org/wiki/SUL_finalisation>! Sort it all out, once
and for all.
Erik Möller (the then VP of Product and Engineering, de facto CPO and CTO
really, reflecting on it) asked me to be the product manager. I was very
inexperienced as a PM but had been an editor for eight years, so I
understood the problem well. Still, I wondered how we were possibly going
to achieve anything, the project had been "in progress" for years with
almost no progress. Erik asked me what I needed to make it happen. I got
some advice, and said I need a systems designer, a systems architect, an
engineer that knows the community well, and a community liaison. Erik went
and had the hard conversations with the people that currently needed said
people ("It's top priority this quarter, the other stuff has to wait.")
and
went and got those people. We figured it all out, and we did it, once and
for all (timeline reduced, it did still take multiple quarters, but we knew
that going in). Everyone now has a fully global account!
Now, times were simpler back then. This exact technique wouldn't work now,
for multiple reasons. But, I wonder what we can learn from this as an
organisation. What would it take to repeat this achievement?
Dan
P.S. Some of that team I worked with are still on this list. Hello! Thank
you for the growth as a PM that I got out of that project, and for beating
my inexperienced head around a bit until it got more experienced.
_______________________________________________
Wikitech-l mailing list -- wikitech-l(a)lists.wikimedia.org
To unsubscribe send an email to wikitech-l-leave(a)lists.wikimedia.org
https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/