Might be late to the party but I (weeblr: sh404SEF and wbAMP) have been hit recently by issues when users posted reviews at the JED. We worked out some on Github but after finally having that review posted successfully, it was flagged as SPAM.
Anibal directed me to this topic which I've been reading entirely and I'd like to suggest the following comments and then a suggestion:
1 - Having reviews is important, both for users and developers, commercial or not
2 - Having spam-free reviews is equally important. If not, probably better drop the reviews entirely
3 - No anti-spam system will work 100%, either because of false negatives or false positives
4 - False negatives (ie uncaught spammy reviews) can already be handled: we can report them to the team to be manually checked. False positives are the problem.
5 - The JED team cannot manually check ALL reviews before they're posted
6 - Checking users postal addresses, etc seems hard: even if a post code or an address exists, it does not mean the reviewer lives there! And checking the IP address against a postal address just does not cut it, there are too many real, valid exceptions.
7 - I don't see how a token would help either, having the proper token would be easily counterfeit. Lowering the spam-detection level because we think a token is preventing some spam would result in more spam, not less, I think.
I think the real problem is not so much that there are false positives. As no system is fool proof, errors are expected.
The real problem for me is that there is no "second chance" and a flagged review is gone for ever, without anybody knowing and having a chance to correct the false positives.
So may be a way to modify the JED workflow could be similar to:
1 - Incoming reviews are passed through the existing anti-spam system, or an improved one if one can be designed
2 - When a review is flagged as SPAM:
- the review is kept in the database and marked as SPAM
- spam reviews are listed on the JED record owner dashboard, on a new tab. Reason for spam flagging is displayed
- an email is fired off to the developer (the JED record owner)
- the JED record owner goes to the JED and can check the review. There are 2 buttons:
- It's SPAM: delete entirely
- It's not SPAM: submit to the JED team for manual check up. A comment field would be nice to have so that the developer can explain why the review is valid, provide reference (ie link to the site, link to support thread showing the user is a real user, ...)
3 - After a given period of time, maybe 2 weeks or a month, if the JED record owner has not checked the SPAM review, that review is deleted entirely.
- we can have a strong anti-spam filter - because false positives have a chance to be manually recovered
- manual SPAM reviews recovery work is spread amongst all JED owners, not just the JED team. Each developer will have a small number of reviews to double-check. The JED team only has to manually check reviews the developer already checked and validated.
- the JED team has the final say about accepting a review - that cannot be done by the JED record owner
I think such a workflow, while it does require some work, could be implemented and has the significant advantage of spreading the workload over developers insted of relying on just the JED team.
What do you think?
See all about sh404sef and wbAMP at https://weeblr.com
I don't reply to PM anymore. Thanks for using sh404SEF and wbAMP