I love that Atmosphere is solving some of the social & organizational issues around community packages. Starring packages is great and I see that comments and a new automated scoring are in the works which should be helpful.
But I think flagging is really unhelpful. It’s too easy to flag something because you didn’t RTFM, and even if there is a bug it doesn’t tell anyone under what circumstances it happens (and it doesn’t even tell the package author that it’s been flagged as far as I can tell).
I don’t think a binary working/broken flag actually makes sense in software.
I think GitHub issues is the right place for this kind of feedback. It helps the package author fix it (and know there’s a problem), and helps other people know how to work around the problem.
I guess the new score will incorporate this, but even so it will be hard to do something right with it algorithmically.
I know it takes more than one person flagging something for it to be marked as flagged. That’s good.
What I mean by binary is that it’s the equivalent of a bug report saying “it doesn’t work”. Your response to that would be “in what way does it not work?”. Stack Overflow is evidence that many things are “not working” for many people that clearly do work for others.
So what I mean is that I’d rather see GitHub issues used for reporting that something doesn’t work, and they could be made visible on Atmosphere somehow. We can’t assume every package is linked with GitHub so the upcoming comments feature on Atmosphere would also do it.
If we have those, I’d say flags don’t add anything.
That’s the main idea, they just serve as a general warning to others that there’s a potential issue with the current version of the package. I do agree with what you’re saying, it’s not immediately clear why, however finding that out may be just a click through to GitHub. And generally, I’d say packages without a link to GitHub probably aren’t up to par regardless of being flagged or not!
I’d still say that having the flag feature is better than nothing. Do you have an example of a flagged package where you consider it to be harmful? From what I’ve seen it’s been working pretty well, (I haven’t seen any packages coming up flagged for no reason!)
Honestly, I find this types of conversations hard to comprehend or reason about in the end, because all the code that powers this portion of our wonderful open source community is behind a gated wall (aka closed source).
I know it has been stated that it is closed sourced because there are profit based plans around atmosphere. Perhaps it makes more sense to get behind fastosphere or some other open sourced site and build tools the community can contribute to?
@pauldowman Flagging is not intended to replace the package’s issue tracker and in practice we don’t see people using it that way. Instead, its supposed to address garbage like this: https://atmospherejs.com/?q=fill%20me%20in that is slowly invading the package repo. Seconding @dburles’s question, is there a package in particular that has raised your concern about this feature being harmful?
@joshowens I’m sorry you find it so frustrating that we haven’t open-sourced atmosphere. As you say, we have commercial reasons for doing so. In our defense, we’ve made every effort possible to aid others (including fastosphere) in making packaging frontends. We encourage and will continue to help the community, including yourself, to develop alternative packaging frontends.
What prompted this was that we created a package that got flagged. It had only two downloads and was version 0.0.1, so I wasn’t surprised that someone would have an issue with it, but I didn’t know that it was flagged because there are no notifications, and have no idea what issue the person had and whether it was actually a bug or not.
I think that type of feedback should be provided via a GitHub issue. I think the problem of abandoned junk on Atmosphere is taken care of by ranking by popularity, honestly I never even see those. It’s easy to flag something and feel like you gave some feedback. Saying something is “not working” always requires some context.
But I get that the problem you’re trying to solve is more about providing a signal to potential users rather than feedback to the author. For that I always look frequency and recency of commits and the state of the issues in GitHub. Maybe there’s a way to display that instead of a flag, e.g. the GitHub statistics and issues APIs. Though it would take some care to boil that down to one number or icon algorithmically.