Bitcoin Forum

Other => Meta => Topic started by: hatshepsut93 on January 28, 2019, 04:15:45 PM



Title: [Userscript] Bitcointalk Post Filter
Post by: hatshepsut93 on January 28, 2019, 04:15:45 PM
This userscript was inspired by CapnSparrow's userscript (https://bitcointalk.org/index.php?topic=5098306), that was posted here recently. After discussing his script in the comments, I've realized that we have slightly different philosophy regarding the issue of spam and signatures, so I've decided to make my own script, because I don't believe that that everyone who wears a paid signature is automatically a spammer.

In short, my script calculates earned merit (not always correct!), post length, checks if spammy signature is present, then it calculates the score based on simple formula and collapses all posts with low score. For more info, check the README (https://github.com/Tiramisu77/Bitcointalk-Post-Filter/blob/master/README.md).

The source code is here: https://github.com/Tiramisu77/Bitcointalk-Post-Filter/blob/master/Bitcointalk-Post-Filter.user.js

Install by clicking here: https://github.com/Tiramisu77/Bitcointalk-Post-Filter/raw/master/Bitcointalk-Post-Filter.user.js

Feel free to suggest improvements, report bugs, etc. I encourage you to try different coefficients for scoring and tell me what works best for you. I've tuned it to hide only very short posts from low-merited users by default.


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: Pmalek on January 29, 2019, 03:24:16 PM
Spammers usually have bad writing skills and their replies contain grammatical errors and spelling mistakes. Maybe an option to check the posts for such errors could be a good addition.

For example:
8 spelling mistakes in the post = spammer


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: jackg on January 29, 2019, 04:35:58 PM
Maybe you should add the scores instead if someone has a spam y signature but a good post record then they don't need to be hidden.


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: CryptopreneurBrainboss on January 29, 2019, 04:41:58 PM
I've tuned it to hide only very short posts from low-merited users by default.

You mean like one line replies or what. Beside a post can be short and still be meaningful. And if I use your script I'll be preventing myself from seeing those type of post to merit them and increase that user chances of ranking up  & becoming a high merit earner like yourself.


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: TryNinja on January 29, 2019, 04:47:26 PM
Do these all not need quotes around them?

Code:
const startMerits = {
      "Brand new": 0,
      Newbie: 0,
      "Jr Member": 1,
      Member: 10,
      "Full Member": 100,
      "Sr. Member": 250,
      "Hero Member": 500,
      Legendary: 1000
    };
Only if it has spaces between it (i.e Jr Member needs because it has 2 words, while Member doesn’t)


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: hatshepsut93 on January 29, 2019, 04:57:48 PM
Do these all not need quotes around them?

~snip

The ones with the spaces need quotes, and as for those that are without spaces, my linter has automatically removed quotes. Might fix in the future, thanks.


Maybe you should add the scores instead if someone has a spam y signature but a good post record then they don't need to be hidden.

You can always whitelist any user. Going through someone's posthistory every time you load a thread or maintaining databases for that would add too much complexity.

I've tuned it to hide only very short posts from low-merited users by default.

You mean like one line replies or what. Beside a post can be short and still be meaningful. And if I use your script I'll be preventing myself from seeing those type of post to merit them and increase that user chances of ranking up  & becoming a high merit earner like yourself.

But most of the time it's not. This addon is not for everyone, but I saw that people were interested in another addon that indiscriminately hides all posts with sig ads, and it only used default merit for scoring, so I've decided to improve this idea, and have implemented another requested feature from that thread (whitelist).

Spammers usually have bad writing skills and their replies contain grammatical errors and spelling mistakes. Maybe an option to check the posts for such errors could be a good addition.

For example:
8 spelling mistakes in the post = spammer


I think spammers usually have broken broken grammar and not spelling, because they use google translate. But the idea is interesting, I'll try to implement it. Thanks for the suggestion!


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: Jet Cash on January 29, 2019, 05:27:53 PM
Succinct posting is a virtue.


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: vit05 on January 29, 2019, 05:59:42 PM
Interesting, I think your formula is better. Could someone put a print screen using this script? Maybe from an altcoin topic.

I had previously suggested a possibility that would use the "ignore" function of the forum (https://bitcointalk.org/index.php?topic=5081347.msg48504232#msg48504232). Rather than having lists created manually, we would have list sources that would be updated constantly. It would work almost the same way this script, depending on the list you choose, but without having to install or use any kind of script.

But those who commented on the topic did not like it because they thought the ignore function had to be an individual choice... :/


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: hatshepsut93 on January 29, 2019, 06:08:41 PM
Interesting, I think your formula is better. Could someone put a print screen using this script? Maybe from an altcoin topic.

I had previously suggested a possibility that would use the "ignore" function of the forum (https://bitcointalk.org/index.php?topic=5081347.msg48504232#msg48504232). Rather than having lists created manually, we would have list sources that would be updated constantly. It would work almost the same way this script, depending on the list you choose, but without having to install or use any kind of script.

But those who commented on the topic did not like it because they thought the ignore function had to be an individual choice... :/

Yes, it can be pretty easy to implement this blacklist feature that will hide posts of blacklisted users regardless of the score. And then add some easy way to import lists, like for example the SMAS list. And you can automatically download those lists if you want.

Here's a screenshot:

https://i.imgur.com/ZkftjnW.png


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: LoyceV on January 29, 2019, 07:44:33 PM
In short, my script calculates earned merit (not always correct!)
May I help?
See http://loyce.club/Merit/userID_merit.txt, updated weekly (usually on a Friday/Saturday, after processing theymos' weekly Merit data dump).

This list only shows users who had a Merit transaction, if someone with "0 Merit" is on the list, that means he only sent Merit.


Title: Re: [Userscript] Bitcointalk Post Filter
Post by: hatshepsut93 on January 29, 2019, 08:11:56 PM
In short, my script calculates earned merit (not always correct!)
May I help?
See http://loyce.club/Merit/userID_merit.txt, updated weekly (usually on a Friday/Saturday, after processing theymos' weekly Merit data dump).

This list only shows users who had a Merit transaction, if someone with "0 Merit" is on the list, that means he only sent Merit.

Awesome, I actually made a script that parses your site http://loyce.club/Merit/usernames.html for this purpose, but having raw data is always better.