Skip to content
This repository was archived by the owner on May 30, 2023. It is now read-only.
This repository was archived by the owner on May 30, 2023. It is now read-only.

Communicating maintenance capacity and prioritization #14541

@ariya

Description

@ariya

So far we have not been doing a great job at communicating the current state of maintenance. This is a discussion to find a better way of achieving that.

The team behind PhantomJS (@ariya @vitallium @zackw and other occasional contributors) is committed, yet we remain a small team. None of us is paid to work on PhantomJS, thus we carry out the contribution during our spare time. For the sake of discussion, let's say that our estimated total effort is 4 hours/week.

Meanwhile, the users of PhantomJS continue to grow and the demand keeps increasing. Every user wants the latest updated WebKit, full ES6 support, and zero crash. In theory, to moderately keep up with this demand, it requires at least one full-time sofware engineer, an equivalent of 40 hours/week of work.

The impact of our limited maintenance capacity is that the progress pales in comparison to the skyrocketing user demand.

Issues are piling up in the issue tracker because the triaging rate is much lower than the reporting rate. Triaging is not difficult (see #13861) but it takes a lot of time and yet there is very little external help.

When an issue is not being looked at, users affected by the issue become disappointed (see the most recent example #12750). Given the limited maintenance capacity, prioritization is inevitable. Sadly, that perspective is not taken into account by the users and the message comes across the wrong way.

We are still happily making progress, and we do not plan to stop anytime soon. In some cases, our progress is judged by the commit statistics which (in the case of this project) unfortunately do not correlate with the effort (we often worked on a big 100-hour task that resulted in just one git commit). And when an user is not feeling the progress because our current focus does not overlap with their needs, it triggers a sweeping generalization that there is no progress at all.

What is the best way to ensure that every user is aware of this mismatched capacity vs demand?

Suggestions are welcomed!

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions